红联Linux门户
Linux帮助

七大实用命令行工具 玩转Linux网络配置

发布时间:2011-05-31 21:22:16来源:51CTO作者:阿菜

虽然现在大多数Linux发行版下都有GUI的网络管理配置,不过熟悉命令行工具还是大有助益的。下面我们来看看这些流行Linux发行版下面的常用命令。对了,如果你想要了解该工具和选项的详细情况,可以输入man再输入这个工具的名字访问其man页面。


现在就打开你的terminal尝试一下吧!


用于基本接口与IP配置的ifconfig


ifconfig工具(interface configurator,接口配置器)提供了一些非常基本但是非常重要的功能。它可以打开和关闭网络适配器,分配IP地址与netmask信息。一些常用指令如下:

查看网络接口当前配置与接口命名:

ifconfig

打开(up)或关闭(down)适配器

ifconfig <网络名> <up|down>

为适配器分配IP地址:

ifconfig <网络名> <ip地址>

为适配器分配第二个IP地址:

ifconfig <网络名:实例数> <ip地址>

范例:ifconfig eth0:0 192.168.1.101


用于管理以太网卡的ethtool工具


Ethtool可以查看和修改以太适配器的各种设置(不包括Wi-Fi网卡),包括tx/rx,checksumming和wake-on-LAN设置。下面是一些有用的命令:

显示某个网络适配器的驱动信息,适用于查询软件兼容性的情况:

ethtool -i <接口名>

显示网络数据:

ethtool -S

设置适配器连接速度(Mbps)

ethtool speed <10|100|1000>


iwconfig配置无线网络


iwconfig工具可以算是无线网卡的ifconfig和ethtool。你可以检查基本的Wi-Fi网络设置,如SSID、channel和加密等细节。此外还可以修改一些高级设置,包括接收敏感度,RTS/CTS,碎片,以及重试数。下面介绍几个有用的命令:

显示当前无线设置,包括接口名称:

iwconfig

设置ESSID(扩展服务设置识别器)或网络名:

iwconfig <接口名> essid <网络名>

范例:iwconfig <接口名> "my network"

范例:Example: iwconfig <接口名> any

设置radio的无线channel(1-11):

iwconfig <接口名> <channel>

输入WEP加密密钥(WPA和WPA1尚不支持,需要wpa_supplicant的支持):

iwconfig eth0 key <HEX格式的密钥>

限制适配器仅能在指定MAC地址下连接到AP:

iwconfig <接口名> ap <mac地址>

范例:iwconfig eth0 ap 00:60:1D:01:23:45

设置radio的发射强度,仅在无线网卡支持的情况下有效。默认单位为dBm,可设置为mW:

iwconfig <接口名> txpower <强度>

范例:iwconfig eth0 txpower 15

范例:iwconfig eth0 txpower 30mW


用于嗅探网络包的tcpdump


这不是一个简单的工具。这是一个嗅探器/分析器。它可以捕捉你的接口中和网络上传输的包。这个工具常常通过其他GUI程序进行调用,不过在terminal下也同样有用。可以从以下几个指令开始了解:

-i:设置需要捕捉的接口,如eth0或ath0。

-n:停止用主机名称替换IP地址。

-nn:停止解析主机名或端口名。

-s:每个packet显示的最大byte数。默认值为68,设置为0则显示整个packet。

v,-vv和-vvv:显示随packet输出的详细信息,如IP packet的全长度和选项,完全解码的SMB packet,以及telnet细节。

-x:以HEX格式显示packet内容。

-X:以ASCII格式输出packet内容。


Ping,你的网络声纳


Ping工具与微软在Windows中提供的差不多,不过选项类型和名称不同。另外,Linux中的Ping在默认情况下会无休止的ping,而不是Windows中的四次。

开始ping一个IP地址或主机名/域名:

ping <ip地址>

要停止ping,使用Ctrl+C。

一些有用的选项包括:

-c:为发送的packet计数

-i:packet间等待的时间长度,单位为秒

-s:packet大小,默认为56

-w:执行ping的时间长度,单位为秒


检测网络数据的netstat


netstat工具可以显示网络连接、接口数据、路由表、masquerade连接和multicast成员的详细信息。常用指令如下:

查看打开的socket列表:

netstat

显示所有网络接口:

netstat -i

显示每个协议的概括情况:

netstat -s


用于查看和修改主机名的hostname


所有管理员都知道主机名(hostname)是什么东西。主机名是一个相比IP地址而言更加友好的网络设备显示方式。Linux当中提供了一个hostname工具,可以让你暂时修改你的主机名。

查看当前主机名:

hostname

暂时更改主机名(可以维持到重启之前):

hostname <新的主机名>

若想要永久的更改主机名,则需要编辑/etc/hostname文件或/etc/sysconfig/network文件。


原文:7 Useful Linux Networking Commands 作者:Eric Geier


作者简介

Eric Geier是NoWiresSecurity公司的创始人和CEO,也是很多流行网络和安全技术书籍的作者。