개념 사전 · 프로토콜
GARP·ARP Probe·주소 충돌 탐지
Gratuitous ARP · GARP · Address Conflict Detection · IPv4 주소 충돌 검출
주소 충돌 탐지는 사용할 주소를 다른 장치가 이미 쓰는지 로 확인하는 절차다. 라는 표현은 주소 알림을 넓게 가리키기도 하므로 Probe와 의 필드·시점을 정확히 구분한다.
밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.
01무엇이고, 어떤 일을 하나
- 주소를 사용하기 전에 같은 링크에서 중복 사용 가능성을 발견한다.
- 주소를 확보하거나 게이트웨이 소유권이 바뀐 뒤 새 IP·MAC 대응을 이웃에게 알린다.
- 이미 주소를 사용하는 동안에도 충돌을 감지해 주소 방어 또는 사용 중단 절차를 수행한다.
02어떤 순서로 동작하나
- 후보 선택
나 수동 설정으로 주소 후보를 얻어도 즉시 정상 통신 주소로 쓰지 않는다. Probe의 송신자 IP를 0으로 두어 아직 소유하지 않은 주소가 이웃 캐시에 정상 대응처럼 남는 일을 피한다.
- 탐색과 관찰
RFC5227 기본 절차는 초기 임의 대기 뒤 Probe를 3회 보낸다. 응답만 기다리는 것이 아니라 다른 장치가 같은 주소를 송신자 주소로 주장하거나 같은 후보를 Probe하는지도 조사한다.
- 사용 알림
충돌이 없으면 정해진 대기 뒤 를 보낸다. 일반적인 Request와 달리 자신이 사용하는 주소를 SPA와 TPA에 함께 넣어 IP와 링크 주소의 대응을 알린다.
- 후속 충돌 처리
사용 중에도 다른 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상세 노트 · 실습 자료
헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.
공식 문서 · 표준
기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.