查询与配置网络接口
ifconfig [-a] [interface]
ifconfig interface [aftype] [address] [keys [args]]
ifconfig [--help]
ifconfig命令用于配置驻留在系统内核的网络接口程序,以便在系统引导期间设置网络接口。之后,仅当在系统调试或性能调整时才需要修改网络接口的设置。
第一种语法格式主要用于查询网络接口的当前配置与工作状态。如果未指定任何选项与参数,ifconfig将会显示当前活动网络接口的信息。如果给定了网络接口参数interface,仅显示指定网络接口的当前状态。如果指定了“-a”选项,ifconfig将会显示所有网络接口的状态信息,包括已关闭的网络接口。
第二种语法格式主要用于配置网络接口。其中,interface是网络接口的名字。网络接口名通常是驱动程序的名字,后面跟一个网络接口设备的编号。例如,for example eth0表示第一个以太网接口设备。aftype是地址类型(即网络协议类型),如inet(默认的IPv4)或inet6(IPv6)等。address是分配给网络接口的IP地址。其中,IPv4地址由4组十进制数值组成,中间加句点“.”分隔符。keys是一个或多个关键字,详见“关键字与参数”一节的说明,args是关键字选用的参数。
注意,ifconfig命令将会逐渐隐退,替换的命令是“ip addr”与“ip link”。此外,当需要查询网络统计数据时,可以使用“ip -s link”命令。
-a 显示所有网络接口的配置与工作状态信息,包括已关闭的网络接口。
--help 显示命令的语法格式等帮助信息,然后退出。
add addr/prefixlen 设置网络接口的IPv6地址。
[-]allmulti 启用或禁用全广播模式。如果启用了全广播模式,网络接口能够收到网络中的所有广播分组数据。注意,在关键字之前增加连字符“-”前缀,表示禁用或清除之意,下同。
[-]arp 在当前网络接口上启用或禁用ARP地址解析协议,实现网络地址与物理地址间的映射。如果禁用ARP,ifconfig命令的输出信息中将存在一个NOARP标志。
[-]broadcast [addr] 如果指定了addr参数,可用于设置网络接口的广播地址,同时设置网络接口的BROADCAST标志。否则,设置或清除网络接口的IFF_BROADCAST标志。如果未指定这个关键字,默认的广播地址是网号不变,主机地址部分全为1的IP地址。
del addr/prefixlen 删除网络接口的IPv6地址。
down 关闭网络接口,同时把网络接口的状态设置为DOWN。注意,选用这个关键字时也会自动删除使用这个网络接口的所有路由表项。
dstaddr addr 设置PPP协议远程主机的IP地址。关键字dstaddr即将废弃,可以使用pointopoint取而代之。
hw class addr 如果设备驱动程序支持,可以设置网络接口的硬件地址。其中,class是网络的类型,如ether(以太网)等,addr是用ASCII字符表示的硬件地址,如以太网的MAC地址。
io_addr addr 设置网络接口设备I/O空间的起始地址。
irq addr 设置网络接口使用的中断。注意,并非所有的网络接口设备都能够动态修改其IRQ设置。
media type 设置网络接口设备使用的介质类型。注意,并非所有的网络接口设备都能修改这个设置。典型的介质类型是10baseT(双绞线10Mbps以太网)等,通常可由驱动程序自动检测介质类型,当然也可以使用特殊的介质类型auto,其效果是一样的。
mem_start addr 设置网络接口设备使用的共享内存起始地址。通常,很少网络接口设备需要设置共享内存起始地址。
metric n 设置路由表项的度量值,默认的度量值为0。路由信息协议(RIP)使用此度量值建立路由表。GNU/Linux不支持这个参数。
mtu N 设置网络接口的最大传输单位(Maximum Transmission Unit,MTU),即一次数据传输最多能够处理的字符数量,这个数值也限制了分组数据的最大尺寸。不同类型的网络接口,MTU的上限值也不相同。例如,Ethernet默认的MTU数值为1500,IEEE 802.3接口MTU数值为1492。
multicast 设置网络接口的广播标志。通常,驱动程序自会正确地设置,不需要用户手工设置。
netmask addr 指定网络接口的IP子网掩码。通常,这是一个A类、B类或C类的子网掩码,但可以任意设置。子网掩码是一个32位的二进制数值,其中1表示网络地址部分,0表示主机地址部分。可以采用8个十六进制数值,加上0x或0X前缀;也可以采用4组十进制数值,中间加句点“.”分隔符。注意,addr至少应当包括标准的网络地址部分。
[-]pointopoint [addr] 启用网络接口的点对点连接模式,意味着本地与远程主机网络接口的直接连接。如果指定了地址参数addr,表示设置链路另一端的IP地址。否则,设置或清除网络接口的IFF_POINTOPOINT标志。
[-]promisc 在当前网络接口上启用或禁用混杂工作模式。如果启用了混杂模式,网络接口能够收到网络中的所有分组数据,不管分组数据的最终目的是否是本地主机。基于这一技术,网络管理员能够利用分组数据过滤器或探测仪分析网络数据,从中找出网络问题。tcpdump等工具就是在此基础上实现的。这个关键字也会同时设置网络接口的PROMISC标志。
txqueuelen length 设置网络接口设备传输队列的长度。当网络速度较慢时,可以设置一个较小的值,防止快速的批量传输干扰网络应用(如telnet)的交互会话。
up 启用网络接口,同时把相应的网络接口设置为UP和RUNNING状态。当利用ifconfig命令为网络接口分配IP地址时,也蕴含着启用相应的网络接口。在使用关键字down临时关闭一个网络接口之后,也可以使用关键字up重新启用网络接口。
1. 查询系统当前配置的所有网络接口及其设置。
$ ifconfig -a
2. 设置第二个网络接口的IP地址,子网掩码与广播地址采用默认设置。
# ifconfig eth1 192.168.90.200 #
3. 删除已设置的IPv6地址,从而提高网络接口的性能。
# ifconfig eth0 del fe80::20f:feff:fe22:29d2/64 #
索引:A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z