본문 바로가기

ComputerScience/Network

컴퓨터 통신 - 22. 주소 번역 (Address Translation)

728x90

1. 주소 번역

- ip주소로부터 network 실제 주소인 mac주소를 알아내는 방법을 알아보자.

- 이를 수행하는 것이 ARP 프로토콜이다 (adress resolution protocol)

- 인터넷은 논리적인 가상의 네트워크 이다. 실제 밑에 깔린 네트워크 위에서 정의된 표준이기 때문에 실제 데이터 전송에는 물리적 주소가 필요하다.

- ip 주소 -> ithernet주소

- 이 변환이 필요한 경우는 목적지 호스트의 mac주소를 알아내거나 중간에 거칠 라우터의 mac주소를 알아내는 두가지 이다.

- IPv4에서는 table기반으로 이를 구현한다. 

- IPv6에서는 아예 ip주소 호스트 부분에 물리적 주소를 인코딩하여 넣어둔다. (mac주소는 48비트인데 ip가 32비트이기 때문에 IPv4에서는 이 방법을 사용한다. IPv6에서 가능한 이유는 뒤에서 알아보자.)

- 위의 테이블을 만들고 관리하는 방법을 알아보자.

 

- 141.23.56.23의 mac주소가 테이블에 있으면 바로 꺼내쓰면 되지만 없다면 브로드캐스트하여 해당 노드에게 mac주소를 응답으로 반환하도록 한다.

- 이렇게 새롭게 알게된 내용을 table에 저장한다.

- 상태정보를 soft하게 저장하고 있기 때문에 타이머에 따라 시간이 지나면 삭제되도록 관리한다.

- 이더넷을 통해 브로드캐스트하고 응답을 받아야 하기 때문에 1계층은 아니다 그리고 이 명령을 내리는게 ip계층이기 때문에 ARP는 그 사이에 존재한다.

2. 호스트 구성(Configuration) : DHCP

- dynamic host configuration protocol

- ip 주소가 네트워크 구조에 따라 network주소가 동일해야 하며 충돌이 일어나지 않도록 unique해야 한다.

- 이 작업을 수작업으로 하지 않고 DHCP 프로토콜이 알아서 수행해준다.

- 자신의 ip를 할당하는 일 뿐만 아니라 호스트는 외부 네트워크로 나가는데 거쳐야 하는 라우터의 주소를 알고 있다고 했다. 이를 DHCP가 가능하게 한다.

- 또한 DNS로 naver.com에서 아이피를 변환해주는 name server와도 DHCP가 연결을 해준다.

- 새로운 노드가 추가되면 브로드캐스트를 보내고 응답(DHCP서버가 클라이언트의 ip주소, 라우터 주소, 네임서버 주소)을 해준다. 

- DHCP서버가 할당해줄 수 있는 ip 주소 pool을 가지고 있다.

- 효율적인 pool 배분을 위해 뒷단에 서버를 두고 DHCP relay를 여러개 붙여서 pool을 공유한다.

728x90
반응형