1. DHCP Message Format
- Client→Server로 DHCP 메시지 전송 시, S-Port는 68, D-Port는 67로 구성
- Server→Client로 DHCP 메시지 전송 시, S-Port는 67, D-Port는 68로 구성
(1) Operation Code
- 8 bit 중 2 bit만 사용
- 1 : BOOT Request(Client→Server 메시지 전송)
- 2 : BOOT Reply(Server→Client 메시지 전송)
(2) Hardware Type
- 1 : Ethernet
- 15 : Frame Relay
- 17 : HDLC
(3) Hardware Length
- Ethernet MAC Address를 사용하므로 6으로 고정
(4) Hop Count
- 클라이언트와 서버가 동일 네트워크에 존재하면 Hop Count는 0으로 구성
- 클라이언→서버로 메시지 전송 시, Relay Agent를 지날 때마다 Hop Count는 1씩 증가
(5) Transaction ID
- 클라이언트가 결정하여 세팅하는 필드이며 서버는 클라이언트로부터 수신한 Transaction ID를 복사하여 전송
- 클라이언트가 네트워크 정보를 요청하고 해당 정보들이 구성될 때까지 동일 Communication 인지 체크하기 위한 ID
- Transaction ID는 영구적으로 일치하는 것이 아니라 Timeout이 존재하여 DHCP 메시지 전송 후에 일정 기간 동안 Next 메시지를 수신하지 못하면 해당 Transaction ID를 삭제
- Transaction ID의 Timeout은 OS마다 상이
(6) Seconds
- Transaction ID를 생성하고 경과된 시간을 의미
- 처음 메시지 전송 시, "0"으로 구성되며 클라이언트가 3초 후 재전송 시, 해당 필드는 "3"으로 구성
- DHCP 클라이언트가 Discover 메시지를 전송할 때만 고려하는 필드
- Discover 메시지 이외의 모든 메시지는 해당 필드를 "0"으로 구성
(7) Flags
- 16 bit 중 Broadcast Flag인 1 bit만 사용
- 0 : Offer, Ack 메시지를 Unicat로 전송
- 1 : Offer, Ack 메시지를 Broadcast로 전송
(8) Client IP Address
- 클라이언트가 서버로부터 이미 할당받은 네트워크 정보를 가지고 있는 상태에서 서버에게 DHCP 메시지를 전송할 때 사용
- 서버는 클라이언트에게 수신한 "Client IP Address" 값을 복사하여 전송
- 클라이언트가 "Client IP Address" 값을 "A"로 전송하면 "나는 A라는 IP Address를 사용하고 있는 클라이언트"라는 의미
(9) Your IP Address
- 서버가 클라이언트에게 IP Address를 할당할 때 사용하는 필드
- "A"라는 값으로 전송할 경우, 수신하는 장비에게 "내가 너의 IP Address를 A로 할당해 줄게"라는 의미
- 클라이언트가 IP Address를 할당할 수 없으므로 클라이언트가 전송할 때는 항상 "0"으로 구성
(10) Next Server IP Address
- "A"라는 값으로 전송할 경우, "이제 A라는 서버와 통신하면 돼"라는 의미
- BOOTP 서버를 사용할 때, 클라이언트는 BOOTP 서버에서 IP Address를 할당받고 TFTP 서버에서 OS 정보를 수신해야 하는데 "Next Server IP Address"에 TFTP 서버 IP Address를 기재하여 클라이언트가 TFTP 서버와 통신 가능
- 옛날에 BOOTP 서버를 사용할 때, TFTP 서버 IP Address를 기재했지만 요즘 클라이언트들은 OS 정보를 보유하고 있으므로 "0"으로 구성
(11) Gateway IP Address
- Relay Agent의 IP Address로 구성
- DHCP 메시지가 Relay Agent를 지나지 않으면 "0"으로 구성
(12) Client Hardware Address
- 다른 L2 주소도 포함할 수 있도록 16 byte로 구성
- Ethernet일 경우 6 byte만 사용하고 나머지는 0으로 Padding
(13) Server Name
- Optional 필드이며 Null로 구성되어도 문제없이 동작 가능
- 전송하는 장비의 Hostname을 기재
- 요즘에는 일반적으로 Null로 구성
(14) Boot Filename
- "Next Server IP Address" 필드로 클라이언트에게 TFTP 서버 IP Address를 알려주고 "Boot Filename" 필드로 클라이언트에게 OS의 Path 및 Filename을 알려주어 클라이언트는 TFTP 서버에게 OS를 다운로드하여 부팅 가능
(15) Magic Cookie
- DHCP 메시지와 BOOTP 메시지를 구분하기 위해 사용
- DHCP 메시지와 BOOTP 메시지의 Format 방식이 동일하므로 해당 값이 없다면 호스트는 DHCP 메시지와 BOOTP 메시지 구분 불가
- 요즘 DHCP만 사용하므로 해당 필드는 일반적으로 "DHCP"로 구성
(16) Option
Option | Description |
Option 1 | ∘ Subnet Mask ∘ 클라이언트가 사용할 Subnet Mask 정보 |
Option 3 | ∘ Router ∘ 클라이언트가 사용할 게이트웨이 IP Address 정보 |
Option 6 | ∘ Domain Name Server IP Address 정보 |
Option 12 | ∘ Host Name |
Option 15 | ∘ Domain Name |
Option 44 | ∘ Wins Server IP Address로 구성 |
Option 50 | ∘ Requested IP Address ∘ 서버로부터 할당받은 IP Address로 구성 ∘ 해당 IP Address를 사용하며 이에 대한 네트워크 정보를 할당해 달라는 의미로 전송 |
Option 51 | ∘ IP Address Lease Time ∘ 서버가 할당한 네트워크 정보를 클라이언트가 사용할 수 있는 시간 ∘ Juniper는 기본적으로 86400(1 day)로 구성 |
Option 53 | ∘ DHCP Message Type ∘ 1 : Discover ∘ 2 : Offer ∘ 3 : Request ∘ 4 : Decline ∘ 5 : ACK ∘ 6 : NAC ∘ 7 : Release ∘ 8 : Inform |
Option 54 | ∘ DHCP Server Identifier ∘ 해당 메시지를 전송한 DHCP Server IP로 구성 ∘ 클라이언트는 해당 Option으로 서버를 구분 ∘ IP Address Renewal 또는 IP Address Release 과정에서 해당 서버에게 Unicast로 전송 |
Option 55 | ∘ Parameter Request List ∘ 클라이언트가 서버에게 요청하는 정보들로 구성 ∘ Subnet, Gateway, Lease Time, Domain Server, TFTP Server 등 여러 정보 요청 가능 |
Option 58 | ∘ Renewal Time Value |
Option 66 | ∘ TFTP Server Name ∘ Boot Server IP Address로 구성 |
Option 67 | ∘ Bootfile Name |
Option 150 | ∘ TFTP Server IP Address로 구성 |
Option 255 | ∘ 해당 옵션이 마지막 옵션이라는 의미 |
- TLV 형태이며 1 byte의 Type, 1 byte의 Length로 구성
'Network > DHCP' 카테고리의 다른 글
DHCP Smart-Relay Configuration(Cisco IOL) (0) | 2025.06.04 |
---|---|
DHCP Relay Agent Configuration(Cisco IOL) (0) | 2025.06.02 |
DHCP Pool Static Client Configuration(Cisco IOL) (0) | 2025.05.31 |
DHCP Basic Configuration(Cisco IOL) (0) | 2025.05.29 |
DHCP Proxy Agent 동작 과정 (0) | 2025.05.27 |
DHCP Relay Agent 동작 과정 (0) | 2025.05.25 |
DHCP 동작 과정 (0) | 2025.05.23 |
Introduction to DHCP (1) | 2025.05.19 |