네트워킹 작업이란 무엇인가요?
ARP는 이더넷의 브로드캐스트 특성을 활용하기 위해 TCP/IP 설계자가 설계한 주소 해석 프로토콜입니다. 주요 특징과 장점은 주소 대응이 동적이며 쿼리를 통해 IP 주소와 엔터티 주소 간의 대응을 얻는다는 것입니다. 작동 원리는 매우 간단합니다.
1. 먼저 각 호스트는 ARP 캐시 버퍼(ARP Cache)에 ARP 테이블을 생성하여 IP 주소와 물리적 주소를 기록합니다. 이 테이블의 각 데이터는 데이터의 신뢰성을 보장하기 위해 자체 생존 시간에 따라 결국 사라집니다.
2. 송신 호스트가 대상 호스트로 보낼 패킷이 있고 대상 호스트의 IP 주소를 얻으면 먼저 해당 IP 주소가 자신의 ARP 테이블에 있는지 확인합니다. 일치. 있는 경우 이 주소를 사용하여 프레임 패킷을 전송하고, 그렇지 않은 경우 ARP 요청 브로드캐스트 패킷을 네트워크에 보내 대상 호스트의 물리적 주소를 쿼리합니다. 이 패킷에는 보낸 사람의 IP 주소와 실제 주소 정보가 포함됩니다.
3. 이때 네트워크의 모든 호스트는 이 브로드캐스트 패킷을 수신하고 패킷의 IP 필드가 자신의 IP 주소와 일치하는지 확인합니다. 그렇지 않다면 무시하고, 그렇다면 먼저 보낸 사람의 물리적 주소와 IP 데이터를 자체 ARP 테이블에 업데이트합니다. 해당 IP가 이미 있으면 원래 IP를 새 데이터로 덮어씁니다. ARP 응답 패킷을 상대방에게 보내는 호스트에게 자신의 물리적 주소를 알립니다.
4. 보내는 쪽에서 ARP 응답을 받으면 자신의 ARP 테이블도 업데이트됩니다. 전송에 사용됩니다.
5. 발신자가 ARP 응답을 받지 못한 경우 쿼리는 실패로 선언됩니다.
ARP 쿼리 프로세스
위에서 언급한 ARP 테이블은 TCP/IP 프로토콜이 제거되거나 시스템이 코어에 로드된 후에만 생성됩니다. 종료하면 다음 번에 프로토콜이 로드되거나 전원이 켜질 때 테이블이 다시 설정되고 ARP 브로드캐스트가 네트워크로 전송되어 다른 컴퓨터에 현재 주소가 무엇인지 알려줍니다. 기계는 최신 주소를 유지할 수 있습니다.
하지만 ARP 캐시의 크기는 제한되어 있으며, 이 한도를 초과하는 경우 오랫동안 사용하지 않은 임시 데이터를 지워서 업데이트된 데이터를 저장할 공간을 확보해야 합니다. 따라서 머신이 ARP 요청 패킷을 수신할 때 쿼리 객체가 자신이 아닌 경우 보낸 사람의 주소 정보를 기반으로 ARP 테이블을 업데이트하지 않고 패킷을 완전히 무시합니다. 동시에, 캐시에 저장된 각 데이터 조각은 영구적으로 저장되지 않습니다. 각 데이터 조각이 업데이트되면 생존 카운트다운 값이 할당됩니다. 카운트다운 시간에 도달하면 데이터가 삭제됩니다. 단, 카운트다운 시간이 되기 전에 데이터를 사용하면 타이머 값이 다시 할당됩니다.
물론 ARP에는 ARP 테이블 데이터가 실제 주소 데이터와 일치하지 않는 경우(예: 현재 연결이 끝나기 전에 대상으로부터 주소 데이터 업데이트 메시지가 수신되는 경우) 상황을 처리하는 메커니즘도 있습니다. ; 또는 대상 호스트가 너무 바빠서 ARP 요청에 응답할 수 없습니다.