Muss die Broadcast-Adresse der Schnittstelle manuell eingestellt werden?

9

Ich konvertiere meine Skripte von alten Netzwerkzeugen:

ifconfig eth0 192.168.2.1 netmask 255.255.255.0

zu iproute2:

ip link set eth0 up
ip addr add 192.168.2.1/24 dev eth0

und ich stelle fest, dass die neuen Befehle die Broadcast-Adresse nicht standardmäßig festlegen.

Was war:

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

ist jetzt:

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

Ich kann die Broadcast-Adresse zum ip addrBefehl hinzufügen , frage mich aber, ob sie überhaupt benötigt wird. Wie und wo wird diese Broadcast-Adresse verwendet? Was könnte kaputt gehen, wenn es nicht eingestellt ist? Zweitens sieht es so aus, als ob die Routing-Tabelle standardmäßig immer noch die richtigen Einträge enthält:

# 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 

Ich kann es nicht einmal testen, weil heutzutage niemand mehr antwortet ping -b.

Powerman
quelle

Antworten:

4

Die Broadcast-Adresse muss nicht manuell eingestellt werden. Sie wird automatisch anhand der IP-Netzwerk- und Subnetzmaske ermittelt.

mgorven
quelle
Mir scheint, Sie haben Recht zu sagen, dass die Broadcast-Adresse nicht festgelegt werden muss, da dies immer aus der Netzmaske und der IP-Adresse abgeleitet werden kann. Auf einigen Systemen (ich habe Ubuntu in einem Docker-Container ausprobiert) kann es jedoch vorkommen, dass die Broadcast-Adresse nicht festgelegt ist. Und deshalb frage ich mich, warum ein solches Feld in einer Schnittstellendefinition existiert. Mit anderen Worten, warum kann ich $ ip addr 192.168.0.4/16 broadcast 1.2.3.4 dev <dev>überhaupt? Die Broadcast-Adresse sollte kein Feld sein, sondern immer berechnet werden, oder?
JonasVautherin
Beantwortet die Fragen nicht: Wie und wo wird diese Broadcast-Adresse verwendet? Was könnte kaputt gehen, wenn es nicht eingestellt ist?
Claymation