ARP Reply funktioniert nur im 2. Versuch (VirtualBox-Network)

Hallo Forum,

es geht um ein Verhalten, dass ich mir leider nicht erklären kann.

Gegeben ist eine Netzwerkumgebung zwischen Host und verschiedenen VMs, welche über eine Netzwerkbrücke miteinander verbunden sind und über 'ssh' oder 'scp' miteinander kommunizieren.

Nach dem Hochfahren einer VM ist der ARP-Cache leer. Erst nach einem Kommunikationsaufbau über ssh füllt sich der Cache.

Weiter gibt es einen ARP-Client auf dem Host, welcher sich an den ARP-Cache der VM wendet und ihm Einträge in Form von ARP-Replies übermittelt.

Hier beginnt mein Verständnisproblem. Die ARP-Replies erfüllen ihre Aufgabe, wenn sich schon etwas im Cache befindet. Sendet der Client seinen Reply allerdings, wenn der Cache noch leer ist, dann geschieht nichts, kein neuer Eintrag.

Nun kam mir der Gedanke, dass es daran liegen könnte, dass mindestens ein ARP-Request der VM vorweggegangen sein muss, damit diese Einträge in ihrem Cache zulässt.

Andererseits läuft alles auf Debian Jessie, welches. soweit ich weiß, keine diesbezüglichen Sicherheitseinschränkungen oder Restriktionen mit sich bringt und es ermöglichen sollte, dass der ARP-Cache auf Replies reagiert, obwohl kein diesbezüglicher Request vorangegangen ist.

Für Informationen, Hinweise und dergleichen wäre ich sehr dankbar.

sitli
 
Aus dem Arp Cache wird geantwortet, wenn was drin ist - korrekt.

Sind alle Caches leer - und es soll Kommunikation stattfinden, wird ein "who has" an die broadcast Adresse gesendet. Dann sollte vom betreffenden Host die Nachricht kommen (die dann auch im Cache landen sollte).
 
Chromatin schrieb:

>Sind alle Caches leer - und es soll Kommunikation stattfinden, wird ein "who has" an die broadcast Adresse gesendet.

Erst einmal danke für Deine Antwort.

Sorry, sollte ich mich mißverständlich ausgedrückt haben. Mir ist klar, wie ARP im Grunde nach arbeitet.

Um es kurz zu sagen. Was ich in meinem Eingangspost angesprochen habe ist ja nichts anderes als ARP-Cache-Poisoning.

Wenn ich Deine Antwort nehme, verstehe ich das so, dass diese Vorgehensweise immer nur bei einem bestehenden Cache funktioniert?! Ist dieser leer, muss mindestens einmal im Vorfeld ein gewöhnlicher ARP-Request-Reply Austausch stattfinden, sonst funktioniert das Senden eines einfachen Replies zur Änderung des Caches nicht, ist das korrekt?
 
verstehe ich das so, dass diese Vorgehensweise immer nur bei einem bestehenden Cache funktioniert?! Ist dieser leer, muss mindestens einmal im Vorfeld ein gewöhnlicher ARP-Request-Reply Austausch stattfinden, sonst funktioniert das Senden eines einfachen Replies zur Änderung des Caches nicht, ist das korrekt?

das ist implementationsabhänig

es ist möglich dass ein system sich nur arp replys ansieht die zu bestehenden einträgen im cache passen, weil alle anderen ja zu diesem zeitpunkt keine nützliche information enthalten ... was nützt dir die telefonnummer von xyz wenn du nicht vor hast dort anzurufen ...
 
Eigentlich ist die Frage obsolet und eher von theoretischer Natur, da es in meinem Netzwerk, aber auch draußen im großen weiten Netz wohl kaum einen 'aktiven' Knoten geben dürfte, bei dem der Cache komplett leer ist.
 
Eigentlich ist die Frage obsolet und eher von theoretischer Natur, da es in meinem Netzwerk, aber auch draußen im großen weiten Netz wohl kaum einen 'aktiven' Knoten geben dürfte, bei dem der Cache komplett leer ist.

ARP funktioniert ohnehin nur in LANs, da es nicht über IP Netze geroutet wird und in machen "Hochsicherheits" Netzwerken führt man noch immer statische Tabellen und verzichtet gänzlich auf ARP.

Man kann gegen ARP Poising nicht so richtig viel tun aber eine Möglichkeit ist es, keine "ungefragten" Replys in den Cache aufzunehmen (um GrafZahls Post zu ergänzen). Möglicherweise ist das bei deiner Software der Fall. Das könntest du recherchieren.
 
Zurück
Oben