목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

구성

네트워크 다이어그램

설정

서버 구성

Win2012 R2 구성 옵션 1 - VTEP당 고유 릴레이 IP/SVI

Win2012 R2 구성 옵션 2 - 상담원 회선 ID 필드 일치

Windows Server 2016 구성

Linux DHCP 서버

스위치 구성

DHCP 클라이언트가 테넌트 VRF에 있고 DHCP 서버가 Layer 3 기본 VRF에 있음

DHCP 클라이언트와 DHCP 서버가 동일한 테넌트 VRF에 있음

한 테넌트 VRF의 DHCP 클라이언트 및 다른 테넌트 VRF의 DHCP 서버

한 테넌트 VRF의 DHCP 클라이언트 및 다른 비 VXLAN VRF의 DHCP 서버

관련 정보

소개

이 문서에서는 여러 시나리오에서 이더넷 VPN(EVPN) VXLAN(Virtual Extensible LAN)을 위한 DHCP(Dynamic Host Configuration Protocol) 컨피그레이션과 Win2012 및 Win2016 DHCP 서버의 특정 측면에 대해 설명합니다.

사전 요구 사항

요구 사항

EVPN/VXLAN 및 DHCP에 대한 지식이 있는 것이 좋습니다.

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.

- C9300

- C9400

- C9500

- C9600

- MSFT Windows Server 2012 R2

- MSFT Windows Server 2016

- Cisco IOS XE 16.9.x 이상에서 사용 가능한 기능

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

구성

네트워크 다이어그램

설정

이제 DHCP 클라이언트와 서버 간의 메시지 흐름을 검토하겠습니다. 4단계가 있습니다.

이는 클라이언트와 서버가 동일한 서브넷에 있는 경우에 적용되지만 일반적으로 그렇지 않습니다. 대부분의 경우 DHCP 서버는 클라이언트와 동일한 서브넷에 있지 않으며 레이어 2가 아닌 레이어 3 라우팅 경로를 통해 연결할 수 있어야 합니다. 이 경우 DHCP 릴레이 기능이 필요합니다. DHCP 릴레이(스위치 또는 라우터) 기능은 라우터가 가능한 udp 캡슐화 유니캐스트로 브로드캐스트를 변환하여 DHCP 서버로 전송합니다. 오늘날 네트워크에서 널리 사용되는 컨피그레이션입니다.

DHCP 및 EVPN/VXLAN 패브릭 관련 과제:

일반적으로 DHCP 서버는 L3 네트워크를 통해 EVPN 패브릭에 연결됩니다. 즉, DHCP 릴레이 기능을 사용하여 레이어 2 DHCP 브로드캐스트 패킷을 레이어 3 유니캐스트 라우팅 가능 패킷으로 변환해야 합니다.

DHCP 릴레이 기능을 사용하면 클라이언트, 릴레이 및 서버 간의 DHCP 통화 흐름은 다음과 비슷하게 작동합니다.

릴레이된 후에는 패킷의 소스 IP가 릴레이 IP입니다. 그러나 DAG(Distributed Anycast GW)를 사용하므로 일반적인 소스 IP가 고유하지 않으므로 VXLAN/EVPN 구축에 문제가 발생합니다. 모든 VTEP SVI 소스 IP가 동일하기 때문에 DHCP 서버의 회신 패킷이 가장 가까운 Leaf로 전달될 수 있습니다.

고유하지 않은 소스 문제를 해결하려면 Leaf당 릴레이된 DHCP 패킷에 대해 고유한 IP 주소를 사용할 수 있어야 합니다. 다른 문제는 GIADDR 교체와 관련이 있습니다. DHCP 서버에서 IP 주소를 할당하려면 올바른 풀을 선택해야 합니다. 게이트웨이 IP 주소(giaddr)를 다루는 풀에서 수행됩니다. EVPN 패브릭의 경우 SVI의 IP 주소여야 하지만, 릴레이 후에는 gipaddr이 릴레이 IP 주소(이 경우 고유한 루프백)로 교체됩니다.

DHCP 서버에 어떤 풀을 사용해야 하는지 어떻게 알 수 있습니까?

이 문제를 해결하기 위해 옵션 82가 사용된다. 주로 다음과 같은 중요한 하위 옵션이 있습니다.

- 1 - 상담원 회선 ID. VXLAN/EVPN의 경우 이 서브스크립션은 VNI ID를 전송합니다

- 5 - (또는 cisco 독점 제품의 경우 150). DHCP 패킷이 보낸 실제 서브넷이 있는 링크 선택 하위 옵션

- 11 - (또는 cisco 독점 제품의 경우 152). DHCP 서버의 주소가 있는 서버 식별자 재정의 서브스크립션

- 151 - VRF 이름/VPN ID. 이 서브스크립션에는 VRF 이름/VPN ID가 있습니다.

DHCP 릴레이에서 DHCP 서버로의 패킷 캡처에서는 이미지에 표시된 것처럼 DHCP 패킷에 있는 다양한 옵션을 확인할 수 있습니다.

스위치 설정:

- 옵션 82에는 올바른 DHCP 풀을 선택하고 서버에서 올바른 리프로 패킷을 반환하는 데 필요한 모든 정보가 있습니다.

- 이는 DHCP 서버가 옵션 82 정보를 처리할 수 있는 경우에만 작동하지만 모든 서버가 이를 완전히 지원하는 것은 아닙니다(예: win2012 r2).

ip dhcp relay information option vpn        <<<  adds the VRF name/VPN ID to the option 82

ip dhcp relay information option            <<< enables option 82

!

ip dhcp snooping vlan 101-102,201-202

ip dhcp snooping

!

vlan configuration 101

member evpn-instance 101 vni 10101

!

interface Loopback101

vrf forwarding green

ip address 10.1.251.1 255.255.255.255

!

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101    <<< DHCP relay source is unique Loopback

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.12               <<< 192.168.20.12 - DHCP server

서버 구성

Win2012 R2 구성 옵션 1 - VTEP당 고유 릴레이 IP/SVI

win2012의 주요 문제는 옵션 82가 완전히 지원되지 않으므로 "링크 선택" 하위 옵션(5 또는 Cisco 소유 - 150)을 사용하여 DHCP 서버에서 올바른 풀을 선택할 수 없다는 것입니다.

이러한 문제를 해결하기 위해 다음과 같은 방법을 사용할 수 있습니다.

- 릴레이 IP 주소의 범위를 만들어야 합니다. 그렇지 않으면 DHCP가 DHCP GIADDR과 일치하는 풀을 찾지 못하고 패킷을 무시합니다. 릴레이 IP 풀에서 할당되지 않도록 하려면 DHCP에서 전체 IP 범위를 제외해야 합니다. 이 풀을 RELAY_POOL이라고 합니다.

- 할당하려는 IP 범위에 대한 범위를 만들어야 합니다. 이 풀을 IP_POOL이라고 합니다.

- 대범위를 만들어야 하며 두 범위(RELAY_POOL 및 IP_POOL)를 모두 포함해야 합니다.

DHCP 패킷이 서버에서 처리되는 방식을 살펴보겠습니다.

1. 서버에서 DHCP 패킷을 수신합니다.

2. GIADDR에 따라 각 풀 RELAY_POOL이 적절한 대범위에서 선택됩니다.

3. RELAY_POOL에 사용 가능한 IP 주소가 없으므로(전체 범위가 제외되었음을 기억하십니까?) 동일한 대범위의 IP_POOL로 대체됩니다.

4. 주소는 각 슈퍼풀에서 할당되어 다시 릴레이로 전송됩니다.

이 방법의 큰 단점은 릴레이 주소를 기반으로 DHCP 풀이 선택되기 때문에 vtep당 VLAN/VNI에 대해 고유한 루프백이 있어야 한다는 것입니다.

이 옵션을 사용하면 릴레이 IP 주소에 대한 큰 IP 범위가 사용됩니다.

옵션 1. win2012 r2를 구성하는 방법에 대한 단계별 지침.

릴레이 주소에 대한 DHCP 범위를 만듭니다. 마우스 오른쪽 버튼을 클릭하고 이미지에 표시된 대로 New Scope(새 범위)를 선택합니다.

이미지에 표시된 대로 다음 을 선택합니다.

이미지에 표시된 대로 의미 있는 이름, 설명을 입력한 후 다음을 선택합니다.

릴레이 풀에 대한 IP 주소 정보를 입력합니다. 이 예에서 넷마스크는 /24이지만 이미지에 표시된 것처럼 더 크거나 작을 수 있습니다(네트워크 크기에 따라 다름).

풀에서 모든 범위를 제외합니다. 이는 중요합니다. 그렇지 않으면 이 풀에서 IP 주소를 할당할 수 있습니다.

이미지에 표시된 대로 임대 시간(기본적으로 8일)을 구성합니다.

DNS/WINS와 같은 DHCP 옵션 매개변수를 구성할 수 있습니다(이 예에서는 건너뜀).

이미지에 표시된 대로 범위를 활성화합니다.

이미지에 표시된 대로 컨피그레이션을 완료합니다.

이제 대범위를 생성합니다. 이미지에 표시된 대로 마우스 오른쪽 버튼을 선택하고 새 대범위를 선택합니다.

이미지에 표시된 대로 다음 을 선택합니다.

이미지에 표시된 대로 대범위에 대한 의미 있는 이름을 선택합니다.

대범위에 추가할 범위를 선택합니다.

이미지에 표시된 대로 설정을 완료합니다.

IP 주소가 할당된 DHCP 풀을 생성합니다. 마우스 오른쪽 단추를 클릭하고 새 범위...를 선택합니다. 그림에 표시된 것과 같습니다.

이미지에 표시된 대로 다음 을 선택합니다.

이미지에 표시된 대로 의미 있는 이름 및 설명을 선택합니다.

이미지에 표시된 대로 클라이언트에 IP 주소를 할당할 풀에 대한 네트워크 및 마스크를 지정합니다.

이미지에 표시된 대로 풀에서 DEFAULT 게이트웨이의 IP 주소를 제외합니다(이 예에서는 10.1.101.1).

이미지에 표시된 대로 임대 타이머를 지정합니다.

선택적으로 DNS/WINS를 지정할 수 있습니다(이 예에서는 생략됨).

이미지에 표시된 대로 컨피그레이션을 완료합니다.

풀을 생성한 후에는 해당 풀에 대한 정책을 생성해야 합니다.

- 정책에서 상담원 회선 ID [1]이(가) 일치함

- 여러 Vlan/VNI가 있는 경우 릴레이 IP 주소에 대한 하위 풀과 각 VLAN/VNI에 대한 할당에 대한 실제 IP 범위가 포함된 수퍼풀을 생성해야 합니다

- 이 예에서는 VNI 10101 및 10102

스위치 설정:

ip dhcp relay information option vpn   <<<  add the VRF name/VPN ID to the option 82

ip dhcp relay information option       <<< enables option 82

!

ip dhcp snooping vlan 101-102,201-202

ip dhcp snooping

!

vlan configuration 101

member evpn-instance 101 vni 10101

!

interface Loopback101

vrf forwarding green

ip address 10.1.251.1 255.255.255.255

!

interface Loopback102

vrf forwarding green

ip address 10.1.251.2 255.255.255.255

!

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101  <<< DHCP relay source is unique Loopback101

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.12             <<< 192.168.20.12 - DHCP server

!

interface Vlan102

vrf forwarding green

ip dhcp relay source-interface Loopback102  <<< DHCP relay source is unique Loopback102

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.12             <<< 192.168.20.12 - DHCP server

Win2012 R2 구성 옵션 2 - 상담원 회선 ID 필드 일치

- 마지막 접근 방식의 단점은 고유한 루프백의 활용률이 높기 때문에 다른 옵션은 에이전트 회로 ID 필드를 확인하는 것입니다.

- 단계는 동일하지만 릴레이 IP가 아닌 에이전트 회로 ID 필드를 기반으로 하지 않고 범위 선택을 위한 정책 생성을 추가합니다.

정책 생성 이미지에 표시된 대로 풀을 마우스 오른쪽 버튼으로 클릭하고 New Policy(새 정책)를 선택합니다.

이미지에 표시된 대로 정책에 대한 의미 있는 이름 및 설명을 선택합니다.

이미지에 표시된 대로 새 조건을 추가합니다.

이미지에 표시된 대로 적절한 회로 ID를 입력합니다(와일드카드 추가(*) 상자를 잊지 마십시오).

이 숫자를 선택한 이유에 대한 설명:

Wireshark에서 010a000800002775010a0000과 같은 에이전트 회로 ID를 볼 수 있습니다. 여기서 이 값이 파생됩니다(00002775 16진수 = 10101 10진수는 VLAN 101에 대해 구성된 VNI 10101과 같음).

에이전트 회로 ID 서브스크립션은 VXLAN VN에 대해 다음 형식으로 인코딩됩니다.

서브보젼 유형

길이

회로 ID 유형

길이

VNI

모드

포트

1바이트

1바이트

1바이트

1바이트

4바이트

2 바이트

2 바이트

01

0a

00

08

00002775

*

*

IP 주소가 할당되는 IP 범위를 구성합니다. 이 컨피그레이션이 없으면 현재 범위에 할당할 수 없습니다.

이미지에 표시된 대로 이 단계에서 표준 DHCP 옵션을 선택할 수도 있습니다.

이미지에 표시된 대로 Finish(마침)를 선택합니다.

이미지에 표시된 다른 범위에 대해서도 유사한 컨피그레이션을 수행해야 합니다.

이 시나리오에서는 VTEP당 VNI/SVI당 하나의 고유한 루프백이 아니라 VTEP당 하나의 고유한 IP 주소만 SVI 수에 사용할 수 있습니다.

스위치 설정:

ip dhcp relay information option vpn     <<<  adds the VRF name/VPN ID to the option 82

ip dhcp relay information option         <<< enables option 82

!

ip dhcp snooping vlan 101-102,201-202

ip dhcp snooping

!

vlan configuration 101

member evpn-instance 101 vni 10101

!

interface Loopback101

vrf forwarding green

ip address 10.1.251.1 255.255.255.255

!

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101 <<< DHCP relay source

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.12            <<< 192.168.20.12 - DHCP server

!

interface Vlan102

vrf forwarding green

ip dhcp relay source-interface Loopback101 <<< DHCP relay source

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.12            <<< 192.168.20.12 - DHCP server

Windows Server 2016 구성

- Windows Server 2016은 옵션 82 하위 옵션 5(Cisco 전용 150) "Link selection(링크 선택)"을 지원합니다. 이는 풀 선택에 고유한 릴레이 IP 주소를 사용하지 않음을 의미합니다. 대신 "Link selection(링크 선택)" 하위 옵션이 사용되므로 컨피그레이션이 대폭 간소화됩니다.

- 릴레이 IP 주소에 대한 풀이 남아 있는 경우, 그렇지 않으면 DHCP 패킷이 어떤 범위와도 일치하지 않고 처리되지 않습니다.

이 예제에서는 "link selection" 옵션을 사용하는 방법을 보여 줍니다.

이미지에 표시된 대로 릴레이 IP 주소에 대한 IP 주소 풀을 시작합니다.

이미지에 표시된 대로 다음 을 선택합니다.

이미지에 표시된 대로 범위에 대한 의미 있는 이름 및 설명을 선택합니다.

그림과 같이 IP 릴레이에 사용되는 IP 주소 공간을 입력합니다.

이미지에 표시된 대로 이 범위에서 할당되지 않도록 범위에서 모든 범위를 제외합니다.

이미지에 표시된 대로 DNS/WINS etc 매개변수(이 예에서는 생략됨) 옵션을 선택할 수도 있습니다.

이미지에 표시된 대로 Finish(마침)를 선택합니다.

이제 릴레이 범위가 준비되었습니다.

- 다음으로, 클라이언트가 IP 주소를 가져오는 풀을 생성합니다.

- 마우스 오른쪽 버튼을 클릭하고 이미지에 표시된 대로 New Scope(새 범위)를 선택합니다.

이미지에 표시된 대로 다음 을 선택합니다.

이미지에 표시된 대로 풀에 대한 의미 있는 이름 및 설명을 선택합니다.

이미지에 표시된 대로 vlan101에 할당할 IP 주소 공간을 입력합니다.

이미지에 표시된 대로 범위에서 기본 게이트웨이 IP를 제외합니다.

이미지에 표시된 대로 임대 시간을 설정합니다.

DNS/WINS 등과 같은 추가 매개변수를 이미지에 표시된 대로 구성할 수 있습니다(이 예에서는 건너뜀).

이미지에 표시된 대로 설정을 완료하려면 Finish를 선택합니다.

릴레이 IP 주소당 풀이 구성되지 않았으며 16진수로 일치하지 않습니다. 풀 선택은 하위 옵션 링크 선택을 기반으로 합니다.

새 풀을 추가할 수 있으며, 이미지에 표시된 대로 추가 컨피그레이션이 필요하지 않습니다.

Linux DHCP 서버

Linux에서 isc-dhcp-server에 대한 컨피그레이션을 검토합니다.

- 릴레이 옵션 82를 지원합니다. 여기서 가장 중요한 것은 링크 선택 하위 옵션입니다. 특정 필드에 대해 에이전트 회선 ID 정보 및 16진수 마스크/일치 작업을 수행할 수 있습니다(예: win2012에 대해 수행됨). 실무적인 관점에서 보면 상담원 회선 ID 정보를 직접 사용하는 것보다 82[5]를 사용하는 것이 훨씬 쉽습니다.

- 링크 선택 서브스크립션의 컨피그레이션은 서브넷 정의에서 수행됩니다.

이 예에서는 ISC 서버가 Ubuntu Linux에서 사용됩니다.

DHCP 서버를 설치합니다.

apt-get install isc-dhcp-server

DHCP 서버를 구성하려면 /etc/dhcp/dhcpd.conf을 편집합니다. (Vim 편집기는 예제에 사용됨)

vim /etc/dhcp/dhcpd.conf

구성 snip(일반 구성은 생략):

subnet 10.1.101.0 netmask 255.255.255.0 {

option agent.link-selection 10.1.101.0;  <<< suboption 82[5] definition

option routers 10.1.101.1;

option subnet-mask 255.255.255.0;

range 10.1.101.16 10.1.101.254;

}

subnet 10.1.102.0 netmask 255.255.255.0 {

option agent.link-selection 10.1.102.0;  <<< suboption 82[5] definition

option routers 10.1.102.1;

option subnet-mask 255.255.255.0;

range 10.1.102.16 10.1.102.254;

}

subnet 10.2.201.0 netmask 255.255.255.0 {

option agent.link-selection 10.2.201.0;  <<< suboption 82[5] definition

option routers 10.2.201.1;

option subnet-mask 255.255.255.0;

range 10.2.201.16 10.2.201.254;

}

subnet 10.2.202.0 netmask 255.255.255.0 {

option agent.link-selection 10.2.202.0;  <<< suboption 82[5] definition

option routers 10.2.202.1;

option subnet-mask 255.255.255.0;

range 10.2.202.16 10.2.202.254;

}

스위치 구성

일반적으로 지원되는 시나리오는 여기에서 검토합니다.

1. DHCP 클라이언트는 테넌트 VRF에 있으며 DHCP 서버는 Layer 3 기본 VRF에 있습니다

2. DHCP 클라이언트는 테넌트 VRF에 있으며 DHCP 서버는 동일한 테넌트 VRF에 있습니다

3. DHCP 클라이언트가 테넌트 VRF에 있고 DHCP 서버가 다른 테넌트 VRF에 있음

4. DHCP 클라이언트는 테넌트 VRF에 있고 DHCP 서버는 기본이 아닌 비 VXLAN VRF에 있습니다

이러한 시나리오의 경우 스위치 측에서 DHCP 릴레이 컨피그레이션이 필요합니다.

가장 간단한 옵션 번호 2에 대한 DHCP 컨피그레이션입니다.

ip dhcp relay information option      <<< Enables insertion of option 82 into the packet

ip dhcp relay information option vpn  <<< Enables insertion of vpn name/id to the packet - option 82[151]

기본적으로 옵션 82 하위 옵션 Link Selection 및 Server ID Override는 기본적으로 Cisco 소유 제품입니다(각각 150 및 152).

어떤 이유로든 DHCP 서버가 Cisco 독점 옵션을 이해하지 못하면 표준 옵션으로 변경할 수 있습니다.

ip dhcp compatibility suboption link-selection standard <<< "Link Selection" suboption

ip dhcp compatibility suboption server-override standard <<< "Server ID Override" suboption

필요한 VLAN에 대해 DHCP 스누핑을 활성화해야 합니다.

ip dhcp snooping vlan 101-102,201-202

ip dhcp snooping

DHCP-relay source-interface 전역 컨피그레이션을 사용할 수 있습니다.

ip dhcp-relay source-interface Loopback101

또는 인터페이스별로 구성할 수도 있습니다(인터페이스 컨피그레이션은 전역 컨피그레이션을 재정의합니다).

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101 <<< DHCP source-interface

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.20

IP 연결 b/w 릴레이 IP 주소와 DHCP 서버가 양방향으로 있는지 확인합니다.

Leaf-01#ping vrf green 192.168.20.20 source lo101

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 192.168.20.20, timeout is 2 seconds:

Packet sent with a source address of 10.1.251.1

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms

인터페이스 컨피그레이션에서 DHCP 서버의 주소가 구성됩니다. 이 명령에는 3가지 옵션이 있을 수 있습니다. 클라이언트와 서버는 동일한 VRF에 있습니다.

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.20         <<< DHCP server ip address

클라이언트와 서버는 서로 다른 VRF에 있습니다(이 예에서는 녹색의 클라이언트, 빨간색의 서버).

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101

ip address 10.1.101.1 255.255.255.0

ip helper-address vrf red 192.168.20.20   <<< DHCP server is reachable over vrf RED

end

VRF의 클라이언트 및 GRT(Global Routing Table)의 서버:

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101

ip address 10.1.101.1 255.255.255.0

ip helper-address global 192.168.20.20  <<< DHCP server is reachable over global routing table

end

이제 모든 옵션에 대한 일반적인 컨피그레이션을 살펴보겠습니다.

DHCP 클라이언트가 테넌트 VRF에 있고 DHCP 서버가 Layer 3 기본 VRF에 있음

이 경우, GRT의 Lo0는 릴레이 소스이다. DHCP 릴레이는 일부 인터페이스에 대해 전역적으로 + 구성됩니다.

예를 들어, vlan101 명령의 경우 "IP DHCP 릴레이 소스-인터페이스 루프백0"이 누락되지만 전역 컨피그레이션을 사용합니다.

ip dhcp-relay source-interface Loopback0                 <<< DHCP relay source interface is Lo0

ip dhcp relay information option vpn                     <<< adds the vpn suboption to option 82

ip dhcp relay information option                         <<< enables DHCP option 82

ip dhcp compatibility suboption link-selection standard  <<< switch to standard option 82[5]

ip dhcp compatibility suboption server-override standard <<< switch to standard option 82[11]

ip dhcp snooping vlan 101-102,201-202                    <<< enables dhcp snooping for vlans

ip dhcp snooping                                         <<< enables dhcp snooping globally

!

interface Loopback0

ip address 172.16.255.3 255.255.255.255

ip ospf 1 area 0

!

interface Vlan101

vrf forwarding green

ip address 10.1.101.1 255.255.255.0

ip helper-address global 192.168.20.20           <<< DHCP is reachable over GRT

!

interface Vlan102

vrf forwarding green

ip dhcp relay source-interface Loopback0

ip address 10.1.102.1 255.255.255.0

ip helper-address global 192.168.20.20           <<< DHCP is reachable over GRT

!

interface Vlan201

vrf forwarding red

ip dhcp relay source-interface Loopback0

ip address 10.2.201.1 255.255.255.0

ip helper-address global 192.168.20.20           <<< DHCP is reachable over GRT

따라서 DHCP 릴레이 패킷은 GRT를 통해 동일한 SRC IP/DST IP를 통해 전송되지만 하위 옵션은 다릅니다.

vlan101의 경우:

- Vlan102의 경우:

Vlan201의 경우(VLAN 101 및 102와 마찬가지로 녹색이 아닌 vrf 빨간색으로 표시됨):

패킷 캡처는 Spine-01에서 인터페이스에서 Leaf-01로 가져왔습니다.

Spine-01#sh mon cap TAC buff br | i DHCP

5401 4.402431 172.16.255.3 b^F^R 192.168.20.20 DHCP 396 DHCP Discover - Transaction ID 0x1feb

5403 4.403134 192.168.20.20 b^F^R 172.16.255.3 DHCP 362 DHCP Offer - Transaction ID 0x1feb

5416 4.418117 172.16.255.3 b^F^R 192.168.20.20 DHCP 414 DHCP Request - Transaction ID 0x1feb

5418 4.418608 192.168.20.20 b^F^R 172.16.255.3 DHCP 362 DHCP ACK - Transaction ID 0x1feb

코어의 DHCP 패킷은 VXLAN 캡슐화가 없는 IP입니다.

Spine-01#sh mon cap TAC buff det | b Frame 5401:

Frame 5401: 396 bytes on wire (3168 bits), 396 bytes captured (3168 bits) on interface 0

<...skip...>

[Protocols in frame: eth:ethertype:ip:udp:dhcp]

Ethernet II, Src: 10:b3:d5:6a:8f:e4 (10:b3:d5:6a:8f:e4), Dst: 7c:21:0d:92:b2:e4 (7c:21:0d:92:b2:e4)

<...skip...>

Internet Protocol Version 4, Src: 172.16.255.3, Dst: 192.168.20.20

<...skip...>

User Datagram Protocol, Src Port: 67, Dst Port: 67

<...skip...>

Dynamic Host Configuration Protocol (Discover)

<...skip...>

이 접근 방식의 큰 장점은 서로 다른 VRF와 전역 간에 경로가 새지 않고 서로 다른 테넌트 VRF에 동일한 릴레이 IP 주소를 사용할 수 있다는 것입니다.

DHCP 클라이언트와 DHCP 서버가 동일한 테넌트 VRF에 있음

이 경우, 테넌트 VRF에 릴레이 IP 주소를 사용하는 것이 좋습니다.

스위치 설정:

ip dhcp relay information option vpn                     <<< adds the vpn suboption to option 82

ip dhcp relay information option                         <<< enables DHCP option 82

ip dhcp compatibility suboption link-selection standard  <<< switch to standard option 82[5]

ip dhcp compatibility suboption server-override standard <<< switch to standard option 82[11]

ip dhcp snooping vlan 101-102,201-202                    <<< enables dhcp snooping for vlans

ip dhcp snooping                                         <<< enables dhcp snooping globally

!

interface Loopback101

vrf forwarding green

ip address 10.1.251.1 255.255.255.255

!

interface Vlan101

vrf forwarding green

ip dhcp relay source-interface Loopback101

ip address 10.1.101.1 255.255.255.0

ip helper-address 192.168.20.20                      <<< DHCP is reachable over vrf green

!

interface Vlan102

vrf forwarding green

ip dhcp relay source-interface Loopback101

ip address 10.1.102.1 255.255.255.0

ip helper-address 192.168.20.20                      <<< DHCP is reachable over vrf green

vlan101의 경우:

vlan102의 경우:

Spine-01-Leaf-01 인터페이스의 패킷 캡처:

Spine-01#sh monitor capture TAC buffer brief | i DHCP

2 4.287466 10.1.251.1 b^F^R 192.168.20.20 DHCP 446 DHCP Discover - Transaction ID 0x1894

3 4.288258 192.168.20.20 b^F^R 10.1.251.1 DHCP 412 DHCP Offer - Transaction ID 0x1894

4 4.307550 10.1.251.1 b^F^R 192.168.20.20 DHCP 464 DHCP Request - Transaction ID 0x1894

5 4.308385 192.168.20.20 b^F^R 10.1.251.1 DHCP 412 DHCP ACK - Transaction ID 0x1894

코어의 DHCP 패킷에는 VXLAN 캡슐화가 포함됩니다.

Frame 2: 446 bytes on wire (3568 bits), 446 bytes captured (3568 bits) on interface 0

<...skip...>

[Protocols in frame: eth:ethertype:ip:udp:vxlan:eth:ethertype:ip:udp:dhcp]

Ethernet II, Src: 10:b3:d5:6a:8f:e4 (10:b3:d5:6a:8f:e4), Dst: 7c:21:0d:92:b2:e4 (7c:21:0d:92:b2:e4)

<...skip...>

Internet Protocol Version 4, Src: 172.16.254.3, Dst: 172.16.254.5 <<< VTEP IP addresses

<...skip...>

User Datagram Protocol, Src Port: 65283, Dst Port: 4789

<...skip...>

Virtual eXtensible Local Area Network

Flags: 0x0800, VXLAN Network ID (VNI)

0... .... .... .... = GBP Extension: Not defined

.... .... .0.. .... = Don't Learn: False

.... 1... .... .... = VXLAN Network ID (VNI): True

.... .... .... 0... = Policy Applied: False

.000 .000 0.00 .000 = Reserved(R): 0x0000

Group Policy ID: 0

VXLAN Network Identifier (VNI): 50901 <<<<<<<<<<<< L3VNI for VRF green

Reserved: 0

<--- Inner header started --->

Ethernet II, Src: 10:b3:d5:6a:00:00 (10:b3:d5:6a:00:00), Dst: 7c:21:0d:bd:27:48 (7c:21:0d:bd:27:48)

<...skip...>

Internet Protocol Version 4, Src: 10.1.251.1, Dst: 192.168.20.20

<...skip...>

User Datagram Protocol, Src Port: 67, Dst Port: 67

<...skip...>

Dynamic Host Configuration Protocol (Discover)

<...skip...>

한 테넌트 VRF의 DHCP 클라이언트 및 다른 테넌트 VRF의 DHCP 서버

이 예에서 클라이언트는 vrf 빨간색으로 표시되고 서버는 vrf 녹색으로 표시됩니다.

두 가지 옵션이 있습니다.

- 릴레이 IP를 클라이언트 vrf에 유지하고 경로 유출을 구성하여 복잡성 가중

- 서버 vrf에서 릴레이 IP 유지(첫 번째 사례에서 GRT에 대해 수행한 것과 유사)

많은 클라이언트 VRF가 지원되고 경로 유출이 필요하지 않으므로 두 번째 접근 방식을 선택하는 것이 더 간단합니다.

스위치 설정:

ip dhcp relay information option vpn                     <<< adds the vpn suboption to option 82

ip dhcp relay information option                         <<< enables DHCP option 82

ip dhcp compatibility suboption link-selection standard  <<< switch to standard option 82[5]

ip dhcp compatibility suboption server-override standard <<< switch to standard option 82[11]

ip dhcp snooping vlan 101-102,201-202                    <<< enables dhcp snooping for vlans

ip dhcp snooping                                         <<< enables dhcp snooping globally

!

interface Loopback101

vrf forwarding green

ip address 10.1.251.1 255.255.255.255

!

interface Vlan201

vrf forwarding red

ip dhcp relay source-interface Loopback101

ip address 10.2.201.1 255.255.255.0

ip helper-address vrf green 192.168.20.20                <<< DHCP is reachable over vrf green

vlan201의 경우:

Spine-01 - Leaf-01 인터페이스의 패킷 캡처:

Spine-01#sh mon cap TAC buff br | i DHCP

2 0.168829 10.1.251.1 b^F^R 192.168.20.20 DHCP 444 DHCP Discover - Transaction ID 0x10db

3 0.169450 192.168.20.20 b^F^R 10.1.251.1 DHCP 410 DHCP Offer - Transaction ID 0x10db

4 0.933121 10.1.251.1 b^F^R 192.168.20.20 DHCP 462 DHCP Request - Transaction ID 0x10db

5 0.933970 192.168.20.20 b^F^R 10.1.251.1 DHCP 410 DHCP ACK - Transaction ID 0x10db

이 예에서 코어의 패킷은 VXLAN 캡슐화됩니다.

Frame 2: 446 bytes on wire (3552 bits), 444 bytes captured (3552 bits) on interface 0

<...skip...>

[Protocols in frame: eth:ethertype:ip:udp:vxlan:eth:ethertype:ip:udp:dhcp]

Ethernet II, Src: 10:b3:d5:6a:8f:e4 (10:b3:d5:6a:8f:e4), Dst: 7c:21:0d:92:b2:e4 (7c:21:0d:92:b2:e4)

<...skip...>

Internet Protocol Version 4, Src: 172.16.254.3, Dst: 172.16.254.5  <<< VTEP IP addresses

<...skip...>

User Datagram Protocol, Src Port: 65283, Dst Port: 4789

<...skip...>

Virtual eXtensible Local Area Network

Flags: 0x0800, VXLAN Network ID (VNI)

0... .... .... .... = GBP Extension: Not defined

.... .... .0.. .... = Don't Learn: False

.... 1... .... .... = VXLAN Network ID (VNI): True

.... .... .... 0... = Policy Applied: False

.000 .000 0.00 .000 = Reserved(R): 0x0000

Group Policy ID: 0

VXLAN Network Identifier (VNI): 50901                              <<< L3VNI for VRF green

Reserved: 0

<--- Inner header started --->

Ethernet II, Src: 10:b3:d5:6a:00:00 (10:b3:d5:6a:00:00), Dst: 7c:21:0d:bd:27:48 (7c:21:0d:bd:27:48)

<...skip...>

Internet Protocol Version 4, Src: 10.1.251.1, Dst: 192.168.20.20

<...skip...>

User Datagram Protocol, Src Port: 67, Dst Port: 67

<...skip...>

Dynamic Host Configuration Protocol (Discover)

<...skip...>

한 테넌트 VRF의 DHCP 클라이언트 및 다른 비 VXLAN VRF의 DHCP 서버

이번 건은 지난번과 매우 유사합니다. 주요 차이점은 패킷에 VXLAN 캡슐화가 없다는 것입니다. 순수 IP 또는 다른 것(MPLS/GRE/등)이지만 컨피그레이션 측면에서는 동일합니다.

이 예에서 클라이언트는 vrf 빨간색으로 표시되고 서버는 vrf 녹색으로 표시됩니다.

두 가지 옵션이 있습니다.

- 릴레이 IP가 클라이언트 vrf에 있으며 경로 유출을 구성하여 복잡성이 증가함

- 릴레이 IP는 서버 vrf에 있습니다(첫 번째 사례의 GRT에 대해 수행된 것과 유사).

많은 클라이언트 VRF가 지원되고 경로 유출이 필요하지 않으므로 두 번째 접근 방식을 선택하는 것이 더 간단합니다.

스위치 설정:

ip dhcp relay information option vpn                     <<< adds the vpn suboption to option 82

ip dhcp relay information option                         <<< enables DHCP option 82

ip dhcp compatibility suboption link-selection standard  <<< switch to standard option 82[5]

ip dhcp compatibility suboption server-override standard <<< switch to standard option 82[11]

ip dhcp snooping vlan 101-102,201-202                    <<< enable dhcp snooping for vlans

ip dhcp snooping                                         <<< enable dhcp snooping globally

!

interface Loopback101

vrf forwarding green

ip address 10.1.251.1 255.255.255.255

!

interface Vlan201

vrf forwarding red

ip dhcp relay source-interface Loopback101

ip address 10.2.201.1 255.255.255.0

ip helper-address vrf green 192.168.20.20               <<< DHCP is reachable over vrf green

관련 정보

- RFC 3046

- RFC 3527

- https://docs.microsoft.com

- 기술 지원 및 문서 − Cisco Systems