보안 / AI / 프로그래밍

[0x431] 하위 계층 분석 - 데이터 링크 계층(OSI 2 계층) / MAC 주소 / ARP 본문

Hacking :: The Art Of Exploitation/0x400 :: 네트워킹

[0x431] 하위 계층 분석 - 데이터 링크 계층(OSI 2 계층) / MAC 주소 / ARP

DevKTW 2021. 2. 3. 00:59

[0x431] 데이터 링크 계층

- 데이터 링크 계층에는 이터넷 (Ethernet) 프로토콜이 있다.

- 이더넷 프로토콜에서 사용하는 이더넷 주소MAC (Media Access Control) 주소, 하드웨어 주소 라고도 부른다.

- 모든 이더넷 장치는 6 바이트의 전세계적으로 고유한 주소를 할당 받는다. ( xx : xx : xx : xx : xx : xx 형태)

- 하나의 네트워크에 속하는 두 컴퓨터는 MAC 주소를 알기 전까지 서로 통신 할 수 없다.

- 그러므로 네트워크에서 MAC 주소를 알아내기 위해서 ARP 를 사용한다.

 

의문점 : 하나의 네트워크에 속하는 두 컴퓨터는 왜  MAC 주소를 알 기 전까지 서로 통신 할 수 없을까?
해결 : ...(-ing)

 

 

[0x431] 데이터 링크 계층 - ARP ( Address Resolution Protocol / 주소 결정 프로토콜 )

ARP 프로토콜 : 네트워크 상에서 IP 주소를 물리적 네트워크 주소로 대응 (bind) 시키기 위해 사용되는 프로토콜이다.
여기서 물리적 네트워크 주소는 이더넷 주소 ( MAC 주소 ) 또는 토큰링의 48 비트 네트워크 카드 주소를 뜻한다.

 

ARP 요청 메세지 / ARP 응답 메세지 를 통한 ARP 작동 원리이다.

:: [ ARP 작동 원리 ] ::

먼저 IP 주소가 10.10.10.20 인 시스템을 A / IP 주소가 10.10.10.30 인 시스템을 B 라고 부르겠다.

A는 B와 TCP 연결을 맺고 싶다고 가정하자.

 

1) A는 먼저 ARP 캐시를 검사해 10.10.10.30 ( B의 IP 주소 ) 에 해당하는 항목이 있는지 검사한다.

 

2) A는 ARP 캐시에서 해당 항목을 찾지 못했다면 BroadCast 주소로 ARP 요청 메세지를 전송한다.

   이 메세지의 의미는 " IP 주소가 10.10.10.30 인 시스템은 MAC 주소를 00:00:00:aa:aa:aa 로 보내달라"는 의미이다.

 

3) BroadCast 주소로 전송되므로 모든 시스템이 ARP 요청 메세지를 받지만, ARP 요청 메세지에 해당하는 시스템'만' ARP 응답 메세지를 보낸다. 이 경우 B 가 A 에게 ARP 요청 메세지를 보내게 된다.

 

4) ARP 요청 메세지를 받는 A 는 ARP 캐시에 < IP 주소 , MAC 주소 > 쌍을 저장하고, 이 저장된 값을 통해 통신한다.

 

의문점 : 사진도 그렇고, 왜 하나의 네트워크에서만 ARP 를 사용하는가? 외부에서 ARP 를 요청하고 받을수 없나?
해결 : ARP 요청, 응답 패킷 분석 : 네이버 블로그 (naver.com)
의문점 : 실험해보자. 정말 그러한가?
해결 : ...(-ing)
Comments