请教如何写这样一个java程序:
2台在同一网段的主机(A和B),相互能够ping到.程序在主机A上执行,以主机B的IP为参数,执行后的返回结果是主机B网卡的MAC地址.
还要一个要求是A和B的操作系统不能有限制,也就是无论在Windows或Linux系统下都能执行.
请教各位,有没有办法实现的?
请教如何写这样一个java程序:
2台在同一网段的主机(A和B),相互能够ping到.程序在主机A上执行,以主机B的IP为参数,执行后的返回结果是主机B网卡的MAC地址.
还要一个要求是A和B的操作系统不能有限制,也就是无论在Windows或Linux系统下都能执行.
请教各位,有没有办法实现的?
先ping目标主机,然后察看arp表,该方法不受操作系统类型的限制
ping 192.168.1.100
arp -a 192.168.1.100
Process p = Runtime.getRuntime().exec("ping " + ip);//执行DOS命令
p = Runtime.getRuntime().exec("arp -a " + ip);//执行DOS命令
InputStreamReader ir = new InputStreamReader(p.getInputStream());//获取返回结果的流
自己解析吧