1

socket_create(int $domain, int $type, int $protocol) でマシンに ping を実行する関数を作成しようとしています。

これを行う一般的な方法は、SOCK_RAW タイプを使用することです。これにより、OSI トランスポート層をバイパスし、独自の ICMPv4 パケット (プロトコル番号 1 - ICMP) を作成できます。以下に例を示します: http://php.net/manual/en/function.socket-create.php#101012

どうやらServer 2008以降、トランスポート層をバイパスするには管理者権限が必要です。(また、インターネットで、UNIX システムではこれにもルート資格情報が必要であると読みましたが、Server 2008 を実行しているので関係ありません。)

しかし、Windows の cmd の ping 機能は管理者権限を必要としないため、これは混乱を招きます。それはどのように機能しますか?では、PHP で管理者権限を必要としない ping 関数を作成することは可能でしょうか?

4

0 に答える 0