DHCP 스누핑(ELS) 이해
이 주제에는 ELS(Enhanced Layer 2 Software) 구성 스타일을 지원하는 EX 시리즈 스위치용 Junos OS를 사용할 때 DHCP(Dynamic Host Configuration Protocol) 스누핑을 활성화하는 방법에 대한 정보가 포함되어 있습니다. 스위치가 ELS를 지원하지 않는 Junos OS 소프트웨어를 실행하는 경우, DHCP 스누핑(비 ELS) 이해를 참조하십시오. ELS 세부 사항은 Enhanced Layer 2 Software CLI 사용을 참조하십시오.
DHCP 스누핑을 사용하면 스위치 또는 라우터일 수 있는 스위칭 디바이스가 스위칭 디바이스에 연결된 신뢰할 수 없는 디바이스에서 수신된 DHCP 메시지를 모니터링할 수 있습니다. VLAN에서 DHCP 스누핑이 활성화되면 시스템은 VLAN과 연결된 신뢰할 수 없는 호스트에서 보낸 DHCP 메시지를 검사하고 해당 IP 주소 및 리스 정보를 추출합니다. 이 정보는 DHCP 스누핑 데이터베이스를 구축하고 유지 관리하는 데 사용됩니다. 이 데이터베이스를 사용하여 확인할 수 있는 호스트만 네트워크에 액세스할 수 있습니다.
DHCP 스누핑 기본 사항
DHCP는 IP 주소를 동적으로 할당하여 할당된 디바이스에서 더 이상 필요하지 않을 때 주소를 재사용할 수 있도록 디바이스에 주소를 임대 합니다. DHCP를 통해 얻은 IP 주소가 필요한 호스트 및 종단 디바이스는 LAN을 통해 DHCP 서버와 통신해야 합니다.
DHCP 스누핑은 신뢰할 수 있는 DHCP 서버(서버가 신뢰할 수 있는 네트워크 포트에 연결됨)에 의해 다운스트림 네트워크 디바이스에 할당된 유효한 IP 주소를 추적하여 네트워크 보안의 수호자 역할을 합니다.
기본적으로 스위치의 모든 트렁크 포트는 신뢰할 수 있으며 DHCP 스누핑에 대해 모든 액세스 포트는 신뢰할 수 없습니다.
Junos OS 릴리스 18.4R1부터 DHCP 스누핑은 다음 주니퍼 시리즈 스위치, EX2300, EX4600 및 QFX5K에 대한 신뢰할 수 있는 포트에서 발생합니다. Junos OS 릴리스 18.4R1 이전에는 이러한 디바이스의 경우 DHCPv6 스누핑에만 해당되었습니다. 또한 DHCP 스누핑은 Junos OS 릴리스 19.1R1 이상을 실행하는 EX9200 시리즈 스위치 및 Fusion Enterprise의 신뢰할 수 있는 포트에서 발생합니다.
trust하거나 untrusted 옵션과 함께 overrides 구성 문을 사용하여 액세스 포트를 trusted로 구성하거나 트렁크 포트를 untrusted로 구성할 수 있습니다.
DHCP 스누핑이 활성화되면 서버의 리스 정보를 사용하여 DHCP 바인딩 테이블이라고도 하는 DHCP 스누핑 테이블을 생성합니다. 이 표에는 현재 IP-MAC 주소 바인딩과 리스 시간, 바인딩 유형, 관련 VLAN 및 인터페이스 이름이 나와 있습니다.
DHCP 스누핑 테이블의 항목은 다음 이벤트에서 업데이트됩니다.
네트워크 디바이스가 IP 주소를 릴리스할 때(DHCPRELEASE 메시지 전송). 이 경우 연결된 매핑 항목이 데이터베이스에서 삭제됩니다.
한 VLAN에서 다른 VLAN으로 네트워크 디바이스를 이동하는 경우. 이 경우 일반적으로 디바이스는 새 IP 주소를 획득해야 합니다. 따라서 VLAN 이름을 포함한 데이터베이스의 해당 항목이 업데이트됩니다.
DHCP 서버에서 할당한 임대 시간(시간 제한 값)이 만료되는 경우. 이 경우 연결된 항목이 데이터베이스에서 삭제됩니다.
네트워크 디바이스가 유니캐스트 DHCPREQUEST 메시지를 보내고 DHCP 서버로부터 긍정적인 응답을 수신하여 리스를 갱신하는 경우. 이 경우 데이터베이스에서 임대 시간이 업데이트됩니다.
네트워크 디바이스가 원래 리스를 부여한 DHCP 서버에 연결할 수 없는 경우 브로드캐스트 DHCPREQUEST 메시지를 보내고 응답하는 DHCP 서버에 다시 바인딩합니다. 이 경우 클라이언트는 새로운 IP 주소를 수신하고 DHCP 스누핑 테이블에서 바인딩이 업데이트됩니다.
Junos OS 릴리스 14.1X53-D35부터 DHCP 서버에서 고정 IP 할당이 있는 네트워크 디바이스가 다른 MAC 주소의 새 디바이스로 교체되는 경우 서버가 DHCPACK 메시지를 보낼 때까지 새 IP-MAC 주소 바인딩이 저장됩니다. 그런 다음 DHCP 스누핑 테이블의 항목이 새 주소 바인딩으로 업데이트됩니다.
기본적으로 스위치가 재부팅되면 IP-MAC 바인딩이 손실되며 DHCP 클라이언트(네트워크 디바이스 또는 호스트)는 바인딩을 다시 획득해야 합니다. 그러나 데이터베이스 파일을 로컬 또는 원격으로 저장하도록 문을 설정하여 dhcp-snooping-file
바인딩이 지속되도록 구성할 수 있습니다. 802.1x 동적 VLAN을 구성하고 활성화하면 DHCP 스누핑 항목도 삭제됩니다. 이 때문에 클라이언트에 대한 임대 정보를 저장하고 클라이언트를 재부팅한 후에도(DHCP 지속성) 예측 가능한 IP 주소를 제공하도록 DHCP 서버에 대해 구성하는 것이 좋습니다.
특정 VLAN의 DHCP 서버 응답만 스누핑하도록 스위치를 구성할 수 있습니다. 이렇게 하면 DHCP 서버 메시지의 스푸핑을 방지할 수 있습니다.
DHCP 스누핑 활성화
DHCP 스누핑 기능을 사용하는 경우 DHCP 스누핑 기능 활성화에 대해 이해하는 것이 중요합니다.
Junos OS 디바이스에서는 DHCP 스누핑 기능을 독립 기능으로 구성할 수 없습니다. 디바이스의 특정 VLAN에 대해 DHCP 보안을 구성할 때마다 해당 VLAN에서 DHCP 스누핑이 자동으로 활성화되어 작업을 수행합니다.
예를 들어:
- 특정 VLAN에서 DHCP 보안을 활성화하면 해당 VLAN에서 DHCP 스누핑이 자동으로 활성화됩니다.
Junos OS는 스위치에서 DHCP 스누핑을 지원합니다.
모든 포트 보안 기능에 대해 다음 옵션을 구성하는 경우:
dhcp-security
[edit vlans vlan-name forwarding-options
] 계층 수준의 문입니다.
Junos OS 릴리스 17.1 이전에는 [edit vlans vlan-name forwarding-options
] 계층 내에서 다음 포트 보안 기능 중 하나를 구성하는 경우 Junos OS에서 자동으로 DHCP 스누핑을 활성화했습니다.
- 동적 ARP 검사(DAI)
- IP 소스 가드
- DHCP 옵션 82
- 고정 IP
Junos OS 릴리스 17.1R1부터는 다른 포트 보안 기능을 활성화하지 않고도 VLAN에서 DHCP 스누핑 또는 DHCPv6 스누핑을 구성할 수 있습니다. 다음 구성 문을 사용하여 DHCP 스누핑을 활성화합니다.
[set vlans vlan-name forwarding-options dhcp-security
]입니다.
DHCP 스누핑을 비활성화하려면 구성에서 dhcp-security
문을 삭제해야 합니다. 다른 포트 보안 기능을 비활성화할 때 DHCP 스누핑이 자동으로 비활성화되지는 않습니다.
DHCP 스누핑 프로세스
DHCP 스누핑 프로세스는 다음 단계로 구성됩니다.
VLAN에 대해 DHCP 스누핑이 활성화되면 해당 VLAN의 네트워크 디바이스에서 전송된 모든 DHCP 패킷이 DHCP 스누핑의 대상이 됩니다. 최종 IP-MAC 바인딩은 DHCP 서버가 DHCPACK 패킷을 DHCP 클라이언트로 보낼 때 발생합니다.
네트워크 디바이스는 DHCPDISCOVER 패킷을 전송하여 IP 주소를 요청합니다.
스위치는 패킷을 DHCP 서버로 전달합니다.
서버는 DHCPOFFER 패킷을 전송하여 주소를 제공합니다. DHCPOFFER 패킷이 신뢰할 수 있는 인터페이스에서 온 경우 스위치는 패킷을 네트워크 디바이스로 전달합니다.
네트워크 디바이스는 DHCPREQUEST 패킷을 전송하여 IP 주소를 수락합니다. 스위치는 DHCP 스누핑 테이블에 IP-MAC 자리 표시자 바인딩을 추가합니다. 이 항목은 서버에서 DHCPACK 패킷을 받을 때까지 자리 표시자로 간주됩니다. 그때까지는 IP 주소를 다른 호스트에 할당할 수 있습니다.
서버는 DHCPACK 패킷을 전송하여 IP 주소를 할당하거나 DHCPNAK 패킷을 전송하여 주소 요청을 거부합니다.
스위치는 수신된 패킷 유형에 따라 DHCP 데이터베이스를 업데이트합니다.
스위치가 DHCPACK 패킷을 수신하면 해당 데이터베이스의 IP-MAC 주소 바인딩에 대한 리스 정보를 업데이트합니다.
스위치가 DHCPNACK 패킷을 수신하면 자리 표시자를 삭제합니다.
DHCP 데이터베이스는 DHCPREQUEST 패킷이 전송된 후에만 업데이트됩니다.
클라이언트에 IP 주소를 할당하는 동안 DHCP 클라이언트와 DHCP 서버가 교환하는 메시지에 대한 일반적인 정보는 Junos OS 시스템 기본 구성 가이드 를 참조하십시오.
DHCPv6 스누핑
Junos OS 릴리스 14.1X53-D10부터 EX 9200 스위치의 IPv6 패킷에 대해 DHCP 스누핑이 지원됩니다.IPv6 패킷에 대해서도 DHCP 스누핑이 지원됩니다. DHCPv6 스누핑 프로세스는 DHCP 스누핑 프로세스와 유사하지만 클라이언트와 서버 간에 교환되는 메시지에 다른 이름을 사용하여 IPv6 주소를 할당합니다. 표 1 에는 DHCPv6 메시지와 해당 DHCPv4 메시지가 나와 있습니다.
보낸 사람 |
DHCPv6 메시지 |
DHCPv4 상당 메시지 |
---|---|---|
클라이언트 |
간청 |
DHCPDISCOVER (영문) |
서버 |
광고 |
DHCP오퍼 |
클라이언트 |
요청, 갱신, 리바인드 |
DHCP요청 |
서버 |
회답 |
DHCPACK/DHCPNAK |
클라이언트 |
석방 |
DHCP릴리스 |
클라이언트 |
정보 요청 |
DHCPINFORM |
클라이언트 |
거절하다 |
DHCP거부 |
클라이언트 |
확인하다 |
없음 |
서버 |
재구성 |
DHCPFORCE갱신 |
클라이언트 |
릴레이-FORW, 릴레이-응답 |
없음 |
DHCPv6에 대한 신속한 커밋
DHCPv6 신속 커밋 옵션은 클라이언트와 서버 간의 메시지 교환을 단축할 수 있습니다. 서버에서 지원하고 클라이언트에서 설정한 경우 이 옵션은 교환을 4방향 릴레이에서 2메시지 핸드셰이크로 단축합니다. 빠른 커밋 옵션 활성화에 대한 자세한 내용은 DHCPv6 빠른 커밋 구성(MX 시리즈, EX 시리즈)을 참조하십시오.
Rapid Commit 옵션이 활성화되면 메시지 교환은 다음과 같이 이루어집니다.
DHCPv6 클라이언트는 주소, 접두사 및 기타 구성 매개 변수의 신속한 할당이 선호된다는 요청이 포함된 SOLICIT 메시지를 보냅니다.
DHCPv6 서버가 빠른 할당을 지원하는 경우 할당된 IPv6 주소 및 접두사 및 기타 구성 매개 변수가 포함된 REPLY 메시지로 응답합니다.
DHCP 서버 액세스
DHCP 서버에 대한 스위치의 액세스는 다음 세 가지 방법으로 구성할 수 있습니다.
스위치, DHCP 클라이언트 및 DHCP 서버가 모두 동일한 VLAN에 있습니다
스위치, DHCP 클라이언트 및 DHCP 서버가 모두 동일한 VLAN의 구성원 인 경우 DHCP 서버는 다음 두 가지 방법 중 하나로 스위치에 연결할 수 있습니다.
VLAN에서 DHCP 스누핑을 활성화하려면 계층에서 [edit vlans vlan-name forwarding-options]
dhcp-security 명령문을 구성합니다.
( 그림 1 참조) 서버는 DHCP 클라이언트(서버에서 IP 주소를 요청하는 호스트 또는 네트워크 디바이스)에 연결된 스위치와 동일한 스위치에 직접 연결됩니다. VLAN은 DHCP 스누핑을 통해 신뢰할 수 없는 액세스 포트를 보호할 수 있습니다. 트렁크 포트는 기본적으로 신뢰할 수 있는 포트로 구성됩니다.
( 그림 2 참조) 서버는 DHCP 클라이언트가 연결된 스위치(스위치 1)에 트렁크 포트를 통해 연결된 중간 스위치(스위치 2)에 연결됩니다. 스위치 2는 전송 스위치로 사용되고 있습니다. VLAN은 스위치 1의 신뢰할 수 없는 액세스 포트를 보호하기 위해 DHCP 스누핑에 대해 활성화되어 있습니다. 트렁크 포트는 기본적으로 신뢰할 수 있는 포트로 구성됩니다. 그림 2에서 ge-0/0/11은 신뢰할 수 있는 트렁크 포트입니다.


스위치가 DHCP 서버 역할을 합니다.
스위치에서 DHCP 로컬 서버 옵션을 구성하여 스위치가 확장 DHCP 로컬 서버로 작동하도록 할 수 있습니다. 그림 3에서 DHCP 클라이언트는 신뢰할 수 없는 액세스 포트를 통해 확장된 DHCP 로컬 서버에 연결됩니다.

스위치가 릴레이 에이전트 역할을 함
스위치는 DHCP 클라이언트 또는 DHCP 서버가 레이어 3 인터페이스(스위치 또는 라우터)를 통해 스위치에 연결되면 릴레이 에이전트 역할을 합니다. 스위치의 레이어 3 인터페이스는 라우팅된 VLAN 인터페이스(RVI)로 구성되며, 이는 통합 라우팅 및 브리징(IRB) 인터페이스라고도 합니다. 트렁크 인터페이스는 기본적으로 신뢰할 수 있습니다.
스위치는 다음 두 가지 시나리오에서 릴레이 에이전트 역할을 할 수 있습니다.
DHCP 서버와 클라이언트가 서로 다른 VLAN에 있습니다.
스위치는 라우터에 연결되고, 라우터는 차례로 DHCP 서버에 연결됩니다. 그림 4를 참조하십시오.

DHCP 스누핑 데이터베이스에 정적 IP 주소 추가
정적(고정) IP 주소를 추가하고 DHCP 스누핑 데이터베이스의 고정 MAC 주소에 바인딩할 수 있습니다. 이러한 바인딩은 데이터베이스에서 정적으로 레이블이 지정되는 반면, DHCP 스누핑 프로세스를 통해 추가된 바인딩은 동적으로 레이블이 지정됩니다. 정적 IPv6 주소 할당은 DHCPv6에서도 사용할 수 있습니다. 구성 세부 사항은 DHCP 스누핑을 위한 정적 DHCP IP 주소 구성을 참조하십시오.
변경 내역 표
기능 지원은 사용 중인 플랫폼과 릴리스에 따라 결정됩니다. 기능 탐색기 를 사용하여 플랫폼에서 기능이 지원되는지 확인하세요.
[edit vlans vlan-name forwarding-options dhcp-security]
구성하여 다른 포트 보안 기능을 활성화하지 않고도 VLAN에서 DHCP 스누핑 또는 DHCPv6 스누핑을
dhcp-security
구성할 수 있습니다.