나와 내 친구가 LAN 케이블로 컴퓨터를 연결한다고 가정 해 보겠습니다.
친구의 IP 주소로 친구를 핑합니다.
어떻게 작동합니까?
우리는 같은 네트워크에 있기 때문에 IP 주소도 필요하지 않습니까?
IP 주소 지정은 네트워크 간 통신의 경우에만 관련되지 않습니까?
ping 명령은 그의 IP 주소로 무엇을합니까? 결국 그의 물리적 주소 (NIC 주소)를 어떻게 찾습니까? (여기에는 ARP가 없습니다. 네트워크 에지에 라우터가 포함되므로 여기에는 적용되지 않습니다).
어딘가에서 내가 틀렸습니까?
당신은 OSI 네트워크 모델 에 대해 묻고 있습니다. 비록 당신이 그것을 깨닫지 못하더라도, 그리고 OSI 모델이 TCP / IP와 관련이없는 경우에도 말입니다.
컴퓨터 네트워킹이 작동하는 방식은 계층 입니다. OSI 모델의 계층은 다음과 같습니다.
두 컴퓨터가 네트워크를 통해 통신하려면 동일한 네트워크 계층 프로토콜 을 사용해야 합니다. IPv4 또는 IPv6 일 필요는 없으며 IPX 또는 X.25 일 수 있습니다. 하지만 뭔가 있어야합니다 .
IPv4가 가장 일반적이기 때문에 우리는 단지 IPv4를 가정합니다.
두 컴퓨터 모두 IP 주소가 필요합니다. 오늘날에는 대부분 DHCP 서버에서 할당되거나 ZeroConf를 사용하여 동적으로 할당됩니다. 따라서 그들은 IP 주소 를 갖게 됩니다 .
먼저 세션을 시작하는 컴퓨터는 브로드 캐스트 계층 2 ARP 패킷을 보냅니다. ARP는 주소 확인 프로토콜입니다. ARP는 특정 계층 3 주소와 관련된 계층 2 주소를 검색하는 데 사용됩니다. 브로드 캐스트는 네트워크 스위치가 연결된 링크 (즉, L1 연결 사용)를 통해 모든 물리적 포트로 패킷을 보내도록 지시하는 특수 패킷입니다. 표시된 계층 3 주소를 가진 컴퓨터는 유니 캐스트 ARP 응답으로 응답합니다. ARP는 전적으로 L2 주소 지정을 통해 발생합니다 (ARP 결과는 나중에 조회 할 수 있도록 캐시되므로 ARP 요청을 계속 보낼 필요가 없습니다).
다음 으로 ICMP 에코 요청 패킷이 만들어집니다. 소스 L2 주소는 원래 컴퓨터의 Ether 주소가됩니다. L3 소스는 원래 컴퓨터의 IP 주소가됩니다. 대상 L2 및 L3 주소는 ARP에서 검색된 주소입니다. 그런 다음 패킷은 유선을 통해 스위치로 전송됩니다.
스위치는 대상 L2 주소를 검사 하고 지정된 Ether 주소가있는 물리적 포트를 식별하기 위해 CAM 테이블 에서 조회합니다 . 그런 다음 패킷은 올바른 물리적 포트에서 유선을 통해 전송됩니다.
경우 대상 컴퓨터를 수신하고, 먼저 L2 주소가 확인 패킷을 수신 된 상기 물리적 인터페이스의 L2 주소와 일치하는지 확인하도록 검사한다. 일치하면 L3 주소를 확인하여 물리적 인터페이스에 할당 된 레이어 3 주소와 일치하는지 확인합니다. 이 모든 것이 체크 아웃되면 패킷은 상위 계층 프로토콜 (이 경우 커널에서 처리하는 ICMP)에 의해 처리됩니다. 그렇지 않으면 패킷이 삭제됩니다.
ICMP 응답의 경우 응답 컴퓨터가 ARP 요청을 보낼 필요가 없다는 점을 제외하고는 거의 동일한 방식으로 작동합니다. L2 / L3 쌍이있는 패킷을 수신했기 때문에 대신 ARP 캐시에 직접 설치할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다