我有一个奇怪的问题,我试图确定一个特定的MAC地址(我的Xbox 360)是否在networking上(即上)
问题是我正在从我的Synology Cubestation这是一个基于powerpc的embedded式Linux NAS。
我可以访问各种命令,包括ping和nslookup,但是我没有像arp这样最有用的东西。
我不介意做类似于ping 192.168.1.1到192.168.1.255之类的东西,但是不会返回mac地址。 不幸的是我对Linuxynetworking命令的知识是有限的,所以欢迎任何build议。
PS如果有另一种方式来确定我的Xbox是否在networking上,这些build议也是受欢迎的。
首先,几个假设:
列出当前系统已知的IP / MAC: cat /proc/net/arp
所以你将不得不从子网ping每个IP,然后检查ARP表,并确保ping IP。
就像是:
ping -c 1 `cat arp | grep "00:12:34:45:78:AB" | cut -d" " -f 1` >/dev/null; echo $?
如果Xbox应答ping,则输出0,否则输出1。 根据你想要做什么,你可以做一些如果$? 或者其他的东西。
如果/ proc / net / arp存在,并且您有grep / awk可用:
mac="00:0e:a6:b6:cd:5b" ip=$(cat /proc/net/arp | grep $mac | awk '{print$1}') if [ "$ip" != "" ]; then echo "It's On" fi
你不能只检查XBox 360内的networking设置?
介绍家庭networking
在您的Xbox 360控制台上,请按照下列步骤操作:
- select系统设置。
- selectnetworking设置。
- selectconfigurationnetworking。
这可能会告诉你的Xbox 360机器的IP地址和MAC地址。
你确定'arp'没有安装在你的CubeStation上吗? 可能这是一个path问题?
假设您正在login到CubeStation上的shell,请尝试:
/sbin/arp
要么
/usr/sbin/arp