다음을 통해 내 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를 사용합니다).