Chinaunix首页 | 论坛 | 博客
  • 博客访问: 192434
  • 博文数量: 73
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 1160
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-23 15:53
文章分类

全部博文(73)

文章存档

2011年(1)

2009年(72)

我的朋友

分类: LINUX

2009-04-24 13:06:27

命令/sbin/ifconfig的使用

天天使用ifconfig命令查看主机ip,但一直没有仔细了解所得结果各参数的具体含义,由于项目中很多应用都是HA模式,都有Virtual IP挂在同一网卡上,就是一网卡绑定了多个ip,现对该命令详细了解一下。

ifconfig
命令由超级用户使用,用来配置所有的网络接口参数。也可以被用来重新定义一个接口的IP地址或其它的操作参数。

一、检查网络接口

例如:

*
检查所有网络接口的状态:

# ifconfig –a
lo0: flags=849; mtu 8232
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:6f

*
检查一个接口的状态:

# 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:6f

各字段含义:
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:6f

*
开放一个网络接口(Disable)

# ifconfig le0 down
# 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:6f

*
关闭一个网络接口(Close)

# ifconfig le0 unplumb
# ifconfig le0
ifconfig : SIOCGIFFLAGS:le0:no such interface

*
打开一个网络接口(Open):

# ifconfig le0 plumb
# ifconfig le0
le0:flags=842; mtu 1500
inet 0.0.0.0 netmask 0
ether 8:0:20:75:6e:6f

*
设置一个IP地址,允许接口但不允许 trailers

# 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:6f

*
改变掩码值和广播值来正确的反映新的掩码:

# ifconfig le0 netmask 255.255.255.0 broadcast +
# ifconfig le0
le0: flags=843; mtu 1500
inet 128.50.1.2 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:6e:6f

*
在正确的设置子网掩码后改变所有的广播地址:

# ifconfig –a
lo0: flags=849; mtu 8232
inet 127.0.0.1 netmask ff000000
le0: flags=863; mtu 1500
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
le1: flags=842; mtu 1500
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; mtu 8232
inet 127.0.0.1 netmask ff000000
le0: flags=863; mtu 1500
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:8b:59
le1: flags=842; mtu 1500
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.3.255
ether 8:0:20:75:8b:59

--End--

阅读(3158) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~