簡體   English   中英

在Win XP SP3上Ping廣播

[英]Ping broadcast on Win XP SP3

我正在嘗試ping WinXP SP3上的廣播地址255.255.255.255。

如果使用命令行,則會收到主機錯誤:

C:\>ping 255.255.255.255
Ping request could not find host 255.255.255.255. Please check the name and try again.

如果嘗試使用iphlpapi的C ++程序,則IcmpSendEcho()失敗,並且GetLastError返回11010 IP_REQ_TIMED_OUT

HANDLE h = ::IcmpCreateFile();
IPAddr broadcast = inet_addr( "255.255.255.255" );
BYTE payload[ 32 ] = { 0 };
IP_OPTION_INFORMATION option = { 255, 0, 0, 0, 0 };

// a buffer with room for 32 replies each containing the full payload
std::vector< BYTE > replies( 32 * ( sizeof( ICMP_ECHO_REPLY ) + 32 ) );

DWORD res = ::IcmpSendEcho( h, 
                            broadcast, 
                            payload, 
                            sizeof( payload ), 
                            &option, 
                            &replies[ 0 ], 
                            replies.size(), 
                            1000 );
::IcmpCloseHandle( h );

我可以ping通本地廣播192.168.0.255 ,沒有問題。

對ping廣播,我需要做什么?

謝謝PaulH

據我所知,這在Windows中不起作用。 在Linux操作系統中,您可以ping 255.255.255.255,但是路由協議不會在本地網絡外部中繼255.255.255.255廣播。

您想達到什么目的? 您准備好在連接的地球上的每台計算機都將做出響應嗎? 我很害怕...


順便說一句,您應該准備好即使在本地網絡中也沒有人會響應廣播ping。 有關SF的問題可能有用。

廣播UDP已過時約20年。 最不可能通過路由器到達另一個子網。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM