SLAVE 表示这个接口被绑定到其它的网络接口。 *除此之外,还有其它一些标志。这些标志或者已经过时(例如:NOTRAILERS),或者还没有实现(如:DEBUG),或者只是特定于某些设备(例如:MASTER、AUTOMEDIA、PORTSEL)。因此,在此我们不作讨论。
*对于PROMISC和ALLMULTI标志,ifconfig和ip显示的值是不同的。ip link ls命令显示的是设备的真正状态,而ifconfig显示的是自己设置的虚拟设备状态。
显示信息的第二行包含和链路层地址(MAC地址)相关的信息。其中,第一个词(ether、sit)定义接口的硬件类型。而接口的硬件类型又决定MAC地址的格式和语法。默认的格式是硬件的MAC地址和广播地址(如果是点对点连接方式,就是对端的地址),地址是用冒号隔开的16进制数字。不过,默写类型的连接有其特定的地址格式,例如:IP通道的地址格式是用点分开的IP地址。
NBMA(Non-Broadcast Multi-Access)连接没有明确定义的广播地址和对端地址。不过,这个域包含一些有用的信息,例如:倚赖于ARP服务器的广播地址。
使用这个命令不会显示多播地址,需要使用ip maddr ls命令。详情请参考第9节ip maddr ls。 ? 统计信息
使用-statistics选项,ip命令会打印出网络接口的统计信息,例如:
kuznet@alisa:~ $ ip -s link ls eth0 3: eth0: mtu 1500 qdisc cbq qlen 100 link/ether 00:a0:cc:66:18:78 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 2449949362 2786187 0 0 0 0 TX: bytes packets errors dropped carrier collsns 178558497 1783946 332 0 332 35172 kuznet@alisa:~ $ RX:和TX:分别是接收和发送统计信息的开头。得到的统计信息包括:
网络接口发送或者收到的字节数。如果字节数超过数据类型能够表示的最大数值,bytes 就会造成回卷。因此,你如果想连续监视这个指标,需要一个用户空间的监控进程周期性地保存这个数据。 packets errors dropped overrun mcast 网络接口收到或者发送的数据包个数。 发生错误的次数。 由于系统资源限制,而丢弃数据包的数量。 由于发生堵塞,收到的数据包被丢弃的数量。如果接口发生堵塞,就意味着内核或者你的机器太慢,无法处理收到的数据。 收到的多播数据包数量,只有很少的设备支持这个选项。 carrier collsns 连接介质出现故障的次数,例如:网线接触不好。 以太网类型介质发生冲突的事件次数。 compressed 压缩数据包的总数。这个指标只适用于使用VJ头压缩的网络接口。 如果-s选项出现两次或者更多次,ip会输出更为详细的错误信息统计。
kuznet@alisa:~ $ ip -s -s link ls eth0 3: eth0: mtu 1500 qdisc cbq qlen 100 link/ether 00:a0:cc:66:18:78 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 2449949362 2786187 0 0 0 0 RX errors: length crc frame fifo missed 0 0 0 0 0 TX: bytes packets errors dropped carrier collsns 178558497 1783946 332 0 332 35172 TX errors: aborted fifo window heartbeat 0 0 0 332 kuznet@alisa:~ $ 这些错误的名字是纯以太化的,对于其它种类的设备,这些域可能有不同的解释。 5.ip address--协议地址管理
缩写 对象 命令 address、addr、a 这里的地址是绑定到网络设备上的协议(IP或者IPv6)地址。每个网络设备至少应该有一个协议地址。而且,一个网络设备可以绑定多个协议地址。 ip addr命令能够显示网络设备的协议地址及其性质,添加新的地址,删除旧的地址。 add、delete、flush和show(或者list) 5.1.ip address add--添加一个新的协议地址 缩写:add、a 参数
dev NAME local ADDRESS(default) peer ADDRESS 被操作的设备名 接口的地址,地址格式和协议有关。IPv4地址使用.进行分隔,而IPv6地址使用冒号分隔。ADDRESS可以跟着一个斜杠和表示掩码位数的十进制数字。 点对点接口对端的地址。ADDRESS也可以跟着一个斜杠和表示掩码位数的十进制数字。 接口的广播地址。为了方便,可以使用+和-(注1)代替广播地址。例如: broadcast ADDRESS ip addr add local 192.168.1.1/24 brd + dev eth0 ip addr add local 192.168.1.1/28 brd - dev eth0 为每个地址设置一个字符串作为标签。为了和Linux-2.0的网络别名兼label NAME 容,这个字符串必须以设备名开头,接着一个冒号,例如: #ip addr add local 192.168.4.1/28 brd + label eth0:1 dev eth0 设置地址的有效范围,它用于内核为数据包设置源地址。有效的范围在/etc/iproute2/tr_scopes文件列出,系统预先设定了一些范围值: scope SCOPE_VALUE(注2) ? ? ? ? global 这个地址全局有效。 site 这个地址是局部连接,也就是只有目标地址是这个设备地址时,才有效。 site (只适用于IPv6)地址在站点内部有效。 host 地址在主机内部有效。 *注1:使用-,ip addr ls显示的是网络地址;使用+,ip addr ls显示的是广播地址。 *注2:有关scope,在附录A中有更为详细的解释。 ? 示例
? ? 在回环设备上添加一个回环地址: ? #ip addr add 127.0.0.1/8 dev lo brd + scope host 在以太网接口eth0上增加一个地址10.0.0.1,掩码长度为24位(155.155.155.0),标准广播地址,标签为eth0:Alias: ? #ip addr add 10.0.0.1/24 brd + dev eth0 label eth0:Alias 5.2.ip address delete--删除一个协议地址 缩写:delete、del、d 参数
这个命令的参数和ip addr add命令的参数一致。其中,只有设备名是必需的参数,其它都是可选的。如果没有给定除设备名之外的其它参数,ip就会删除这个设备的第一个地址。 ? 示例
? ? 删除回环设备的一个回环地址。不过,最好不要作这种尝试。 ? ? #ip addr del 127.0.0.1/8 dev lo while ip -f inet add del dev eth0;do 以下shell代码可以取消设备上的所有IP地址。 ? ? ? :nothing done 另外,可以使用ip addr flush命令取消IP地址 5.3.ip address show--显示协议地址 缩写:show、list、lst、sh、ls、l 参数
dev NAME(default) 设备的名字 scope SCOPE_VAL to PREFIX 只列出这个范围的地址 只列出和PREFIX匹配的地址,例如: ip addr ls to 192.168.1.1 只列出标签匹配PATTERN的地址,PATTERN是一个shell风格的正则表达式。 和这两个参数只适用于IPv6。使用dynamic,ip就只列出动态地址;使用permanent,ip就只列出固定地址。 这个参数只适用于IPv6,只列出没有通过重复地址检测[参考2]的地址。 这个参数只适用于IPv6,只列出deprecated[参考2]地址。 和只列出主(primary)或从(secondary)地址。 label PATTERN dynamicpermanent tentative deprecated primarysecondary ? 输出格式
duznet@alisa:~ $ ip addr ls eth0 3: eth0: mtu 1500 qdisc cbq qlen 100 link/ether 00:a0:cc:66:18:78 brd ff:ff:ff:ff:ff:ff inet 193.233.7.90/24 brd 193.233.7.255 scope global eth0 inet6 3ffe:2400:0:1:2a0:ccff:fe66:1878/64 scope global dynamic valid_lft forever preferred_lft 604746sec inet6 fe80::2a0:ccff:fe66:1878/10 scope link duznet@alisa:~ $ 输出的头两行和ip link ls的输出是相同的。
接着是IP和IPv6地址、广播地址以及其它的地址属性:范围(scope)、标志(flag)和标签(label)。地址标志由内核设置,系统管理员不能修改。目前,内核定义了以下标志:
secondary 为输出的数据包选择默认源地址时,内核不使用这个地址。如果一个设备已经有了一个地址,又给它设置了同一网段的不同地址,第二个地址就成为从(secondary)地址。例如:eth0已经有一个地址192.168.1.108/24,如果又给它一个地址192.168.1.3/24,192.168.1.3/24的就会被内核标记为从地址。 这个地址是通过无状态的自动配置建立的(stateless autoconfiguration)[参考2]。如dynamic 果地址仍然有效,在输出中,还包括两个时间信息。preferred_lft期满后,地址就会变成deprecated状态;valiid_lft期满后,地址将失效。 deprecated 这个地址是不允许的,也就是说,地址虽然有效,但是不能使用它建立新的连接。 tentative 由于重复地址监测[参考2]还没有完成或者监测失败,这个地址不能使用。
5.4.ip address flush--清除协议地址 缩写:flush、f 简介
这个命令可以清除按照某种条件选择的协议地址。 ? 参数
这个命令的参数和ip address show相同。唯一的区别是,如果不给定参数它什么都不会做。 ? 警告
这个命令(和后面讨论的所有flush命令)非常危险。如果出现错误,将无法恢复,它会清除被操作的地址。
statistics选项
如果在ip addr flush命令中使用了-statistics选项,命令将输出更为详尽的信息。输出的信息包括删除地址的数目和清理地址列表的圈数。如果使用了两次-s选项,ip addr flush会按照上节叙述的格式输出所有被删除的地址。 ? 示例
? 删除属于私网10.0.0.0/8的所有地址: ? ? ? ? ? ? netadm@amber:~ # ip -s -s a f to 10/8 2: dummy inet 10.7.7.7/16 brd 10.7.255.255 scope global dummy 3: eth0 inet 10.10.7.7/16 brd 10.10.255.255 scope global eth0 4: eth1 inet 10.8.7.7/16 brd 10.8.255.255 scope global eth1 *** Round 1,deleting 3 addresses ***
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库ip命令手册1(2)在线全文阅读。
相关推荐: