Wie kann ich IPv6-Router-Anzeigen anzeigen, die mein Computer zu Diagnosezwecken empfängt?
Gibt es in den meisten Distributionen „integrierte“ Tools?
Antwort1
Verwenden Sie tcpdump
, das auf vielen Distributionen standardmäßig installiert ist:
tcpdump -n -i eth0 icmp6
zeigt Ihnen alle ICMPv6-Pakete an, von denen - unter normalen Umständen - fast alle Neighbor Discovery-Pakete sind. Um nur Router-Anzeigen anzuzeigen, verwenden Sie den folgenden Befehl:
tcpdump -n -i eth0 icmp6 and ip6[40] == 134
Für mehr Ausführlichkeit fügen Sie hinzu -v
; um Paketinhalte anzuzeigen, verwenden Sie die Option -X
.
Tshark wird normalerweise mit Wireshark gebündelt, das die meisten Distributionen nicht standardmäßig installieren, sondern als zusätzliches Paket bereitstellen.
Antwort2
Obwohl es nicht integriert ist, finde ich das Befehlszeilentool radvdump
(Teil des radvd
Pakets meiner Distribution) sehr aufschlussreich, da es die Router-Anzeigen vollständig dekodiert und sie im Detail anzeigt, einschließlich der angegebenen DNS-Informationen.
$ radvdump
interface eth0
{
AdvSendAdvert on;
# Note: {Min,Max}RtrAdvInterval cannot be obtained with radvdump
AdvManagedFlag on;
AdvOtherConfigFlag on;
AdvReachableTime 0;
AdvRetransTimer 0;
AdvCurHopLimit 64;
AdvDefaultLifetime 65535;
AdvHomeAgentFlag off;
AdvDefaultPreference medium;
AdvSourceLLAddress on;
AdvLinkMTU 1280;
AdvIntervalOpt on;
prefix 1111:2222:3333:4444::/64
{
AdvValidLifetime infinity; # (0xffffffff)
AdvPreferredLifetime infinity; # (0xffffffff)
AdvOnLink on;
...