可能重複:
Why does ping work without administrator privileges?如何在Windows上不需要管理權限?
從MSDN文章TCP/IP原始套接字:
...重要的是要明白,有些類型的插座是很重要的SOCK_RAW可能會收到許多意外的數據報。例如,ping程序可以創建類型爲SOCK_RAW的套接字來發送ICMP迴應請求和接收響應....
這段話表明,爲了執行ICMP的ping,必須在Windows上使用原始套接字平臺。然而,同一篇文章也說:
注:要使用類型的插座SOCK_RAW需要管理員權限。運行使用原始套接字的Winsock應用程序的用戶必須是本地計算機上的管理員組的成員,否則原始套接字調用將失敗並顯示錯誤代碼爲WSAEACCES。在Windows Vista和更高版本上,創建套接字時會強制訪問原始套接字。在Windows的早期版本中,在其他套接字操作期間強制訪問原始套接字。
我當然不需要是管理員到ping
其他主機。那麼ping.exe
是否得到特殊待遇,它甚至使用原始套接字還是有其他我缺少的東西?
也許'ping'不使用原始套接字? – 2012-07-11 18:29:03
「這段話暗示爲了執行ICMP ping,必須在Windows平臺上使用原始套接字。」 - 不,不是的。 – tenfour 2012-07-11 18:50:18
@tenfour你說得對,*表示*的含義太強。 – Tibor 2012-07-11 18:51:26