답변:
시도 arp -a
컴퓨터의 현재 ARP 테이블을 볼 수 있습니다. 컴퓨터와 상호 작용 한 IP 주소 만 표시됩니다. 다음과 같은 출력 (네트워크에서 MAC 주소를 숨기려면 약간 흐리게 표시됨) :
$ arp -a
? (10.1.168.1) at xx:xx:9e:82:ab:f6 on en1 ifscope [ethernet]
? (10.1.168.16) at xx:xx:29:d3:17:8 on en1 ifscope [ethernet]
? (10.1.168.115) at xx:xx:2:4f:76:14 on en1 ifscope [ethernet]
? (10.1.168.131) at xx:xx:6b:d0:36:a5 on en1 ifscope [ethernet]
? (10.1.168.134) at (incomplete) on en1 ifscope [ethernet]
? (10.1.168.137) at xx:xx:65:46:cd:b8 on en1 ifscope [ethernet]
? (10.1.168.255) at ff:ff:ff:ff:ff:ff on en1 ifscope [ethernet]
? (192.168.4.255) at ff:ff:ff:ff:ff:ff on vmnet8 ifscope [ethernet]
? (192.168.110.255) at (incomplete) on vmnet1 ifscope [ethernet]
어떤 컴퓨터에 대한 추가 정보가없는 경우 MAC 주소 조회를 통해 네트워크 카드 제조업체를 식별하여 조금 더 자세한 정보를 얻을 수 있습니다 .
arp -a
컴퓨터와 상호 작용 한 IP 주소 만 표시됩니다." ? 브로드 캐스트 (192.168.110.255)를 먼저 핑하고 모든 장치에서 응답을 얻은 다음 arp를 사용하여 모든 장치를 상호 작용 / 핑 했으므로 전체 목록을 가져와야합니까?
다른 모든 컴퓨터가 액세스 할 수있는 것과 동일한 브로드 캐스트 도메인에 있다고 가정하면 브로드 캐스트 주소를 ping하면 충분합니다. 잠들거나 핑에 응답하지 않도록 구성된 시스템이나 핑에 응답하지만 핑을 브로드 캐스트하지 않는 시스템은 찾지 않습니다.
% ifconfig -a | grep broadcast
inet 192.168.1.241 netmask 0xffffff00 broadcast 192.168.1.255
% ping -i 5 -c 2 192.168.1.255
PING 192.168.1.255 (192.168.1.255): 56 data bytes
64 bytes from 192.168.1.241: icmp_seq=0 ttl=64 time=0.393 ms
64 bytes from 192.168.1.254: icmp_seq=0 ttl=255 time=2.511 ms (DUP!)
64 bytes from 192.168.1.65: icmp_seq=0 ttl=64 time=5.810 ms (DUP!)
64 bytes from 192.168.1.255: icmp_seq=0 ttl=64 time=7.886 ms (DUP!)
64 bytes from 192.168.1.241: icmp_seq=1 ttl=64 time=0.312 ms
--- 192.168.1.255 ping statistics ---
2 packets transmitted, 2 packets received, +3 duplicates, 0% packet loss
round-trip min/avg/max/stddev = 0.312/3.382/7.886/3.010 ms
첫 번째 및 마지막 응답은 거의 항상 로컬 시스템입니다. 그만큼(DUP!)
(이 예는 정말 유용하지 않습니다 브로드 캐스트 주소 자체로 응답 일부 기계를 보여 불구하고) 응답은 다른 기계에서입니다.
올인원 브로드 캐스트 주소를 사용해 볼 수도 있습니다.
% ping -i 5 -c 2 255.255.255.255
PING 255.255.255.255 (255.255.255.255): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.392 ms
64 bytes from 192.168.1.254: icmp_seq=0 ttl=255 time=3.053 ms (DUP!)
64 bytes from 192.168.1.65: icmp_seq=0 ttl=64 time=8.685 ms (DUP!)
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.319 ms
--- 255.255.255.255 ping statistics ---
2 packets transmitted, 2 packets received, +2 duplicates, 0% packet loss
round-trip min/avg/max/stddev = 0.319/3.112/8.685/3.401 ms
이 예는 덜 부스러기를 보여줍니다. 모든 (DUP!)
머신은 다른 머신이며 로컬 머신은 127.0.0.1로 쉽게 식별됩니다.
Mac에는 모두 호스트 이름이 있으므로 IP 주소를 몰라도됩니다. 대신 호스트 이름 만 사용하면됩니다.
호스트 이름은 컴퓨터에 지정한 이름을 기반으로합니다. 따라서 컴퓨터 이름이 "Jon 's Mac"인 경우 사용할 호스트 이름은 "jons-mac.local"과 같습니다.
$ ssh jons-mac.local
컴퓨터의 호스트 이름을 모르면 해당 컴퓨터의 공유 환경 설정에서 컴퓨터의 호스트 이름을 찾거나 dns-sd 명령을 사용하여 네트워크에있는 다른 컴퓨터의 호스트 이름을 찾을 수 있습니다. 이 명령은 Bonjour를 사용하여 네트워크 서비스를 찾아 볼 수 있도록합니다. 실제로 일부 네트워크 서비스를 광고하는 컴퓨터 만 찾을 수 있습니다.
ssh를 제공하는 일부 컴퓨터에 연결하려면 다음을 사용하여 사용 가능한 컴퓨터를 찾으십시오.
dns-sd -B _ssh._tcp .
일반적으로 서비스 이름을 사용하여 특정 서비스를 제공하는 호스트를 검색 할 수 있습니다. http://www.dns-sd.org/ServiceTypes.html
Bonjour 프로토콜은 특정 서비스뿐만 아니라 모든 서비스 를 찾아 볼 수있는 기능도 제공합니다 . 당신은 특별한 서비스를 찾아서 이것을 할 수 있습니다_services._dns-sd._udp
dns-sd -B _services._dns-sd._udp .
명령 줄에서 네트워크의 다른 컴퓨터를 찾는 것에 대한 질문이지만 GUI에서 dns-sd 보급 서비스를 찾아 볼 수도 있습니다. 예를 들어 Terminal.app> New Remote Connection ...은 알려진 ssh, sftp, ftp 및 telnet 서비스를 보여주는 창을 표시합니다.
dns-sd -B _ssh._tcp .
을 얼마나 빨리 실행할 수 있습니까?
dns-sd
LAN에서 Bonjour 쿼리를 수행하기 위해 사용할 수 있습니다.
dns-sd -B _ssh._tcp .
어쩌면 약간 과잉이지만 nmap을 사용할 수 있습니다
각 IP 주소에 대해 / 24 서브넷 핑을 수행하는 빠른 CLI 하나의 라이너. 빠르고 더러워 지지만 작동합니다.
for (( x=1; x <= 254; x++ )); do ping -c 3 192.168.0.$x; done
설명 : 범위를 변경하려면 x = 1을 x = 130 또는 시작하려는 항목으로 변경하고 254를 끝으로 변경하십시오 (135).
for (( x=130; x <= 135; x++ ));
ping -c 3은 3 개의 핑을 보냅니다. 핑 수를 변경하려면 3을 다른 것으로 변경하고 주소 범위를 변경하려면 192.168.0을 다른 것으로 변경하십시오.
do ping -c 30 10.10.0.$x;
fping -ag 172.16.0.0/16
LAN에있는 다른 컴퓨터의 이름을 알고 있다면 가장 간단한 방법은 핑 (ping)하는 것입니다.
$ ping foobar
Pinging foobar.lan [192.168.0.25] with 32 bytes of data:
Reply from 192.168.0.25: bytes=32 time<1ms TTL=64
Reply from 192.168.0.25: bytes=32 time<1ms TTL=64
로컬 라우터 또는 DHCP 서버에 따라 다를 수 있습니다. 베어 호스트 이름이 작동하지 않으면 .local을 추가하십시오 (예 : ping hostname.local ).
분명히 이것은 큰 LAN이나 기억력이 나쁜 사람들에게는 효과적이지 않습니다.
Mac을 사용하는 경우 (10.5 이상으로 가정) 데스크톱 액세스를 위해 VNC를 활성화하고 Flame.app을 사용하십시오.
정말 필요한 것을 정확하게 제공하는 정말 유용한 유틸리티입니다. 유일한 것은 SSH보다 더 멀리 가야한다는 것입니다.
Windows의 경우 :
1) 쓰기 : (1,1,254)에서 / L % I에 대해 DO ping -w 30 -n 1 168.29.0. % I 로컬 네트워크의 모든 주소를 ping합니다.
2) 그런 다음 다음을 작성하십시오. arp -a 응답 한 모든 주소를 제공합니다