DHCP
DHCP
DHCP
- Dynamic Host Configuration Protocol의 약자
- IP 주소를 비롯한 여러 정보를 DHCP 서버가 클라이언트에 자동으로 할당해주는 프로토콜
- 서브넷 마스크, 게이트웨이, DNS 서버 IP 주소, IP 주소 임대 기간 등
- 일반 가정 및 사무실에서 많이 사용됨
- UDP를 사용해 통신함
- DHCP는 별도의 보안 매커니즘이 존재하지 않기 때문에, 다음과 같은 공격에 취약
- DHCP 서버를 위장해서 대신 응답
- 인가받지 않은 사용자가 DHCP 서버에 요청을 보내 정보를 훔침
- DHCP 서버에 요청을 많이 보내서 IP 주소를 고갈시킴
동작 방식
다음과 같이 4단계의 요청과 응답으로 구성됨
- DHCP Discover
- 클라이언트가 서브넷에 DHCP 서버의 위치를 찾는 요청
- DHCP 서버의 주소를 모르므로 서브넷 내의 모든 호스트에 전송 (Broadcast)
- DHCP Offer
- DHCP 서버가 자신의 IP 주소와 클라이언트가 사용 가능한 IP 주소를 보내는 응답
- 클라이언트는 아직 주소를 할당받지 못한 상태이므로, 서브넷 내의 모든 호스트에 전송 (Broadcast)
- DHCP Request
- 클라이언트가 DHCP 서버로부터 받은 응답을 통해 DHCP에 자신이 사용할 IP 주소를 전송하는 요청
- DHCP ACK
- DHCP 서버가 클라이언트에게 해당 IP를 사용해도 된다고 보내는 응답
- 기타 네트워크 정보도 같이 DHCP Offer 메시지로 전송
연장 / 반납
- IP 임대 기간이 지나서도 IP 주소를 사용하고 싶은 경우
- 클라이언트가 DHCP Request로 연장 요청을 보냄
- 서버가 DHCP ACK로 추가 임대 기간을 설정해서 응답
- 호스트가 종료되면 IP 주소를 DHCP 서버에 반환
- 클라이언트가 DHCP Release 요청을 보내면 반환됨
장단점
- 장점
- 사용자가 호스트에 대한 IP 주소 및 여러 정보에 대한 설정을 별도로 할 필요가 없음
- IP가 자동 할당되므로, IP 충돌을 방지 가능
- 단점
- IP 할당이 DHCP 서버에 의존적이므로, DHCP 서버 다운시 네트워크 사용 불가
References
- https://crone.tistory.com/434
- https://ja-gamma.tistory.com/entry/DHCP%EA%B0%9C%EB%85%90%EB%8F%99%EC%9E%91%EC%9B%90%EB%A6%AC
- https://www.joinc.co.kr/w/man/12/dhcp