티스토리 뷰

반응형

안녕하세요. 보쌈,
IT 보안을 알려주는 삼촌입니다.

지난번에는 DHCP Option 43 / 60에 대해 정리해봤는데요.


이번에는 DHCP를 운영하다 보면 꼭 만나게 되는 DHCP 릴레이(DHCP Relay) 에 대해 이야기해보려고 합니다.



실무에서 이런 상황이 자주 있습니다.

사용자 PC는 VLAN 10
무선 AP는 VLAN 20
서버는 VLAN 30
DHCP 서버는 방화벽이나 서버실 한쪽에만 있음
이런 구조에서는 DHCP 서버가 같은 네트워크에 없기 때문에,
단순 브로드캐스트만으로는 IP를 정상 할당하기 어렵습니다.
이때 필요한 기능이 바로 DHCP 릴레이입니다.


1. DHCP 릴레이란?

DHCP는 기본적으로 클라이언트가 처음 IP를 받을 때 브로드캐스트로 요청을 보냅니다.
문제는 브로드캐스트 패킷이 라우터나 방화벽을 넘어 다른 VLAN으로 그냥 전달되지 않는다는 점입니다.
즉,
클라이언트와 DHCP 서버가 서로 다른 네트워크에 있으면
클라이언트의 DHCP Discover가 서버까지 가지 못할 수 있습니다.
이때 중간에 있는 라우터 또는 방화벽이 DHCP 릴레이 역할을 하면서,
클라이언트의 요청을 받아 DHCP 서버로 대신 전달해줍니다.
쉽게 말하면:
DHCP 릴레이는 “다른 네트워크에 있는 DHCP 서버와 클라이언트를 연결해주는 중계자” 입니다.

2. 왜 DHCP 릴레이가 필요한가?

예전처럼 작은 네트워크라면 DHCP 서버를 각 대역마다 둘 수도 있지만,
실제 현장에서는 보통 다음처럼 운영합니다.
DHCP 서버는 한 곳에 집중
여러 VLAN은 방화벽/코어 스위치가 라우팅
각 부서별 / 용도별로 네트워크 분리
이 구조에서 DHCP 릴레이가 없으면 이런 문제가 생깁니다.
특정 VLAN의 PC가 IP를 못 받음
무선 AP가 부팅해도 DHCP 할당 실패
게스트망만 IP 할당 안 됨
같은 장비인데 어떤 VLAN에서는 되고 어떤 VLAN에서는 안 됨
즉,
DHCP 서버가 살아 있어도 릴레이가 없으면 IP 할당이 안 되는 상황이 생깁니다.


3. DHCP 릴레이 동작 원리

흐름은 생각보다 단순합니다.
1) 클라이언트가 DHCP Discover 전송
클라이언트는 아직 IP가 없으므로 브로드캐스트로 요청합니다.
2) 중간 장비(방화벽/라우터)가 요청 수신
같은 VLAN 인터페이스에 붙어 있는 방화벽 또는 L3 스위치가 이 요청을 받습니다.
3) 릴레이 장비가 DHCP 서버로 전달
이 장비가 DHCP Discover를 유니캐스트 형태로 DHCP 서버에 전달합니다.
4) DHCP 서버가 Offer 응답
서버는 릴레이 장비를 통해 어떤 네트워크 요청인지 판단하고 IP를 제안합니다.
5) 다시 릴레이 장비를 거쳐 클라이언트에 전달
클라이언트는 최종적으로 IP를 할당받습니다.
핵심은 이겁니다.
DHCP 릴레이가 있으면, 서로 다른 VLAN에 있어도 중앙 DHCP 서버를 사용할 수 있다.


4. 현장에서 자주 쓰는 구성 예시

예를 들어 이런 구조입니다.
VLAN 10: 사무용 PC
VLAN 20: 무선 AP
VLAN 30: IP Phone
방화벽: 각 VLAN 게이트웨이 역할
DHCP 서버: 서버망에 1대만 운영
이 경우 각 VLAN 인터페이스에
DHCP Relay(또는 IP Helper) 를 설정해 DHCP 서버 주소를 지정합니다.
예:
VLAN 10 인터페이스 → DHCP 서버 10.10.30.10
VLAN 20 인터페이스 → DHCP 서버 10.10.30.10
VLAN 30 인터페이스 → DHCP 서버 10.10.30.10
이렇게 하면 서버는 1대만 있어도
여러 VLAN에 IP를 할당할 수 있습니다.

5. DHCP 릴레이가 안 될 때 증상

실무에서 제일 많이 보는 증상은 아래입니다.
대표 증상
특정 VLAN만 IP를 못 받음
같은 건물인데 특정 층만 DHCP 실패
AP는 링크 업인데 IP를 못 받음
DHCP 서버는 정상인데 클라이언트는 169.254.x.x 자동 사설 IP로 떨어짐
어떤 대역은 되고, 어떤 대역은 안 됨
이럴 때는 대부분 아래 중 하나입니다.
릴레이 설정 누락
릴레이 대상 DHCP 서버 IP 오타
방화벽 정책 미허용
DHCP 서버에서 해당 네트워크용 스코프 미생성
중간 장비 인터페이스/VLAN 매핑 오류

6. 점검 순서

현장에서는 아래 순서로 보면 빠릅니다.
1) 클라이언트 IP 상태 확인
정상 IP가 들어왔는지
169.254.x.x 인지 확인
2) VLAN 게이트웨이 확인
클라이언트가 붙은 VLAN의 게이트웨이가 맞는지
방화벽/코어 스위치 인터페이스가 살아 있는지
3) DHCP 릴레이 설정 확인
올바른 인터페이스에 설정됐는지
DHCP 서버 IP가 맞는지
여러 DHCP 서버를 지정했는지 여부
4) 방화벽 정책 확인
UDP 67/68 관련 트래픽이 차단되지 않는지
존 간 정책이 잘못 막고 있지 않은지
5) DHCP 서버 스코프 확인
해당 VLAN 대역용 풀 존재 여부
대여 주소가 남아 있는지
제외 주소가 너무 많지 않은지

7. 패킷으로 확인하는 방법

문제가 애매할 때는 결국 패킷이 가장 정확합니다.
tcpdump 예시

tcpdump -i eth0 -nn -vvv port 67 or port 68


보면 좋은 포인트
클라이언트의 DHCP Discover가 들어오는지
릴레이 장비가 서버로 요청을 넘기는지
서버의 Offer가 돌아오는지
Offer는 오는데 클라이언트까지 전달이 안 되는지
즉,
Discover는 보이는데 Offer가 없으면 서버/정책/릴레이 문제,
Offer까지 왔는데 클라이언트가 못 받으면 전달 구간 문제를 의심하면 됩니다.

8. DHCP Option 43/60과의 관계

지난 글에서 설명한 DHCP Option 43 / 60과도 연결됩니다.
https://seculog.tistory.com/95

DHCP Option 43 / 60 이란? Wireshark로 확인 하는 실전 방법

안녕하세요 보쌈 (보안을 알려주는 삼촌) 입니다!! 오늘은 우리가 흔히 접하지는 않지만, 그래도 실무에서 많이 사용하는 DHCP 서버에 대해 알려 드리도록 하겠습니다.방화벽에서 흔히, DHCP 서버

seculog.tistory.com


DHCP 릴레이: DHCP 요청을 다른 네트워크의 서버로 전달
DHCP Option 43: 서버가 특정 장비에 벤더 전용 정보 제공
DHCP Option 60: 클라이언트가 자신이 어떤 장비인지 알림
즉, 릴레이는 “전달”,
옵션 43/60은  내용 이라고 보면 이해가 쉽습니다.

무선 AP 환경에서는
DHCP 릴레이로 IP를 받고
Option 43으로 컨트롤러 주소를 받아
컨트롤러에 조인하는 구조가 자주 나옵니다.

9. 실무에서 자주 틀리는 포인트

1) DHCP 서버는 정상인데 릴레이가 빠진 경우
서버만 살아 있다고 끝이 아닙니다.
다른 VLAN이면 릴레이가 꼭 필요할 수 있습니다.
2) 릴레이는 있는데 스코프가 없는 경우
서버가 요청은 받았지만 해당 네트워크용 주소풀이 없으면 할당이 안 됩니다.
3) 인터페이스를 잘못 잡은 경우
VLAN 20에서 받아야 하는데 VLAN 10 인터페이스에만 릴레이가 걸려 있으면 안 됩니다.
4) 방화벽 정책 누락
보안 장비에서 DHCP도 결국 정책 영향을 받을 수 있으니, 서버 방향 트래픽 허용 여부를 봐야 합니다.
마무리
정리하면,
DHCP 릴레이는 서로 다른 VLAN에 있는 클라이언트와 DHCP 서버를 연결해주는 중계 기능입니다.
다음 상황이면 꼭 의심해보세요.
특정 VLAN만 IP를 못 받는다
DHCP 서버는 살아 있는데 클라이언트는 주소를 못 받는다
무선 AP나 IP Phone이 특정 망에서만 DHCP 실패한다


반응형