Lan
如何通過 MAC 地址找出 LAN 上的 Windows PC 的名稱?
這是針對 OSX的一個等效問題。通過 MAC 地址找出區域網路中 Windows PC 的 NetBIOS 名稱的最簡單方法是什麼,反之亦然?
它可以通過IP完成:
nmblookup -A a.b.c.d nmblookup pc_netbios_name
MAC地址有類似的命令嗎?
arp
您可以使用下表通過其 IP 地址找出最近聯繫的設備的 MAC 地址:ping -c1 -w1 10.0.2.2 PING 10.0.2.2 (10.0.2.2) 56(84) bytes of data. 64 bytes from 10.0.2.2: icmp_seq=1 ttl=63 time=0.785 ms --- 10.0.2.2 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.785/0.785/0.785/0.000 ms arp -n 10.0.2.2 Address HWtype HWaddress Flags Mask Iface 10.0.2.2 ether 52:54:00:12:35:02 C eth0
你可以把它合併成一個小函式:
iptoarp() { local ip="$1" ping -c1 -w1 "$ip" >/dev/null arp -n "$ip" | awk '$1==ip {print $3}' ip="$ip" } iptoarp 10.10.0.2 # --> 52:54:00:12:35:02
我知道從 MAC 地址獲取 IP 地址或 NetBIOS 名稱的簡單方法。執行
arpwatch
並掃描日誌文件以從該設備進行聊天,或者ping
依次掃描 LAN 上的每個 IP 地址並查找arp
響應。