1

Google で長い間検索していますが、探しているものが見つかりません。オフィスの別の建物に、ビジネス用のローカル Web アプリケーションがあります。私のスタッフは、ワイヤレス デバイスとデスクトップ コンピューターの両方を備えたローカル ネットワークでこのアプリケーションを使用します。しかし、限られたデバイスやマシンからのみアクセスできるようにしたいと考えています。

arpたとえば、次のようにIP アドレスを に渡すことで、接続されたデバイスの MAC アドレスを取得できます。

arp -n 192.168.10.12

ターミナルで。

しかし、phpスクリプトで同じコマンドを実行しても出力が得られません

$output = shell_exec('arp -n 192.168.10.12'); echo "<pre>$output</pre>";

ls -l /var/www関数内などのコマンドをいくつか試しましたがshell_exec、これらのコマンドはコマンドラインと同じように表示されます。私の質問は、arp -n ipaddressコマンドを実行できない理由とその実行方法です。

ビジネスクライアントが私のオフィスに来たときに私のネットワークを使用することを好むため、ルーター経由で MAC アドレスを確認することはできません。

前もって感謝します。

このリンクをたどりました。

4

1 に答える 1

1

コマンドの使用やフルパスへの参照が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
于 2013-08-26T10:02:31.013 に答える