DHCP   Dynamic Host Configuration Protocol  

(2021-04-30)

DHCPv4


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 서버에 의해 정적인 주소 설정은 가능
     - BOOTPRARP의 두가지 약점을 보완하였으나, 정적인 프로토콜이라는 한계점을 갖음
        . 이미 준비된 고정된 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, DHCPREQUEST8. DHCP 임대, 갱신(연장 요청), 재연결, 리바인딩, 해제 관련

  ※ ☞ DHCP 임대 갱신 재연결 리바인딩 해제 참조
     - 각 경우 마다, 의미 및 제한 시간9. DHCP Scope 및 Option

  ㅇ 일련의 IP 주소 및 관련된 구성정보로 이루어진 하나의 집합을 Scope라고 함
     - 하나의 Scope는 하나 이상의 옵션들을 클라이언트에게 제공할 수 있음


10. DHCP 주소 충돌 방지DHCP 서버 
     - 할당 전 핑 테스트로 확인 후 IP 주소 할당

  ㅇ DHCP 클라이언트
     - 할당 받은 IP 주소를 사용전 GARP로 중복 여부 확인 후, 
     - 사용중이면 DHCPDECLINE(요청 수락 거부) 송출


11. [참고사항]

  ㅇ DHCP 패킷 구성           ☞  DHCP 메세지 포멧 참조
  ㅇ DHCP 서버DHCP Server 참조
  ㅇ DHCP ServerClient 가 서로 다른 망에 있을 때의 DHCP 구성 ☞ DHCP Relay Agent 참조
  ㅇ DHCP 표준                :  RFC 2131 (정의), 2132 등

DHCP
   1. DHCP 이란?   2. BOOTP   3. DHCP 동작 과정   4. DHCP 서버   5. DHCP Relay   6. 고정 IP / 유동 IP   7. DHCP 임대 갱신 재연결 리바인딩 해제   8. DHCPv6  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"