Lösung
Verwenden Sie ip -s -s neigh flush all in der Shell um auf einer Sophos SG UTM Firewall den ARP oder NDISC Cache zu löschen. Sie sollten immer den Befehl ip verwenden, denn das ip Tool ist dem arp Tool vorzuziehen weil es sich sowohl für IPv4 und IPv6 eignet und es in meinen Tests die zuverlässigeren Resultate lieferte. Das ip Tool ist sowohl für ARP (IPv4) und NDISC (IPv6) Cache einsetzbar.
Der "Linux bekannte" Standard-Befehl arp -d ip_Adresse war in meinen Tests wirkungslos - Vergessen Sie diesen auf der SG Firewall.
Gut zu wissen: ARP, steht für Address Resolution Protocol in einem IPv4 Netzwerk welches den ARP-Cache stellt.
NDISC steht für Neighbor Discovery Protocol welches den Neighbor-Cache stellt. Daher die Begriffe "arp_cache" und "ndisc_cache".
Ermitteln der doppelten Adressen
Mit ARP Tool:
arp -avn
Mit dem grep Befehl kann nach der gewünschten Adresse gesucht werden.
arp -avn |grep -i 1.2.3.4 oder z.B alle IP-Adressen mit Endung X arp -avn |grep -i .4
Mit IP Tool:
ip -s neigh show
ip -s neigh show dev eth0
ip -s neigh show 1.2.3.4/24
Auch hier kann mit grep gefiltert werden.
ip -s neigh show |grep -i 1.2.3.4
Entfernen der doppelten Adressen
Der Befehl zum löschen des kompletten ARP Cache lautet daher:
ip -s -s neigh flush all
Das erste -s (stale) steht für die ausführliche Ausgabe (eng. verbose). Das zweite -s (oft undokumentiert) listet zusätzlich die gelöschten Einträge auf.
Das neigh steht für Neighbor-Operationen des ip Tools. In anderen Worten: der ARP Cache Bearbeitung. Das flush all steht für das Löschen.
Hinweis:
Sollten Sie diesen Befehl nicht auf einer Sophos SG Firewall verwenden: Die -s Parameter stehen nicht in jeder Linux Distribution zur Verfügung, verwenden Sie den Befehl in diesem Fall ohne -s Parameter.
Der oder die zuvor doppelt gelisteten Einträge werden anschließend als "incomplete" angezeigt. Das bedeutet dass der Auflösungs-Prozess gerade in Bearbeitung ist und noch keine Antwort eingegangen ist, was übersetzt so viel bedeutet wie "gelöscht".
Neben dem manuellen Löschen der Einträge könnte die Firewall auch neu gesartet werden, bei einem Cluster jedoch, müsste der gesamte Cluster neu gestartet werden da sämtliche Nodes die Informationen "behalten".
Verwenden Sie zur Kontrolle im Anschluss die selben Befehle wie unter der "Ermittlung".
Weitere Varianten des ip-Befehls
Cache Einträge aus eth0 entfernen:
ip -s -s neigh flush dev eth0
Alternative um alle Einträge IPv4 und IPv6 zu löschen:
ip -family inet neigh flush any
Cache für eine IPv4-Adresse löschen:
ip -s -s neigh flush 1.2.3.4
Cache für eine IPv6-Adresse löschen
ip -s -s neigh flush 2001:ab1::1
Cache für ein Subnetz löschen:
ip -s -s neigh flush 1.2.3.4/24
Weitere Informationen:
Befehlsreferenz des IP-Tools: Link