私のLinux PCに接続されているデバイスのipv6アドレスをどのように見つけますか?

私のLinux PCに接続されているデバイスのipv6アドレスをどのように見つけますか?

以下から、私のLinux PCに接続されているすべてのデバイスを見ることができます。

cat /proc/net/arp

ただし、これは接続されているデバイスのIPv4アドレスとMACのみを表示します。 IPv6 アドレスがありません。

接続されたデバイスのIPv6アドレスをどのように見つけますか?

答え1

コンピュータに接続されているすべてのデバイスを表示するには、次のものを使用できます。

ss -t

すべてのIPv4およびIPV6 TCP接続を表示します。


IPv6に対応する機能が必要な場合cat /proc/net/arp(たとえば、キャッシュされたレイヤ2アドレスを持つローカルネットワーク上のすべてのシステムを表示する)、次を使用します。

ip -6 neigh

または単に

ip neigh

結合されたIPv4およびIPv6ネイバーの場合。

答え2

最も簡単なコマンドは、すべての接続を一覧表示することですss | less。ただし、tcp、udp、またはunix接続のみを表示するには、次のように-tします。

ss -t

これにより、すべてのIPv4およびIPV6 TCP接続が表示されます。


  • IPv4ソケット接続のみを表示するには、-f inetまたは-4オプションを使用します。

    ss -tl -f inet または

    SS-TL-4

  • IPv6接続のみを表示するには、-f inet6または-6オプションを使用します。

    ss -tl6 または

    SS-finet6


またはIPv4とIPv6ネイバーの組み合わせで使用するためのものです。

ip neighbour 

これにより、カーネルの現在の隣接テーブルが表示されます。

しかし、ノートコメントに示すように:/proc/net/arpリストにPCに接続されているデバイスはありません。 PCがARP要求を完了/確認したサブネットのデバイスのリストを表示します。コンピュータにどのデバイスが接続されているかを確認するには、netstat同様のデバイスが必要です(IPV4およびIPV6デバイスが自動的に表示されます)。 IPV6はARPを使用しません(NDPを使用します)。

関連情報