方法一、ping & arp
向ping一次目标主机,然后使用arp命令:
#!/bin/sh
ping -c 7 "<ip-address>"
# !!!fping!!!
# 如果有有必要的话,可以使用fping -g "<ip-address>/<prefix>"来探测整个网段
# 仅打印可达主机:fping -g "<ip-address>/<prefix>" 2>/dev/null
arp -an | grep "<ip-address>"
方法二、arping
#!/bin/sh
arping -I <interface> <host>
# !!!「arping」有两个版本:一个是iputils;另一个Thomas Habets开发,功能更多。
方法三、namp
有些主机可能屏蔽了ICPM报文,所以使用ping可能会无效。
可以使用nmap来扫描服务:
#!/bin/sh
nmap -sP -PE -PA21,23,80,3389 192.168.1.*
# -sP 跳过端口扫描
# -PE 使用ICMP echo request行为
# -PA 扫描特定的端口
# 192.168.1.* 网段
参考文献
K4NZ / 从MAC地址中获取IP地址Resolving MAC Address from IP Address in LinuxArping – To Discover Hosts on a Computer NetworkWikipedia/arpingfping usage to show only reachble hosts