ping 명령을 사용하여 상대방의 IP를 ping하면 요청 시간 초과가 발생합니다. 이유는 무엇입니까?
실제로 ping 명령이 실패하는 이유는 여러 가지가 있습니다. 일반적인 두 가지 이유는 다음과 같습니다.
1. 개인 방화벽이 설치되어 있습니다.
인터넷 접속을 즐기는 머신에는 보안상의 이유로 서버 역할을 하는 대부분의 호스트에는 개인 방화벽 소프트웨어가 설치되어 있는 반면, 클라이언트 역할을 하는 다른 머신에는 일반적으로 그렇지 않습니다. 거의 모든 개인 방화벽 소프트웨어는 기본적으로 다른 컴퓨터에서 이 컴퓨터에 대한 Ping을 허용하지 않습니다. 일반적인 접근 방식은 외부의 ICMP 요청 메시지를 필터링하는 것이지만 로컬 시스템에서 보낸 ICMP 요청 메시지와 외부의 ICMP 응답 메시지에는 아무런 제한도 두지 않습니다. 이런 방식으로 이 시스템에서 다른 시스템을 ping할 때 네트워크가 정상이면 문제가 없습니다. 하지만 다른 머신에서 이 머신을 ping하면 네트워크가 정상이더라도 "timeout no response" 오류가 발생합니다.
2. 잘못된 IP 주소 설정
일반적인 상황에서 호스트는 하나의 네트워크 카드, 하나의 IP 주소 또는 여러 개의 네트워크 카드와 여러 개의 IP 주소를 가져야 합니다(이러한 주소는 다른 IP 서브넷에 있음). 하지만 공공장소, 특히 PC방에서 사용하는 컴퓨터에는 혼합된 기술을 가진 사람들이 많고, 그 중 '탐험가'도 많지 않습니다. 한번은 두 대의 컴퓨터에서 이러한 단방향 ping 상황이 발생했습니다. 주의 깊게 조사한 결과, 컴퓨터 중 하나의 "전화 접속 네트워크 어댑터"(소프트 네트워크 카드와 동일)의 TCP/IP 설정에서 다음과 같은 현상이 발견되었습니다. a IP 주소는 네트워크 카드 IP 주소와 동일한 서브넷에 있습니다. 이러한 방식으로 IP 계층 프로토콜의 관점에서 이 호스트는 동일한 네트워크 세그먼트에 두 개의 서로 다른 인터페이스를 갖습니다. 이 호스트에서 다른 시스템을 ping할 때 다음과 같은 문제가 발생합니다.
(1) 동일한 네트워크에 두 개의 네트워크 인터페이스가 연결되어 있기 때문에 호스트는 데이터 패킷을 보낼 네트워크 인터페이스를 알 수 없습니다. 섹션;
(2) 호스트는 데이터 패킷의 소스 주소로 사용할 주소를 모릅니다. 따라서 이 호스트에서 다른 시스템을 ping할 때 IP 계층 프로토콜은 시간 초과 후 이를 처리할 수 없습니다. Ping은 "시간 초과 및 응답 없음"이라는 오류 메시지를 표시합니다. 그러나 다른 호스트에서 이 호스트를 ping할 때 요청 패킷은 특정 네트워크 카드에서 옵니다. ICMP는 단순히 대상과 소스 주소를 교환하고 일부 플래그를 변경하기만 하면 ICMP 응답 패킷이 원활하게 전송될 수 있으며 다른 호스트도 성공적으로 보낼 수 있습니다. 이 컴퓨터에 핑을 보냈습니다