답변:
창문에 대한 아핑은 실제로 존재합니다.
http://freshmeat.net/projects/arping/
수정 : 이것은 Linux, MAC OSX 등을위한 것이지만 cygwin을 통해 Windows에 설치할 수 있습니다.
Window의 arp 캐시 (arp -d)를 지우고 ip 주소를 핑하려고하면 arp 브로드 캐스트가 발행됩니다.
Wireshark로 확인하십시오.
WinXP의 ARP 명령은 데이터 만 표시합니다. Nmap을 사용해보십시오.이 유형의 스캔에는 무료이며 상당히 쉽습니다. Nmap은 insecure.org에 있습니다.
nmap -PR -sn <host>
이 선호됩니다. -sP
더 이상 사용되지 않습니다. 또한 루트로 실행할 때만 작동했습니다.
Windows에서이를 수행하는 내장 된 방법 :
cmd /V /C "set "IP=10.0.2.2" & FOR /L %i in (1,0,2) do @ping -n1 -w 1000 "!IP!" >NUL & arp -a | findstr /c:"!IP! "
-n
과 1
같이되었다 :... @ping -n 1 ...
cmd /V /C "set "IP=10.0.2.2" & FOR /L %i in (1,1,2) do @ping -n 1 -w 1000 "!IP!" >NUL & arp -a | findstr /c:"!IP! "
두 번 실행되므로 중복 MAC 주소를 선택 한다고 생각 합니다.
이것은 정확히 ARP "ping"은 아니지만 명령 프롬프트에서 "arp inet_addr (ip address)"을 실행하면 (ip address)에 지정된 호스트에 단일 ARP 요청을 보냅니다. 그런 다음 "arp -a"를 실행하여 결과를 볼 수 있습니다.
https://github.com/seladb/PcapPlusPlus/tree/master/Examples/Arping에서 확인할 수 있습니다 . 이것은 Windows, Linux 및 Mac OS X 모두에서 작동 할 수있는 크로스 플랫폼 Arping입니다
명령 프롬프트에서 직접 실행되는이 도구를 추가 할 것이라고 생각했습니다.
arp-ping.exe 명령 줄 옵션
Usage: arp-ping.exe [options] target
-s ip : specify source ip
-n X : ping X times
-t : ping until stopped with CTRL-C
-x : exit immediately after successful ping
-i X : ping every X seconds
-d : do an 'arp -d *' between pings (requires Administrator)
(-d prevents cached ARP responses on Windows XP.)
-c : include date and time on each line
-m X : ignore failures that take less than X milliseconds
-. : print a dot (.) for every ignored failure
-l : print debug log
-v : print version and exit
Linux "arping"명령 줄 옵션과 비교
Usage: arping [-fqbDUAV] [-c count] [-w timeout] [-I device] [-s source] destination
-f : quit on first reply
-q : be quiet
-b : keep broadcasting, don't go unicast
-D : duplicate address detection mode
-U : Unsolicited ARP mode, update your neighbours
-A : ARP answer mode, update your neighbours
-V : print version and exit
-c count : how many packets to send
-w timeout : how long to wait for a reply
-I device : which ethernet device to use (eth0)
-s source : source ip address
destination : ask for what ip address
IP 헬퍼 API를 사용하여 ARP 테이블을 얻는 방법 http://www.codeguru.com/cpp/in/internet/internetprotocolip/article.php/c6153
GetIpNetTable : 주소 확인 테이블 정보를 검색합니다.
SetIpNetEntry : ARP 테이블에 항목을 추가합니다.
DeleteIpNetEntry : ARP 테이블에서 항목을 삭제합니다.
CreateIpNetEntry : ARP 테이블에 항목을 작성합니다.
FlushIpNetTable : ARP 테이블에서 지정된 인터페이스에 대한 모든 ARP 항목을 삭제합니다.
SendARP : 지정된 대상 IP 주소에 해당하는 물리적 주소를 얻기 위해 ARP 요청을 보냅니다.
Hardping은이를 수행하는 적절한 프로그램입니다.
핑 스윕 프로그램보다 많은 비용이 드는 정식 버전이 있지만 프리웨어 버전 만 사용합니다. 무료는 한 번에 1 ip 만 수행하지만 그것이 필요한 전부입니다.
c :> hardping 192.168.1.1과 같이 사용하면 mac으로 응답하거나 응답하지 않습니다.
그들이 사이트에서 가져간 것으로 생각하지만 "하드웨어 프리웨어"를 인터넷 검색하여 찾을 수 있습니다.