我正在从旧的网络工具转换脚本:
ifconfig eth0 192.168.2.1 netmask 255.255.255.0
到iproute2:
ip link set eth0 up
ip addr add 192.168.2.1/24 dev eth0
并且我注意到新命令默认情况下不设置广播地址。
什么是:
1: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 1c:6f:65:c5:d6:d7 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.1/24 brd 192.168.2.255 scope global eth0
就是现在:
1: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 1c:6f:65:c5:d6:d7 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.1/24 scope global eth0
我可以将广播地址添加到ip addr
命令中,但是我想知道是否需要它?首先,如何以及在哪里使用此广播地址?如果未设置,可能会破坏什么?第二,默认情况下,路由表看起来仍然具有正确的条目:
# ip route show table local dev eth0 scope link
broadcast 192.168.2.0 proto kernel src 192.168.2.1
broadcast 192.168.2.255 proto kernel src 192.168.2.1
我什至无法测试它,因为如今没有人回复ping -b
。
$ ip addr 192.168.0.4/16 broadcast 1.2.3.4 dev <dev>
呢?广播地址不应是字段,而应始终是对的,对吧?