일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- AWS
- log
- ip
- airflow
- Kafka
- Python
- EC2
- JavaScript
- kubernetes
- Spring
- Operating System
- MAC address
- kubeadm
- PostgreSQL
- aws s3
- kubectl
- Network
- docker
- zookeeper
- CSV
- Packet
- java
- Vision
- OS
- jvm
- Trino
- CVAT
- tcp
- helm
- grafana
- Today
- Total
JUST WRITE
DHCP 본문
DHCP
Dynamic Host Configuration Protocol
Host가 Network와 통신하려면 IP Address, Subnet Mask, Gateway 같은 Network 정보가 있어야 한다.
Network 정보를 Host에 적용하려면 사용자가 직접 설정을 하는데 정적 할당이라 한다.
직접 설정하지 않고 자동으로 설정하는 것을 동적 할당이라 한다.
Network 정보를 동적으로 할당하는 데 사용하는 Protocol이 DHCP이다.
DHCP를 사용하면 아래 Network 정보를 자동으로 할당 받는다.
- IP Address
- Subnet Mask
- Gateway
- DNS 정보
동적 할당을 하면 직절 설정하면서 발생하는 오류나 중복 IP 할당 문제를 해결할 수 있다.
구성
DHCP는 BOOTP(Bootstrap Protocol)을 기반으로 한다.
BOOTP에서 기능이 추가된 확장 Protocol이 DHCP이다.
DHCP와 BOOTP 사이에는 호환성이 있어 Service Port가 같다.
DHCP는 Server, Client로 동작하며 Client Port 68, Server Port 67이다.
DHCP 관련 사항은 RFC 2131, RFC 3046, RFC 3942에 기술되어 있다.
동작
Host가 DHCP Server로 부터 Network 정보를 할당 받는 과정은 아래와 같다.
IP를 할당받은 과정이라 TCP가 아닌 UDP로 통신한다.
- DHCP Discover
- Client에서 DHCP Server를 찾기 위해 DHCP Discover Message를 Broadcast
- Client IP가 아직 없으므로 출발지 IP를 Zero IP(0.0.0.0)로 설정
- DHCP Offer
- DHCP Discover Message를 수신한 DHCP Server는 DHCP Message를 Client에 전송
- DHCP Message -> 할당할 IP Addresss, Subnet Mask, Gateway, DNS 정보와 Lease Time
- DHCP IP Pool에서 임의로 할당, 특정 Client의 MAC과 IP Address를 정의하면 설정된 IP로 할당
- DHCP Request
- DHCP Server로부터 제안받은 Client는 DHCP Request Message를 Broadcast
- DHCP Request Message -> 제안 받은 Network 정보, DHCP Server 정보
- DHCP Server가 여러 대가 동작할수도 있어 Broadcast로 전송
- DHCP Acknowledgement
- Client로 Request Message를 받은 Server는 언제부터 사용한지 기록
- DHCP Request Message를 정상적으로 수신했다는 Response를 Broadcast로 전송
위는 신규로 Network를 정보를 할당받는 과정이다.
이 과정을 Lease 과정이라 한다.
DHCP IP Pool에서 잠시 빌려쓰는 것이다.
할당할 때 Lease Time(임대 시간)을 지정해서 전달한다.
임대시간이 만료되면 Client 할당된 것을 회수한다.
DHCP에서 할당 받은 후 임대 시간의 50%가 지나면 DHCP 갱신 과정을 수행한다.
DHCP Discover, DHCP Offer를 생략하고 DHCP Request와 DHCP Acknowlegdement만 수행한다.
Broadcast가 아닌 Unicast로 진행한다.
DHCP Message
Message Type | Content |
DHCP Discover | Client가 DHCP Server를 찾는 Message |
DHCP Offer | DHCP Server가 IP 설정값에 대해 Client에 제안하는 Message |
DHCP Request | DHCP Server에서 제안 받은 설정값을 요청하는 Message |
DHCP Decline | 현재 IP가 사용 중임을 Client가 Server에 알리는 Message |
DHCP Ack | DHCP Server가 Client에 받은 요청을 수락하는 Message |
DHCP Nak | DHCP Server가 Clientdp 받은 요청을 수락하지 않는다는 Message |
DHCP Release | Client가 IP를 반납할 때 Message |
DHCP Inform | Client가 Server에 IP 설정값을 요청하는 Message |