개념 사전 · 프로토콜

GARP·ARP Probe·주소 충돌 탐지

Gratuitous ARP · GARP · Address Conflict Detection · IPv4 주소 충돌 검출

주소 충돌 탐지는 사용할 주소를 다른 장치가 이미 쓰는지 로 확인하는 절차다. 라는 표현은 주소 알림을 넓게 가리키기도 하므로 Probe와 의 필드·시점을 정확히 구분한다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 주소를 사용하기 전에 같은 링크에서 중복 사용 가능성을 발견한다.
  • 주소를 확보하거나 게이트웨이 소유권이 바뀐 뒤 새 IP·MAC 대응을 이웃에게 알린다.
  • 이미 주소를 사용하는 동안에도 충돌을 감지해 주소 방어 또는 사용 중단 절차를 수행한다.

02어떤 순서로 동작하나

  1. 후보 선택

    나 수동 설정으로 주소 후보를 얻어도 즉시 정상 통신 주소로 쓰지 않는다. Probe의 송신자 IP를 0으로 두어 아직 소유하지 않은 주소가 이웃 캐시에 정상 대응처럼 남는 일을 피한다.

  2. 탐색과 관찰

    RFC5227 기본 절차는 초기 임의 대기 뒤 Probe를 3회 보낸다. 응답만 기다리는 것이 아니라 다른 장치가 같은 주소를 송신자 주소로 주장하거나 같은 후보를 Probe하는지도 조사한다.

  3. 사용 알림

    충돌이 없으면 정해진 대기 뒤 를 보낸다. 일반적인 Request와 달리 자신이 사용하는 주소를 SPA와 TPA에 함께 넣어 IP와 링크 주소의 대응을 알린다.

  4. 후속 충돌 처리

    사용 중에도 다른 MAC의 주소 주장을 감시한다. 반복 충돌을 무한히 방어하지 않으며 필요한 경우 주소 사용을 중단하고 Decline 등 주소 할당 기제에 충돌을 전달한다.

03먼저 알아둘 용어와 구성요소

SPA가 0이고 TPA가 후보 주소인 브로드캐스트 Request다.
SPA와 TPA 모두 알릴 자신의 주소인 Request 형식이다.
자기 주소를 다른 MAC이 주장하거나 탐색 중 같은 후보를 동시에 탐색하는 등 충돌 조건이다.
사용 중인 주소 충돌에 대해 제한된 규칙으로 알림을 보내 자신의 주소 사용을 방어하는 동작이다.

04예제로 따라가기

  • 192.0.2.10 후보를 시험하는 Probe는 SPA=0.0.0.0, TPA=192.0.2.10이다. 이때 목적지는 브로드캐스트지만 Sender MAC에는 자신의 실제 링크 주소가 들어간다.
  • 주소를 쓰기 시작한 뒤 알림은 SPA=TPA=192.0.2.10으로 달라진다. 같은 Request opcode라는 이유만으로 두 패킷이 동일한 질문을 한다고 해석하면 안 된다.
  • 전환 후 가상 MAC을 출발지로 한 프레임을 스위치가 받으면 그 MAC의 새 포트를 학습한다. 가 스위치의 CAM 테이블을 직접 수정하는 관리 명령인 것은 아니다.

05혼동하기 쉬운 점과 확인 기준

  • 를 받으면 모든 운영체제가 무조건 새로운 캐시 항목을 만든다는 보장은 없다. 기존 항목·정적 설정·수신 보안 정책에 따라 반영 결과가 달라진다.
  • Probe에 응답이 없다는 사실은 절대적인 주소 유일성 증명이 아니다. 링크 단절·수집 손실·동시 설정 등으로 충돌을 늦게 발견할 수 있어 사용 중 관찰도 필요하다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.