우분투를 통해 통신하는 프로그램을 살펴보던 중 이런 화면을 보게 되었다.
정보처리기사 자격증을 공부하던 중 한번 본 내용(ARP)이었지만 암기식으로 학습해서인지 생각이 나질 않아서 블로그 검색을 해야 내용을 이해하게 되었다.
ARP 프로토콜은 간단하게 말하자면 IP를 통해 MAC address를 알아내는 것이다.
구체적으로 ARP 프로토콜에 대해 말해보겠다.
위 화면 내용중 아래와 같은 내용이 있다.
Destination: Broadcast (ff:ff:ff:ff:ff:ff)
Address: Broadcasst (ff:ff:ff:ff:ff:ff)
이는 src 단말 장치에서 망에 연결된 모든 단말 장치에게 연락을 하는 것이다.
src 단말 장치에서 무슨 목적으로 브로드캐스트 메시지를 보내는가는 아래를 보면 알 수 있다.
Address Resolution Protocol (request/gratuitous ARP)
즉 IP 주소로 메시지를 보내기 위해 MAC 주소를 알아내기 위함이다.
그리고 자세히 보면 괄호에 gratuitous ARP 라는 구문이 있다.
gratuitous라는 의미는 쓸데없는 라는 의미가 있다.
위 이미지를 다시 살펴보면 sender IP와 target IP가 같음을 알 수 있다. 따라서 MAC 주소를 확인할 필요가 없는
쓸데없는 ARP 라는 것이다. 그럼에도 이는 의미가 있는데 3가지 용도가 있다.
1) IP 주소 충돌 감지 -> 자신의 IP주소를 타깃으로 하여 ARP 요청을 보냈는데 만약 다른 호스트에서 이에 대한 응답이 있다면 IP 충돌을 감지한다.
2) ARP Table 갱신 -> 자신의 IP를 가지고있는 단말 장치가 있다면 MAC 주소를 갱신한다.
3) VRRP/HSRP -> VRRP/HSRP가 enable된 라우터 중 Master에 해당하는 라우터에 해당하는 자신과 연결된 L2 switch의 Mac address table 정보를 갱신(해당 MAC 주소에 대한 Port 정보 갱신) 하기 위해 GARP를 사용한다.
참조
https://blockdmask.tistory.com/189
'네트워크' 카테고리의 다른 글
raw 소켓 (0) | 2020.10.04 |
---|---|
SFP(Small Form-factor Pluggable) Transceiver (0) | 2020.08.30 |
[c언어] 3바이트, 6바이트 데이터 타입 만들기 (0) | 2020.08.16 |
[c언어]8바이트를 위한 htonl (1) | 2020.08.16 |
UDP 방식으로 소켓 통신 (0) | 2020.08.13 |