본문 바로가기
정보보안 지망이!/Windows 심화

Windows2_ DHCP (RelayAgent, 임대 예약, 범위 분할)

by Edes Kim 2020. 6. 30.

# DHCP

: Dynamic Host Configuration Protocol

 자동으로 호스트 장비에 네트워크 설정을 하는 프로토콜

- 클라이언트 컴퓨터나 다른 TCP/IP 기반 네트워크 장치에 IP주소를 제공하는 서비스

- IP와 함께 라우터(GW), DNS서버, WINS서버와 같은 네트워크 리소스와의 연결을 위한 정보도 제공함(옵션)

- DHCP client에 특정 기간 IP를 임대하여 갱신을 요청하는 경우 IP주소를 갱신 처리

- 특정 컴퓨터나 장치에는 IP예약 가능 (고정 IP설정)

- 서비스를 제공하는 서브넷의 라우터에 DHCP 메세지를 전달하도록 구성할 경우 여러 서브넷에 DHCP 서비스를 제공하는것도 가능(= DHCP RelayAgent)

- 한 서브넷에 도메인이 속해 있고(AD 멤버) 정당한 권한을 가진 DHCP서비스독립 실행형 서비스의 DHCP 서비스가 공존할 경우 독립 실행형 서버의 서비스가 자동 정지됨.

  (악의적인 DHCP서비스 차단)

* 같은 네트워크에 ADDC 가 실행되어있으면 자동으로 DHCP 가 자동 정지된다.

  ( ADDC내에서 인증되지 않은 서버로  간주된 DHCPT서버는 ADDC로 인해 정지된다.)

  (또한 , ADDC외의 모든 Stand-alone 서버들또한 정지된다. )

 

# 주소 할당 방식

- Static : 고정 할당 방식. 컴퓨터 장치에 고정 IP설정. 설정된 IP는 재활용 되지 않음

- Dynamic : 동적 할당 방식. IP를 일시적으로 임대하여 IP를 자동으로 재활용 (DHCP)

 

# DHCP의 통신 방식

- DHCP Server : UDP 67번

- DHCP Client : UDP 68번

 

# DHCP 동작 과정 ( 주소 임대 과정) : DORA

1. DHCP Discover                           Client -> Server             주소 요청(DHCP 서버를 검색)

: 브로드 캐스트 통신

2. DHCP Offer                                   Server -> Client             사용할 주소를 우선 여러개 제공하고 그중에 고를수 있도록 제안(확정 x)

: 브로드 캐스트 (리눅스는 유니캐스트) 통신

3. DHCP Request                             Client -> Server             제공받은 주소 중 하나의 사용을 요청(승인요청)

: 브로드 캐스트 통신

4. DHCP Ack                                       Server -> Client             주소 사용 승인

DHCP 서버가 2대(110,130) 있을때는 Client가 선택하여 requset를 보낸다.

# APIPA (Automatic Private IP Addressing) 

: 자동 개인 주소 지정(할당) 

주소 대역대 : 169.254.0.0 ~ 255.255.0.0

DHCP 서버가 없는 경우 or DHCP서버에게 IP를 할당받지 못한 경우 -> 클라이언트가 자동으로 IP주소를 부여함.

사용 목적 - DHCP 서버로 IP를 할당 받지 못한 경우                     

(클라이언트가 내부적 통신을 지원하기 위해서)

 

# 클라이언트에서 DHCP 임대 요청 및 해제 명령

IP 임대 요청 : ipconfig /renew

IP 임대 해체 : ipconfig /release


1. SRV1에 'DHCP Server'와 'Remote Access' 설치 

*주로 SRV1(GW를 가지고있는)에 주로 DHCP서버를 설치한다.

2. dhcpmgmt.msc

(그냥 확인....ㅎ)
IPv4 -> '새 범위'
'길이'는 서브넷 마스크를 표시
먼저 설정한 범위 내에 있는 범위만 지정가능

 

(굳이 이렇게 설정안해도 되는데 실습을 위해 짧게 한것)
구성안하면 게이트웨이 설정이 안된다 나중에라도 꼭 구성해야함. (나는 91번으로 했어야 됬는데......ㅎㅎ;)

 

옵션만 기억하고 다음으로 넘어가기 -> '활성화' 하면 끝
설정이 끝나면 나오는 화면.

* 이후에 '라우팅 및 원격 엑세스 허용' 까지 꼭 하기


[여기부터는 Client 에서 진행]

브로드 케스트 통신 (255.255.255.255)

Transaction ID : 통신을 구분(하나의 사이클을 구분)하기 위한 번호.

                                (이게 다르다는 것은 다른곳의 다른 요청이라는 것) -> 그래서 저 4개의 통신의 Transaction ID는 모두 같다.

 

0.0.0.0 은 전체 IP의 대표주소이자, Unknown IP 이다.

* Source 가 unknow인 이유는 client가 아직 IP를 가지고있지 않기 때문.

* DHCP는 Application 계층(7계층)

 

이 이후에도 DHCP 서버와 통신하는 패킷이 나오는데 그건 IP임대 기간이 끝나 새로 갱신하기 위한 것

 (위에 캡쳐 이미지 있음.)

 

만약 내가 IP 임대 기간(시간)을 10분으로 잡았다면 그의 절반인 5분이 지난 시점에 'request'패킷을 전송. 처리가 끝나면 ACK 패킷을 받지만, 처리가 되지 않았을때는 그 남은 5분의 절반인 2분 30초가 지나면 또 'request'패킷을 다시한번 전송. 만료되기 전까지 처리가 안되면 남은 시간에 계속해서 requset 를 전송한다.

 


[임대 예약]


[실습1]

 

범위이름 : 91 범위

범위 : 10.0.91.55~75

mask : 255.255.255.0

제외 주소 : 55, 60~65

예약 : mem91 > 10.0.91.75

G/W : 10.0.91.110

DNS : 10.0.91.110

WINS : 10.0.91.110

임대기간 : 3일


[실습2] : DHCP서버가 여러개 존재한다면??

 

SRV91은 

10.0.91.0/24

할당 IP :  10.0.91.10~49

기본 라우터 : 10.0.91.110

dns : 10.0.91.110

wins : 10.0.91.110

 

mem91 (DHCP서버 설치)

10.0.91.50 ~ 10.0.91.99

기본 라우터 : 10.0.91.110

dns : 10.0.91.110

wins : 10.0.91.110

 

클라이언트에서 ipconfig /release, ipconfig /renew 로 할당 확인 

할당 확인 재 확인시 할당 서버의 임대 장비내에 설정을 삭제


* 분할 범위

1. DHCP서버가 여러대 있을때 서버간에 DHCP 범위를 분할하면 내결함성이 향상된다.

2. 분할 범위 구성에서는 서버 중 하나가 다운되더라도 다른 서버가 대신 새 IP주소를 임대하거나 기존 클라이언트를 갱신할수 있다.

3. DHCP범위를 분할하면 서버 부하를 분산시킬수 있다.


# Relay Agent (중요!!)

: Client쪽에서 설정한다. DHCP서버가 있는 컴퓨터에서는 설정하지 x

 

내부 네트워크에서 BroadCast로 IP주소를 요청하는 패킷이 마구 전송되고, 그 중 하나가 내 게이트웨이에 닿았을 때 내 게이트웨이는 Relay Agent에 등록된 게이트웨이 주소정보를 통해 서로 통신할수 있도록한다.

Relay Agent 설명

 

상대쪽의 라우터 게이트웨이를 등록.


[실습3] : 외부에 있는 DHCP서버를 사용하기

DHCP서버가 있는 곳에는 Relay Agent 를 설정할 필요 x