Ich wurde von bestimmten Netzwerkprofis darüber informiert, dass ARP-Antworten Broadcast-Pakete anstelle von Unicast sein können und manchmal sogar sind. Wenn und wann würden Sie eine Broadcast-ARP-Antwort verwenden?
quelle
Ich wurde von bestimmten Netzwerkprofis darüber informiert, dass ARP-Antworten Broadcast-Pakete anstelle von Unicast sein können und manchmal sogar sind. Wenn und wann würden Sie eine Broadcast-ARP-Antwort verwenden?
Gemäß dem RFC826 (An Ethernet Address Resolution Protocol) muss der Absender:
Geben Sie die lokalen Hardware- und Protokolladressen in die Absenderfelder ein
Aber wie Sie darauf hingewiesen haben, warum ein Host die Broadcast-Adresse in einer ARP-Antwort verwenden würde? Vielleicht, weil dies klug erscheinen könnte: Wenn Sie die L2-Broadcast-Adresse verwenden, wissen alle Hosts im LAN sofort, dass ein neues Paar (IP, MAC) Zeit spart. Tatsächlich wird diese Methode vom RFC nicht gewünscht (selbst wenn sie sich auf periodisches Senden beziehen):
Eine regelmäßige Ausstrahlung ist definitiv nicht erwünscht. Stellen Sie sich 100 Workstations in einem einzelnen Ethernet vor, wobei jede Broadcast-Adressauflösungsinformation einmal pro 10 Minuten (als möglicher Parametersatz) vorliegt. Dies ist ein Paket alle 6 Sekunden. Das ist fast vernünftig, aber was nützt es? Die Workstations sprechen im Allgemeinen nicht miteinander (und haben daher 100 nutzlose Einträge in einer Tabelle).
Es hängt auch vom Betriebssystem des Hosts ab, in die ARP-Tabelle ein Tupel einzufügen, das von einer gesendeten Nachricht gelernt wurde.
BEARBEITEN: Wie in den Kommentaren angegeben, aktualisiert der RFC 5227 den RFC 826 und es heißt
In einigen Anwendungen der IPv4-Adresskonflikterkennung (ACD) kann es vorteilhaft sein, ARP-Antworten mithilfe von Broadcast anstelle von Unicast zu übermitteln, da dadurch Adresskonflikte früher erkannt werden können, als dies sonst der Fall wäre
Eine der Anwendungen von Broadcast-ARP sind die kostenlosen ARP-Antworten, die von einigen Clustering- oder Link-Aggregation-Lösungen (dh Teaming-Lösungen) gesendet werden. Dies ist der Prozess, den sie normalerweise verwenden, wenn sie Datenverkehr von einer Schnittstelle zu einer anderen verschieben möchten.
Dieser Prozess aktualisiert alle Hosts im lokalen Subnetz (einschließlich des Gateways) und veranlasst die L2-Switches, ihre MAC-Adresstabellen zu aktualisieren. Das Ergebnis ist, dass der gesamte Datenverkehr reibungslos und schnell auf die neue Schnittstelle umgeschaltet werden sollte.
quelle