Я бы использовал другой подход - проверка из системы, к которой вы подключены.
Передо мной окно с Windows, поэтому я использую его nslookup
для поиска IP-адреса для имени хоста, а затем arp
для поиска MAC-адреса. (Последнее предполагает, что две системы находятся в одной подсети, поскольку MAC-адреса не видны через маршрутизатор. Хотя вы, конечно, можете проверить ARP-кэш маршрутизатора .)
C:\Users\faile_000>nslookup phoebe Server: router.asus.com Address: 192.168.1.1 Name: phoebe Address: 192.168.1.43 C:\Users\faile_000>arp -a 192.168.1.43 Interface: 192.168.1.110 --- 0x1b Internet Address Physical Address Type 192.168.1.43 c0-7c-d1-c0-39-44 dynamic
Точно так же вы можете использовать host
или dig
для поиска IP-адресов в Linux, и arp
или ip neigh show
для просмотра кэша ARP.
[geek@phoebe ~]$ host clocacina clocacina has address 192.168.1.10 ^[[A[geek@phoebe ~]$ dig clocacina ; <<>> DiG 9.10.4-P1-RedHat-9.10.4-1.P1.fc24 <<>> clocacina ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12329 ;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;clocacina. IN A ;; ANSWER SECTION: clocacina. 0 IN A 192.168.1.10 ;; Query time: 54 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Mon Feb 13 16:37:04 SGT 2017 ;; MSG SIZE rcvd: 43 [geek@phoebe ~]$ ip neigh show 192.168.1.10 192.168.1.10 dev bridge0 lladdr 00:16:d3:2d:8b:9a STALE [geek@phoebe ~]$ arp 192.168.1.10 Address HWtype HWaddress Flags Mask Iface Clocacina ether 00:16:d3:2d:8b:9a C bridge0