728x90
PC가 DHCP에 IP 주소를 요청하면서 물리 주소를 보냄(RARP 동작, 브로드캐스트)
DHCP는 IP주소를 할당하고 MAC 주소와 IP 주소를 매핑하는 정보를 저장(일정 기간 동안에는 동일한 IP 주소를 할당)
- TCP/IP에 접속하는 모든 컴퓨터가 알아야 하는 정보(DHCP가 제공하는 정보)
- 구성 파일에 저장되어 부팅 과정에 접근
- 컴퓨터의 IP 주소
- 컴퓨터의 해당 서브넷 마스크
- 라우터의 IP 주소
- DNS의 IP 주소
- 구성 파일에 저장되어 부팅 과정에 접근
- 이전 프로토콜
- RARP(Reverse Address Resolution Protocol)
- 물리 주소 -> IP 주소
- 나의 MAC 주소를 가지고 나의 IP 주소를 알고자 함
- *ARP: 목적지의 IP를 알고 있을 때 MAC을 알고자 함
- BOOTP(Bootstrap Protocol)
- DHCP의 이전 버전
- 정적인 설정 프로토콜
- RARP(Reverse Address Resolution Protocol)
DHCP 동작 절차
- 같은 네트워크에 DHCP 서버 위치 (일반적)
- UDP 포트 번호에 67에 수동 개방(passive open) 명령을 수행하고 클라이언트 요청을 기다림
- 부팅된 클라이언트는 포트 번호 68에 능동 개방(active open) 명령을 수행
- 서버는 UDP 목적지 포트 번호를 68, 발신지 포트 번호를 67로 지정한 뒤 유니 캐스트나 브로드 캐스트 메시지를 클라이언트로 보냄
- 다른 네트워크에 DHCP 서버 위치
- 중계 에이전트(relay agent) 필요
- DHCP 서버의 유니캐스트 주소를 알고 있으며 포트 번호 67번호로 들어오는 브로드캐스트 메시지를 기다림
- 해당 패킷을 수신하면 이 메시지를 유니캐스트 메시지를 캡슐화하여 DHCP 서버로 보냄
- 유니 캐스트 목적지 주소를 가지는 패킷은 라우터에 의해 라우팅되며 DHCP 서버에 도착 (브로드캐스트는 라우팅 X)
- DHCP 서버는 중계 에이전트 IP 주소를 정의하고 있으므로 중계 에이전트로부터 온 메시지임을 알게 됨
- 응답을 받은 중계 에이전트는 클라이언트로 전송
DHCP 패킷 형식
DHCP 주소 할당
- 정적 주소 할당
- DHCP 서버는 물리 주소와 IP 주소를 정적으로 바인딩한 데이터베이스 이용
- 동적 주소 할당
- 이용 가능한 IP 주소의 풀(pool)로 이루어진 또 다른 데이터베이스를 이용하여 동적 할당
- 요청을 받았을 때 주소 풀에서 활용 가능하고 사용하지 않는 IP 주소를 협상 기간 동안 할당
- 절차
- 먼저 자신의 정적 데이터 베이스를 찾음
- 요청된 물리 주소가 있으면 영구적인 IP 주소 반환
- 없으면 IP 풀에서 할당하고 동적 데이터베이스에 항목을 추가
- 상태 천이
- 메시지 유형은 DHCP 패킷에 포함된 태그 값 53을 갖는 옵션에 의해 정의
- 초기(INIT): 처음 시작
- 선택(SELECTING): 서버를 찾는 상태 (DISCOVER 메시지를 전송, 서버들은 OFFER로 응답)
- 요청(REQUESTING): IP 주소 요청
- 바운드(BOUND): IP 연결 완료. 임대 완료까지 IP 주소 사용
- 재설정(RENEWING): 임대 만료 전에 다시 할당 요청
- 재연결(REBINDING): 임대 기간 종료 후 재요청
- 메시지 유형은 DHCP 패킷에 포함된 태그 값 53을 갖는 옵션에 의해 정의
- 타이머
- Renewal timer(재설정 타이머): 50% of lease time
- Rebinding timer(재연결 타이머): 87.5%
- Expiration timer(만료 타이머): 100%
- 메시지 교환
DHCP 패킷 분석
- DHCP 주요 목적: 갱신 프로세스 동안 클라이언트에게 주소 할당. 갱신은 유니캐스트로 동작
- DORA 패킷 유형(Discover, Offer, Request, Acknowledge)
- Discover 패킷
- Message Type: 1(Request)
- 대부분의 필드는 비어있거나 이전 섹션의 DHCP 필드 목록을 기반으로 함
- Broadcast
- DHCP Message Type: 53, 길이 1, 값 1 (Discover)
- Offer 패킷
- Message Type: 2(Reply)
- 이전 패킷과 동일한 Transaction ID
- Client IP address: 유효한 IP 주소를 제공 (MAC 주소로 클라이언트와 통신)
- Next server IP address: 게이트웨이 IP 주소
- DHCP Message Type: Offer
- 추가 정보: 서브넷 마스크, 갱신 시간, 리바인딩 시간, IP 주소 임대 시간, DHCP 서버 식별자
- Request 패킷
- IP 주소를 획득하는 절차
- Message Type: 1(Request)
- 새로운 요청/응답이므로 새로운 transaction ID
- DHCP Message Type: Request
- Acknowledge 패킷: 마지막 단계, ack 패킷을 보내고 정보를 데이터베이스에 기록
- DHCP 임대 갱신
- 임대 상태인 클라이언트가 재가동 되었을 때 IP 주소를 재요청
- request와 acknowledgement 단계만 수행
- A - 인터넷 - B일 때
- A ~ B: IP, Port 정보 사용
- A, B 각 내부에서 이더넷(MAC 주소, 단말기와 스위치 간의 통신, 로컬 네트워크) 사용
- A와 B를 종단이라고 함
- 이더넷 네트워크의 경계선이 라우터
- 출발지, 목적지의 MAC 주소는 네트워크가 바뀔 때마다 변경되므로 종단이라고 하지 않음
'대학공부 > 인터넷 프로토콜' 카테고리의 다른 글
DHCP Spoofing (0) | 2024.04.19 |
---|---|
ARP Spoofing(ARP Cache Poisoning) (1) | 2024.04.12 |
주소 변환 프로토콜(ARP) (1) | 2024.03.29 |
근거리 통신망: 유선 이더넷 (0) | 2024.03.29 |
네트워크의 구성요소 (0) | 2024.03.22 |