1. DHCP
ㅇ 네트워크상에서 동적으로 IP 주소 및 기타 구성정보 등을 부여/관리하는 프로토콜
2. DHCP 주요 구성정보(매개변수) 및 동적 할당
ㅇ 구성 정보
- 기본 정보 : ① IP주소, ② 서브넷 마스크, ③ 디폴트 라우터
- 추가 정보 : ④ 네임서버(DNS)의 IP주소
- 기타 정보 : 홈 에이전트 주소, 디폴트 도메인 네임 등
ㅇ 동적 할당
- 제한된 수량의 IP 주소를 `재사용`, `한시적 사용`, `자동 재활용` 등 가능
ㅇ 디스크 없는 컴퓨터에게, IP 주소 등 기타 구성정보를 제공 가능 (과거 BOOTP 주요 역할)
- 지정된 서버로부터 IP 주소 및 부트스트랩 관련 구성정보를 얻을 수 있도록,
- 응답메세지 내에 파일 경로를 송부하여,
- 이를 이용하여 TFTP를 통해 나머지 구성정보 얻기가 가능
3. DHCP 특징
ㅇ 클라이언트/서버 형태의 동작
- 동적인 구성정보 요청/제공하는 프로토콜
. 한편, DHCP 클라이언트(요청) 및 서버(응답)가 동일 서브넷에 함께 있을 수도,
또는 서로다른 망에 분리될 수도 있음
.. 이 경우, DHCP 중계 에이전트가 작동 함
ㅇ 프로토콜 및 포트
- 수송(Transport Layer)용 프로토콜 : UDP
- 사용 포트 번호
. (DHCPv4) 67 (목적지 포트), 68 (출발지 포트)
. (DHCPv6) 546 (서버 송출,클라이언트 청취), 547 (서버 청취,클라이언트 송출)
ㅇ DHCP 탐색(DHCPDISCOVER)/요청(DHCPREQUEST) 때 쓰이는 IP 헤더 내 IP 주소
- IP 헤더 내 발신지 주소 : 아직 미확정이므로 편의상 0.0.0.0
- IP 헤더 내 목적지 주소
. (DHCPv4) 255.255.255.255 (브로드캐스트 주소)
. (DHCPv6) All_DHCP_Relay_Agents_and_Servers (FF02::1:2),
All_DHCP_Servers (FF05::1:3)
* 요청 받는 서버에서는 요청 클라이언트의 MAC 주소를 기억, 이를 IP 주소와의 매핑시 이용
4. DHCP 이전 프로토콜과의 비교
ㅇ RARP (지금은 사용 안함)
- 단점 : ① IP 주소 만을 제공, ② 매 서브넷 마다 브로드캐스트 방식 필요
ㅇ BOOTP : 주로, 디스크가 없는 호스트의 부팅을 위해 개발됨
- `IP 주소` 및 `부트스트랩 파일이 있는 호스트 내 경로` 만 제공
ㅇ BOOTP와 역호환성
- 동적인 DHCP는, 부팅 시 자동으로 구성정보를 구성하는 BOOTP와는 상호 호환되며,
아울러 보다 더 확장되고 진보된 형태를 띄고 있음
. BOOTP와 패킷 구조가 거의 동일함
. BOOTP로 동작하는 호스트도 DHCP 서버에 의해 정적인 주소 설정은 가능
- BOOTP는 RARP의 두가지 약점을 보완하였으나, 정적인 프로토콜이라는 한계점을 갖음
. 이미 준비된 고정된 IP 주소와의 바인딩 만 가능 (중간에 변경 불가능)
5. DHCP의 IP 주소 할당 방법 종류
ㅇ 수동 할당 (Manual Allocation)
- DHCP 서버의 관리자가 수동으로 개별 장비별(중요 호스트,라우터 등)로 고정 설정
ㅇ 자동 할당 (Automatic Allocation)
- IP 주소의 영구적 독점 사용
ㅇ 동적 할당 (Dynamic Allocation) : 대부분 이 방법을 사용
- 제한된 수량의 IP 주소 재사용, 한시적 사용(leased period), 자동 재활용
6. `DHCP 및 NAT 차이점` 및 `DHCP 및 PPP 차이점`
ㅇ 사설 IP 주소공간을 별도로 정하는(매핑하는) NAT 방식과는 달리,
- DHCP는 확보한 공인 IP 주소공간 범위 내에서 사용자가 인터넷에 연결하려고 할 때,
- 실시간으로 기확보된 공인 IP를 하나씩 할당하는 방식을 취함
- 물론 IP 주소는 사용 후 반납하게 됨
ㅇ 망에 접속하는 순간 NAS 등에 의해 IP 주소 등의 매개변수를 할당받는 PPP 방식과는 달리,
- DHCP는 PC 부팅 또는 망접속 시 DHCP 서버로부터 IP 주소 등을 동적으로 할당 받음
- [참고] ☞ 유동 IP 참조
7. DHCP 임대 요청 해제에 관여하는 주요 패킷 例
※ DHCP 메세지들의 종류 ☞ DHCP 메세지 타입 참조
- DHCPDISCOVER, DHCPOFFER, DHCPREQUEST 등
8. DHCP 임대, 갱신(연장 요청), 재연결, 리바인딩, 해제 관련
※ ☞ DHCP 임대 갱신 재연결 리바인딩 해제 참조
- 각 경우 마다, 의미 및 제한 시간 등
9. DHCP Scope 및 Option
ㅇ 일련의 IP 주소 및 관련된 구성정보로 이루어진 하나의 집합을 Scope라고 함
- 하나의 Scope는 하나 이상의 옵션들을 클라이언트에게 제공할 수 있음
10. DHCP 주소 충돌 방지
ㅇ DHCP 서버
- 할당 전 핑 테스트로 확인 후 IP 주소 할당
ㅇ DHCP 클라이언트
- 할당 받은 IP 주소를 사용전 GARP로 중복 여부 확인 후,
- 사용중이면 DHCPDECLINE(요청 수락 거부) 송출
11. [참고사항]
ㅇ DHCP 패킷 구성 ☞ DHCP 메세지 포멧 참조
ㅇ DHCP 서버 ☞ DHCP Server 참조
ㅇ DHCP Server 및 Client 가 서로 다른 망에 있을 때의 DHCP 구성 ☞ DHCP Relay Agent 참조
ㅇ DHCP 표준 : RFC 2131 (정의), 2132 등