Sto convertendo i miei script da vecchi net-tools:
ifconfig eth0 192.168.2.1 netmask 255.255.255.0
a iproute2:
ip link set eth0 up
ip addr add 192.168.2.1/24 dev eth0
e noto che i nuovi comandi non impostano l'indirizzo di trasmissione per impostazione predefinita.
Cosa era:
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
è ora:
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
Posso aggiungere l'indirizzo di trasmissione al ip addr
comando, ma mi chiedo se è necessario? Innanzitutto, come e dove viene utilizzato questo indirizzo di trasmissione? Cosa potrebbe rompersi se non impostato? In secondo luogo, sembra che la tabella di routing abbia ancora le voci corrette per impostazione predefinita:
# 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
Non riesco nemmeno a provarlo perché al giorno d'oggi nessuno risponde ping -b
.
$ ip addr 192.168.0.4/16 broadcast 1.2.3.4 dev <dev>
affatto? L'add broadcast non dovrebbe essere un campo, ma sempre calcolato, giusto?