2011-01-14 5 views
0

WinXP SP3에서 브로드 캐스트 주소 255.255.255.255를 핑 (ping)하려고합니다.Win XP SP3에서 Ping 브로드 캐스트

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); 

나는 문제없이 로컬 방송 192.168.0.255를 Ping 할 수 있습니다.

글로벌 방송에 핑 (ping)을하려면 어떻게해야합니까? 내가 아는 한

덕분에, PaulH

+0

'ping ff02 :: 1 % 0'이 (인터페이스를 선택하기 위해 % 0을 % 1, % 2 등으로 대체해야 할 수도 있습니다.) – user562374

+0

@ user562374 -'Ping 요청은 호스트 ff02 :: 1 % X을 (를) 찾을 수 없습니다. 이름을 확인한 후 다시 시도하십시오 .' 모든 값은 X입니다. – PaulH

답변

3

이 윈도우에서 작동하지 않습니다. Linux OS에서는 255.255.255.255로 ping을 할 수 있지만 라우팅 프로토콜은 로컬 네트워크 외부에서 255.255.255.255 브로드 캐스트를 중계하지 않습니다.

달성하려는 목표는 무엇입니까? 연결된 지구의 모든 컴퓨터가 응답 할 준비가 되셨습니까? 나는 그런데


... 무서워, 당신은 아무도 심지어 로컬 네트워크에 브로드 캐스트 핑에 응답하지 않습니다 것을 준비해야한다. This question on SF이 유용 할 수 있습니다.

+0

내 목표는 설정 한 IP/서브넷에 관계없이 네트워크의 모든 호스트가 응답하는 것입니다. 감독 된 방송은 잘 작동합니다. 그들이 감독 방송에 응답하면 방송에 응답하지 않습니까? 또한, 네, 제 리눅스 박스에서 작동합니다. – PaulH

0

브로드 캐스트 UDP는 약 20 년 동안 사용되지 않습니다. 라우터를 통과하여 다른 서브넷으로가는 것은 거의 없습니다.

+0

나는 전체 인터넷에 ping을 시도하지 않고있다. 나는 그것이 라우터를 통해 갈 것으로 기대하지 않습니다. – PaulH

+0

@PaulH : 여러 서브넷으로 이동할 것으로 예상됩니다. 즉, 라우터 또는 브리지를 통과하거나 호스트를 브리징하는 것을 의미합니다. 이 목적으로 255.255.255.255를 사용할 수는 없습니다. – EJP

+0

일 필요는 없습니다. 동일한 스위치에 여러 서브넷을 가질 수 있습니다. 그것은 정상적으로 그렇게하지 않습니다. 하지만 할 수 있습니다. – PaulH