重複の可能性:
管理者権限がなくても ping が機能するのはなぜですか?
TCP/IP Raw ソケットに関するMSDNの記事から:
... タイプ SOCK_RAW の一部のソケットは、多くの予期しないデータグラムを受信する可能性があることを理解することが重要です。たとえば、PING プログラムはタイプ SOCK_RAW のソケットを作成して、ICMP エコー要求を送信し、応答を受信することができます....
この一節は、ICMP ping を実行するには、Windows プラットフォームで raw ソケットを使用する必要があることを示唆しています。ただし、同じ記事には次のようにも書かれています。
注: タイプ SOCK_RAW のソケットを使用するには、管理者権限が必要です。raw ソケットを使用する Winsock アプリケーションを実行しているユーザーは、ローカル コンピューターの Administrators グループのメンバーである必要があります。そうでない場合、raw ソケット呼び出しはエラー コード WSAEACCES で失敗します。Windows Vista 以降では、ソケットの作成時に raw ソケットへのアクセスが強制されます。以前のバージョンの Windows では、他のソケット操作中に raw ソケットへのアクセスが強制されていました。
ping
もちろん、他のホストの管理者になる必要はありません。それでping.exe
、特別な扱いを受けますか、生のソケットを使用しますか、それとも他に何か不足していますか?