컴퓨터공학/컴퓨터망

[컴퓨터망] Host Configuration: DHCP

NIMHO 2022. 7. 10. 00:44
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

이 파트부터는 스스로 설명할 수 있게 공부해야 한다.

특히 동작하는 방식을 이해하는 것이 중요하다.

Introduction

  • TCP/IP 프로토콜 제품군을 사용하는 각 컴퓨터는 해당 IP 주소를 알아야 한다.
  • 컴퓨터가 classless addressing을 사용하거나 subnet의 구성원인 경우 subnet mask도 알아야 한다.
  • 오늘날 대부분의 컴퓨터에는 두 가지 다른 정보가 필요하다.
    • 다른 네트워크와 통신할 수 있는 기본 router의 주소
    • 주소 대신 이름을 사용할 수 있는 name server의 주소
  • 즉, 보통 네 가지 정보가 필요하다.
    1. 컴퓨터의 IP 주소
    2. 컴퓨터 subnet mask
    3. router의 IP 주소
    4. name server의 IP 주소

 

DHCP Operation

  • DHCP client와 server는 동일한 네트워크에 있거나 다른 네트워크에 있을 수 있다.

Client and server on the same network

DHCP 서버는 sp 67에서 passive open 명령을 실행하고 client를 기다린다.
client는 CP, SP(port number)를 보낸다. DHCP server는 number 보고 안다.

server는 SIP (server IP)를 알려준다. port number는 바꿔서 보낸다.

Client and server on two different networks

client와 server는 다른 LAN에 있을 수 있다.
client는 server의 IP주소를 모르기 때문에 요청이 broadcast 된다. (broadcast IP 데이터그램은 router를 통과할 수 없다.)
broadcast request를 수신하는 router는 해당 packet을 폐기한다.

그렇기 때문에 relay agent(중개해주는 애) 필요하다.
relay agent는 DHCP 서버의 unicast 주소를 안다.
패킷을 수신하면 unicast 데이터그램에 메시지를 캡슐화하고 서버로 request를 전송한다.

relay agent는 reply를 수신한 후 DHCP client로 전송한다.

 

UDP port

Use of UDP ports

server는 well-known port 67을, client는 well-known port 68을 사용한다.
임시적 port number가 아니라 정해져 있는 번호이다.

Configuration

  • DHCP는 정적 및 동적 주소 할당을 제공하도록 고안되었다.

Option with tag 53

value는 packet type를 알려준다.

DHCP client transition diagram
Exchanging messages

server는 먼저 보내지 않고 기다린다.

DHCP DISCOVER
DHCP OFFER : 이 주소를 쓸지 물어본다.
DHCP REQUEST : 쓰겠다고 알려준다. or 50%가 지나고 계속 쓰고 싶어서 다시 request 날린다.
DHCP ACK : request가 날아오면 요청을 받아준다.
DHCPNACK : 이제 그만 쓰라고 한다.
DHCPRELEASE : 다 쓰면 release 해준다.
728x90