我已经在谷歌上搜索了很长时间,但没有得到我想要的东西。我在办公室的不同建筑物中有一个本地 Web 应用程序用于业务。我的员工将在本地网络中使用此应用程序,包括无线设备和台式计算机。但我想让他们只能通过有限的设备和机器访问。
我可以通过将连接的设备的 IP 地址传递给arp
来获取连接的设备的 MAC 地址,例如:
arp -n 192.168.10.12
在终端中。
但是当我在 php 脚本中运行相同的命令时,我无法获得任何输出
$output = shell_exec('arp -n 192.168.10.12'); echo "<pre>$output</pre>";
我尝试了一些命令,例如shell_exec
函数中的ls -l /var/www
,这些命令的显示与命令行中的相同。所以我的问题是为什么我不能运行arp -n ipaddress
命令以及如何运行它。
我无法通过路由器检查MAC地址,因为我的企业客户喜欢在来到我的办公室时使用我的网络。
提前谢谢。
我点击了这个链接。
我很确定不允许www-user
使用arp
命令或对完整路径的引用。
像/usr/sbin/arp
一样使用其完整路径。
它要么有效,要么没有许可。如果没有许可,搜索sudo
并让www-user
访问arp
。
dan@big:/root$ /usr/sbin/arp
Address HWtype HWaddress Flags Mask Iface
xxxx.xx.xx.xxxx ether 00:00:XX:00:01:XX C eth0
dan@big:/root$ arp
bash: arp: command not found