DHCP는 Dynamic Host Configuration의 약자로 컴퓨터가 네트워크에 접속하면 DHCP 서버가 자동으로 (동적으로) IP 주소를 할당해주는 역할을 한다.
사용 중인 주소를 연장하거나 연결된 상태에서 주소를 재사용 할 수 있다,
서버와 클라이언트로 나뉘어 동작하는데, 클라이언트는 접속하려는 PC와 같다고 생각하면 된다.
DHCP 서버는 공식적인 IP주소를 보유하며, IP주소를 클라이언트에게 자동으로 할당해준다.
DHCP 클라이언트는 DHCP 서버에게 서비스 받는 호스트로, 부팅하면 DHCP 서버에게 IP주소를 요청 받고, lease time이라고 불리는 일정 기간 동안 IP주소를 부여받고 사용한다.
호스트가 DHCP를 통해 IP 주소를 얻는 과정은 discover, offer, request, ack으로 나누어진다.
모든 과정은 브로드캐스트로 이루어지며, 시스템 모두에게 메시지를 전달하며, 다른 DHCP 서버도 이 메시지를 받는다.
서버의 포트 번호를 67, 클라이언트의 포트 번호를 68이라고 할 때 예제를 보자.
DHCP discover : 클라이언트가 DHCP 서버의 존재를 확인하고 IP주소를 요청한다.
DHCP offer : 서버가 사용할 수 있는 IP 주소를 전송한다.
DHCP request : 클라이언트는 서버로부터 받은 IP주소를 할당한다.
DHCP ACK : 서버가 IP주소가 클라이언트에게 할당되었음을 알린다.
discover와 offer, request와 ACK에서 transaction ID는 같고, 다른 DHCP 서버들은 request를 보고 클라이언트가 IP주소를 할당받았음을 알린다.
이 과정에는 문제가 있는데, 바로 호스트에 소스 IP주소가 없고, 호스트가 DHCP서버의 주소를 모른다는 것이다.
DHCP example은 추후 업데이트 예정.
'네트워크 > Network Layer' 카테고리의 다른 글
[네트워크] Network Layer (6) - Router(Input/output port, Switching Fabric) (1) | 2022.12.10 |
---|---|
[네트워크] Network Layer (5) - IPv6 (Tunneling) (0) | 2022.11.09 |
[네트워크] Network Layer (4) - NAT : Network Address Translation (0) | 2022.11.06 |
[네트워크] Network Layer (2) - IP Addressing (Subnet, CIDR) (0) | 2022.11.03 |
[네트워크] Network Layer (1) - Intro (0) | 2022.11.02 |