우리가 많이 사용하는 IP:Internet Protocol은 OSI 계층에서 L3 Network 계층에 해당하는 "인터넷 상에서 데이터를 목적지까지 전달하기 위한 규칙과 주소 체계"로 우리는 정보를 송신하고 수신하기 위해 IP 주소를 사용함
이러한 IP주소는 크게 고정 IP
와 동적 IP
로 나누어짐
Static IP는 사용자가 직접 IP, SubnetMask, Gateway, DNS 서버를 설정하는 방식으로 현재는 주로 서버, 네트워크 장비처럼 항상 동일한 IP가 필요한 경우에 사용하고 있음
[장점]
[단점]
네트워크 규모가 커질수록 수동 관리가 복잡해짐
실수로 중복된 IP를 할당할 경우 충돌이 발생함
이동 단말이나 임시 연결 장치에서는 비효율적임
DHCP 서버가 자동으로 IP 및 네트워크 정보를 할당하는 방식으로 클라이언트는 부팅 시 별도 설정 없이 자동으로 IP를 할당 받음
[장점]
대규모 네트워크에서도 효율적으로 관리 가능
IP 충돌 가능성 최소화
장치 추가 시 별도의 작업 불필요
특징⭐
주소는 임대(Lease) 개념으로 제공되며, 만료 시 반환되거나 갱신 가능
DHCP Reservation 기능을 통해 특정 장치에 항상 동일한 IP를 할당할 수 있음(MAC 기반)
일반 사용자 PC나 모바일 단말에서는 주로 동적 IP를 사용하고, 서버급 장비에서는 예약 (Reservation) 또는 Static IP를 사용함
네트워크의 초창기에는 소수의 장치만 연결되어 있었기 때문에 Static IP 방식이 주로 사용되었음 그러나 기업 네트워크와 인터넷의 확산으로 인해 단말의 수가 수백~수천 단위로 증가하게 되면서 문제가 발생하게 됨
이러한 문제를 해결하기 위해 RARP: Reverse Address Resolution Protocol
가 사용되었음
RARP를 활용한 IP 할당은 장치가 자신의 MAC 주소를 기반으로 RARP 서버에서 IP 주소를 할당받는 방식으로
이러한 한계를 가지고 있었음
결국 이러한 한계를 해결하기 위해 IP 자동 할당과 더불어 네트워크 설정 전체를 지원하는 시스템이 필요했고, 이를 위해 등장한 프로토콜이 바로 DHCP: Dynamic Host Configuration Protocol)
임
DHCP: Dynamic Host Configuration Protocol
은 네트워크에 연결된 클라이언트가 자동으로 IP 주소와 네트워크 정보를 할당받도록 지원하는 프로토콜
IP 주소 뿐만 아니라 SubnetMask, Gateway, DNS 서버와 같은 핵심 네트워크 설정을 클라이언트에게 자동으로 전달함
큰 특징으로는...
네트워크 관리 자동화 및 효율성 향상
IP 주소를 임대 개념으로 관리하여 자원 재활용 가능
멀티 VLAN 환경에서도 DHCP Relay 기능을 통해 확장 가능
불법 DHCP 서버 공격 등 보안 위협 존재 → DHCP Snooping 같은 보안 기능 필요
DHCP는 클라이언트-서버 구조로 동작하며, 임대(Lease) 기반 주소 관리 방식을 가짐
클라이언트가 네트워크에 처음 연결될 때 IP가 없는 상태에서 요청 시작
DHCP 서버는 주소 풀(Address Pool)에서 가용 IP를 찾아 클라이언트에게 임시 제공
클라이언트는 해당 주소를 일정 시간(Lease Time) 동안 사용
Lease Time이 만료되기 전에 클라이언트는 갱신 요청을 수행함
사용을 종료하거나 다른 네트워크로 이동하면 주소는 회수되어 다른 장치에 재할당 가능
DHCP는 4단계의 과정을 통해 주소를 할당함 (= 이를 DORA라고 칭함)
Discover, Request → 항상 브로드캐스트
Offer, Ack → 대부분 브로드캐스트지만, 환경에 따라 유니캐스트 가능
Src=0.0.0.0
사용MAC: Src=Client-MAC, Dst=ff:ff:ff:ff:ff:ff
IP: Src=0.0.0.0, Dst=255.255.255
UDP: SrcPort=68, DstPort=67
DHCP: Message Type = DHCP Discover
MAC: Src=Server-MAC, Dst=Client-MAC (or Broadcast)
IP: Src=10.0.0.100, Dst=255.255.255 (or Client-Mac Unicast)
UDP: SrcPort=67, DstPort=68
DHCP: Message Type = DHCP Offer
Your-IP-Address = 10.0.0.10
Lease-Time = 3600s
Subnet-Mask = 255.255.255.0
Router = 10.0.0.1
DNS = 8.8.8.8
Src=0.0.0.0
유지MAC: Src=Client-MAC, Dst=ff:ff:ff:ff:ff:ff
IP: Src=0.0.0.0, Dst=255.255.255
UDP: SrcPort=68, DstPort=67
DHCP: Message Type = DHCP Request
Requested-IP-Address = 10.0.0.10
Server-Identifier = 10.0.0.100
MAC: Src=Server-MAC, Dst=Client-MAC (or Broadcast)
IP: Src=10.0.0.100, Dst=255.255.255 (or Client-IP 10.0.0.10)
UDP: SrcPort=67, DstPort=68
DHCP: Message Type = DHCP ACK
Your-IP-Address = 10.0.0.10
Lease-Time = 3600s
Subnet-Mask = 255.255.255.0
Router = 10.0.0.1
DNS = 8.8.8.8
3-Tier 구조(Access, Distribution, Core) 내에서 DHCP는 각 계층에 따라 다음과 같이 동작함
Client 단말이 DHCP Discover 메시지 송신
필요 시 DHCP Relay 기능 설정 가능
Access Switch 역할
: 직접 DHCP 기능을 수행하지 않고, 클라이언트 요청을 DHCP 서버로 전달 (DHCP Relay 기능 필요)
VLAN 기반으로 네트워크 세그먼트를 분리하는 계층
DHCP Relay Agent(IP Helper Address) 설정을 통해 Client 요청을 DHCP 서버로 전달
옵션 82를 통해 Client 위치 정보를 함께 전달 가능
고속 라우팅 및 트래픽 전달 중심 계층
DHCP 서버는 보통 이 계층에 직접 배치하지 않음
단순히 Relay 트래픽을 빠르게 전달하는 역할을 수행
일반적으로 Distribution 또는 Core 인접 서버존에 배치됨
[기능]
IP, 서브넷, 게이트웨이, DNS 제공
주소 풀 관리 및 임대 시간 설정
특정 장치에 대한 IP 예약
멀티 VLAN 환경 지원