CBROJIN 2025. 6. 24. 15:14

🔐 실습 목표

Access 단말(Infra PC)이 DHCP 서버로부터 정상적으로 IP를 할당받되, Access 스위치에서는 불법 DHCP 서버를 차단.

 

🧩 전체 구성도

  • Access-2 : VLAN 20, 클라이언트 연결, DHCP Snooping 활성화
  • Distribution-1 : VLAN 20, 100(SVI), 릴레이 수행(ip helper-address 192.168.50.5)
  • ASA-1: 릴레이 경유 장비, DHCP 서버와 연결
  • DHCP 서버: Ubuntu 서버, 192.168.50.5

🧩 주요 설정

*Access-2 (L2 Switch)*              *Distribution-1 (L3 Switch)*
            
ip dhcp snooping                      ip dhcp snooping
ip dhcp snooping vlan 20              ip dhcp snooping vlan 20,100

interface Gi1/1                       interface Gi1/1
 ip dhcp snooping trust                ip dhcp snooping trust 
                                      interface Gi0/2
                                       ip dhcp snooping trust

설정 일부

! 문제 상황 발생 : Access-2 , Distribution-1에 dhcp snooping 설정 후 dhcp server에서 ip 할당이 안됨.

 

🧩  원인 분석

* Distribution-1 에서 실행*

debug ip dhcp snooping packet
debug ip dhcp snooping events

1. Distribution-1 전역만 켠 경우
ip dhcp snooping <-- 켜도 정상 동작

 

2. VLAN 목록까지 지정
ip dhcp snooping vlan 20,100 <-- 이 순간부터 실패

 

3. 추가 조치

  • ip dhcp relay information trust-all
  • no ip dhcp snooping information option
    모두 적용해도 giaddr 값이 0.0.0.0 으로 남아 여전히 실패

4. 원인
가상 IOSv-L2/IOU 는 Snooping 엔진과 Relay 엔진이 동일 소프트웨어 경로로 동작
SVI가 giaddr 를 넣어 다시 네트워크로 재주입할 때 입력 포트가 아직 untrusted 로 표시되어 스누핑이 자체 패킷을 곧바로 차단.

시뮬레이션 가상화 장비의 한계로 생각됩니다.

 

🧩  결론 및 해결

Distribution-1(config)# no ip dhcp snooping
Distribution-1(config)# ip dhcp relay information trust-all <-- 이 설정이 있어야 동작
  • Distribution-1에서 snooping 기능 자체를 비활성화하고 relay만 수행

  • 이후 giaddr 설정 정상적으로 되고 IP 할당 완료됨

 

DHCP Snooping이란?

DHCP Snooping은 L2 스위치에서 DHCP 공격을 방지하기 위한 보안 기능입니다. 스위치가 DHCP 패킷을 검사하고, 신뢰된 포트를 통해서만 DHCP 서버의 응답이 전달되도록 제어함으로써, 불법 DHCP 서버(Rogue DHCP)를 차단할 수 있습니다.


왜 필요한가?

  1. Rogue DHCP 서버 차단
    악의적인 사용자가 DHCP 서버를 임의로 설정하면, 클라이언트가 엉뚱한 IP나 게이트웨이를 받아 Man-in-the-Middle 공격이나 DoS 공격이 가능해집니다.
    --> DHCP Snooping은 비신뢰 포트에서 들어오는 DHCP Offer/Ack을 차단해 이걸 막아줍니다.
  2. DAI, IP Source Guard 등과 연계
    DHCP Snooping은 단독으로도 쓰이지만, Dynamic ARP Inspection(DAI), IP Source Guard(ISG)L2 보안 기능의 기반이 되기도 합니다.
    --> 즉, ‘MAC/IP/포트’ 간의 신뢰 관계를 만들고 검증하는 데 중요한 역할을 합니다.

 

작동 방식 요약

  1. 신뢰 포트(trusted)
    일반적으로 DHCP 서버가 연결된 uplink 포트는 신뢰 포트로 지정. 이 포트로 들어오는 DHCP 메시지는 차단하지 않고 그대로 전달됩니다.
  2. 비신뢰 포트(untrusted)
    단말이 연결되는 포트는 기본적으로 모두 비신뢰 포트.
    --> 이 포트로 들어오는 DHCP Offer, Ack은 차단됨. 단, Discover, Request는 허용.
  3. 바인딩 테이블 생성
    스위치는 DHCP 과정을 통해 MAC, IP, VLAN, 인터페이스 정보를 바탕으로 바인딩 테이블을 자동으로 생성 합니다.
    --> 이 바인딩 정보를 기반으로 DAI나 IP Source Guard에서 검증이 가능합니다.