全部博文(73)
分类: LINUX
2009-04-24 13:06:27
命令/sbin/ifconfig的使用
天天使用ifconfig命令查看主机ip,但一直没有仔细了解所得结果各参数的具体含义,由于项目中很多应用都是HA模式,都有Virtual IP挂在同一网卡上,就是一网卡绑定了多个ip,现对该命令详细了解一下。
ifconfig 命令由超级用户使用,用来配置所有的网络接口参数。也可以被用来重新定义一个接口的IP地址或其它的操作参数。
一、检查网络接口
例如:
*检查所有网络接口的状态:
# ifconfig –a
lo0: flags=849
inet 127.0.0.1 netmask ff000000
le0: flags=863
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:
*
# ifconfig le0
le0: flags=863
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:
lo0,le0——网络接口的设备名
Flags——网络接口状态的数字表示方式,状态变量已经在包中定义,将在后来讨论。
MTU——MTU用来定义包的存储片
Inet——接口的Internet 地址
netmask——掩码应用于网络层包的输入和输出。掩码被用来定义哪些值是用来表示网络地址的位。
Broadcast——广播地址,用来发送信息到所有主机。
Ether——由ARP使用的以太网地址(MAC)
—状态段
UP——这个标志指出这个接口是开放的,可以发送和接收数据。
DOWN——相反的,这个标志指出这个接口是关闭的,也就是说,此时不能为主机发送和转发包。
NOTRAILERS——这个标志指出了一个报文尾不包括以太帧的尾部。报文尾是在Berkerley Unix系统中使用的把信息头加到包尾的一种方式。在Solaris2.x系统中已经不支持。
RUNNING——这个标志指出,该接口已经被系统识别。
MULTICAST——这表示接口支持多路传送地址。
BROADCAST——这表示接口支持广播地址。
二、网络地址配置
——解决网络接口故障
丢失,不完整,或不正确的配置网络接口参数,将会引起连接失败。如:一个主机可能拒绝挂接(mount)远程文件系统,拒绝发送和接收邮件,拒绝执行打印任务,如果一个主机的接口配置错误的话。
为了确保主机接口配置的正确,要检查如下几项:
所有的接口状态是否为UP
IP地址是否正确
子网掩码是否正确
广播地址是否正确
——重新配置网络接口参数
* 允许一个网络接口(Enable):
# ifconfig le0 up
# ifconfig le0
le0: flags=863
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:
*
# ifconfig le0 down
# ifconfig le0
le0: flags=863
inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:
*
# ifconfig le0 unplumb
# ifconfig le0
ifconfig : SIOCGIFFLAGS:le0:no such interface
*打开一个网络接口(Open):
# ifconfig le0 plumb
# ifconfig le0
le0:flags=842
inet
ether 8:0:20:75:6e:
*
# ifconfig le0 inet 128.50.1.2 –trailers up
# ifconfig le0
le0: flags=842
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:
*
# ifconfig le0 netmask 255.255.255.0 broadcast +
# ifconfig le0
le0: flags=843
inet 128.50.1.2 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:6e:
*
# ifconfig –a
lo0: flags=849
inet 127.0.0.1 netmask ff000000
le0: flags=863
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
le1: flags=842
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
# ifconfig –a broadcast +
# ifconfig –a
lo0: flags=849
inet 127.0.0.1 netmask ff000000
le0: flags=863
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:8b:59
le1: flags=842
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.3.255
ether 8:0:20:75:8b:59
--End--