본문 바로가기
네트워크/기초 학습

DHCPv4 실습

by CBROJIN 2025. 8. 12.

1. 이론 학습

DHCPv4 서버와 클라이언트

DHCPv4(Dynamic Host Configuration Protocol v4)는 IPv4 주소와 기타 네트워크 설정 정보를 동적으로 할당한다. 데스크톱 클라이언트가 네트워크 노드의 대부분을 차지하기 때문에, DHCPv4는 네트워크 관리자에게 매우 유용하고 시간을 절약해 주는 도구다.

전용 DHCPv4 서버는 확장성이 좋고 관리가 비교적 쉽다. 그러나 소규모 환경에서는 Cisco 라우터를 DHCPv4 서버로 구성하여 전용 서버 없이도 서비스를 제공할 수 있다. Cisco IOS는 선택적으로 전체 기능의 DHCPv4 서버를 지원한다.

DHCPv4 서버는 주소 풀에서 IPv4 주소를 클라이언트에게 임대하며, 임대 기간은 서버에서 설정한 시간 또는 클라이언트가 더 이상 필요하지 않을 때까지다. 임대 기간은 보통 24시간에서 일주일 이상이며, 만료 시 클라이언트는 새로운 주소를 요청해야 한다. 일반적으로 동일한 주소가 재할당된다.

DHCPv4 동작

DHCPv4는 클라이언트/서버 모드로 동작한다. 클라이언트가 DHCPv4 서버와 통신하면 서버는 IPv4 주소를 할당하고, 클라이언트는 임대 기간 동안 이 주소를 사용한다. 임대 연장을 위해 클라이언트는 주기적으로 서버에 접속한다. 이 방식은 이동하거나 전원을 끈 클라이언트가 불필요하게 주소를 점유하는 것을 방지한다.

 

임대 획득 과정

클라이언트가 부팅하거나 네트워크에 접속하려 할 때 4단계 과정을 거친다.

1. DHCP Discover (DHCPDISCOVER)

  • 클라이언트가 DHCPDISCOVER 브로드캐스트 메시지를 보내 DHCPv4 서버를 탐색한다.
  • 유효한 IPv4 정보가 없으므로 L2/L3 브로드캐스트를 사용한다.

2. DHCP Offer (DHCPOFFER)

  • 서버는 사용 가능한 IPv4 주소를 예약하고, 요청 클라이언트의 MAC 주소와 임대 IP로 ARP 엔트리를 생성한다.
  • DHCPOFFER 메시지를 클라이언트에 전송한다.

3. DHCP Request (DHCPREQUEST)

  • 클라이언트는 DHCPOFFER를 받은 후 DHCPREQUEST를 보내 선택한 서버의 제안을 수락하고 다른 서버의 제안은 거부한다.
  • 이 메시지는 브로드캐스트로 전송되어 모든 DHCP 서버에 알린다.

4. DHCP Acknowledgment (DHCPACK)

  • 서버는 DHCPREQUEST를 받은 후, 주소가 이미 사용 중인지 ICMP ping으로 확인할 수 있다.
  • ARP 엔트리를 생성한 후 DHCPACK 메시지를 전송한다.
  • 클라이언트는 ARP 조회로 주소 유효성을 확인하고 사용을 시작한다.

임대 갱신 과정

임대 만료 전에 클라이언트는 2단계로 갱신 절차를 진행한다.

 

1. DHCP Request (DHCPREQUEST)

  • 클라이언트는 원래 주소를 제공한 DHCP 서버에 DHCPREQUEST를 보낸다.
  • 응답(DHCPACK)이 없으면 브로드캐스트로 다른 DHCP 서버에 요청한다.

2. DHCP Acknowledgment (DHCPACK)

  • 서버는 임대 정보를 확인하고 DHCPACK을 반환한다.

Cisco IOS DHCPv4 서버

별도의 DHCPv4 서버가 없을 경우, Cisco IOS 라우터를 DHCPv4 서버로 구성할 수 있다. Cisco IOS DHCPv4 서버는 라우터 내에서 정의한 주소 풀에서 클라이언트에게 IPv4 주소를 할당 및 관리한다.

 

DHCPv4 서버 구성 단계

1. IPv4 주소 제외(Exclude)

  • 특정 주소(라우터, 서버, 프린터 등)는 DHCP 할당에서 제외.
  • 명령어: ip dhcp excluded-address low-address [high-address]

2. DHCPv4 풀 이름 정의

  • 명령어: ip dhcp pool pool-name
  • DHCPv4 구성 모드로 진입.

3. DHCPv4 풀 구성

  • 주소 풀 정의: network network-number [mask | /prefix-length]
  • 기본 게이트웨이: default-router address [address2 ... address8]
  • DNS 서버: dns-server address [address2 ... address8]
  • 도메인 이름: domain-name domain
  • 임대 기간: lease {days [hours [minutes]] | infinite}
 

2. 이론 실습

192.168.10.0/24 네트워크에 DHCPv4 서버 구성:

DHCP-SERVER(config)# ip dhcp excluded-address 192.168.10.1 192.168.10.10
DHCP-SERVER(config)# ip dhcp excluded-address 192.168.10.254
DHCP-SERVER(config)# ip dhcp pool T10
DHCP-SERVER(dhcp-config)# network 192.168.10.0 255.255.255.0
DHCP-SERVER(dhcp-config)# default-router 192.168.10.254
DHCP-SERVER(dhcp-config)# dns-server 192.168.10.5
DHCP-SERVER(dhcp-config)# domain-name example.com
DHCP-SERVER(dhcp-config)# end

DHCP-SERVER(config)# ip dhcp excluded-address 192.168.11.1 192.168.10.10
DHCP-SERVER(config)# ip dhcp excluded-address 192.168.11.254
DHCP-SERVER(config)# ip dhcp pool T11
DHCP-SERVER(dhcp-config)# network 192.168.11.0 255.255.255.0
DHCP-SERVER(dhcp-config)# default-router 192.168.11.254
DHCP-SERVER(dhcp-config)# dns-server 192.168.11.5
DHCP-SERVER(dhcp-config)# domain-name example.com
 

DHCPv4 검증 명령어

show running-config | section dhcp DHCPv4 구성 정보 확인
show ip dhcp binding DHCPv4 서비스가 제공한 IPv4 주소와 MAC 주소 바인딩 목록을 표시
show ip dhcp server statistics 송수신된 DHCPv4 메시지의 개수 정보를 표시

 

DHCPv4 동작 검증

  • 구성 확인: show running-config | section dhcp
  • 바인딩 확인: show ip dhcp binding
  • 통계 확인: show ip dhcp server statistics
  • 클라이언트 확인: PC에서 ipconfig /all로 IP, 서브넷, 게이트웨이, DNS 주소 확인.

 

DHCPv4 서버 비활성화

  • 비활성화: no service dhcp
  • 활성화: service dhcp
  • 주의: 바인딩 제거 또는 서비스 재시작 시, 일시적으로 중복 IP 발생 가능.

DHCPv4 릴레이

  • 클라이언트와 DHCP 서버가 다른 네트워크에 있을 경우, 브로드캐스트 요청이 라우터를 통과하지 않아 주소 할당 불가.
  • 해결책: ip helper-address <DHCP서버주소>로 라우터 인터페이스에 릴레이 설정.
R1(config)# interface g0/1
R1(config-if)# ip helper-address 192.168.10.9
  • 검증: show ip interface g0/1

 

'네트워크 > 기초 학습' 카테고리의 다른 글

ACL 실습  (3) 2025.08.11
NAT 실습  (0) 2025.08.10
Cisco 장비 SSH 원격 접속 실습  (2) 2025.08.10
Day 10: 네트워크 장비들  (4) 2025.08.10
Day 9: 네트워크 프로토콜들  (3) 2025.08.08