Je convertis mes scripts à partir d'anciens net-tools:
ifconfig eth0 192.168.2.1 netmask 255.255.255.0
vers iproute2:
ip link set eth0 up
ip addr add 192.168.2.1/24 dev eth0
et je remarque que les nouvelles commandes ne définissent pas l'adresse de diffusion par défaut.
Quel était:
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
est maintenant:
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
Je peux ajouter l'adresse de diffusion à ip addr
commander, mais je me demande si elle est nécessaire du tout? Tout d'abord, comment et où cette adresse de diffusion est-elle utilisée? Qu'est-ce qui pourrait se casser s'il n'est pas défini? Deuxièmement, il semble que la table de routage ait toujours les entrées correctes par défaut:
# 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
Je ne peux même pas le tester car de nos jours personne ne répond ping -b
.
$ ip addr 192.168.0.4/16 broadcast 1.2.3.4 dev <dev>
? L'addr de diffusion ne doit pas être un champ, mais toujours calculé, non?Dans mon environnement, si je ne définis pas l'adresse de diffusion, je peux envoyer une requête ping à la nouvelle IP à partir de toutes les ressources du sous-réseau "physique" local, par exemple chaque périphérique directement connecté à mon commutateur. Cependant, je ne peux pas cingler la nouvelle IP à partir d'un appareil connecté à mon routeur sans fil, auquel le commutateur est branché. En ajoutant l'adresse de diffusion, le routeur sans fil détecte la nouvelle adresse IP et tous les appareils se voient indépendamment de la façon dont ils sont connectés. Cela peut dépendre du fabricant de l'équipement que j'utilise / de ma topologie individuelle, mais c'était en effet nécessaire.
la source