ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Microsoft Windows Server 2016/2019 Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ DHCP ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Π΄Π»Ρ VXLAN (DFA)
ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ β ΡΠΏΡΠΎΡΡΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ DHCP ΡΠ΅ΡΠ²ΠΈΡΠ° Π΄Π»Ρ ΡΠ°Π±ΡΠΈΠΊΠΈ VXLAN BGP EVPN and DFA Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Microsoft Windows Server 2016/2019.
Π ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ DHCP ΡΠ΅ΡΠ²ΠΈΡ Π½Π° Π±Π°Π·Π΅ Microsoft Windows Server 2012 Π΄Π»Ρ ΡΠ°Π±ΡΠΈΠΊΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ SuperScope, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΏΡΠ» Loopback (Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠ»Π΅ β ΠΈΠ·ΡΠΌΠΈΠ½ΠΊΠ° ΡΡΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΡΠ»Π° Π²ΡΠ΅Ρ IP Π°Π΄ΡΠ΅ΡΠΎΠ² ΠΏΡΠ»Π° (excluded IP address = pool)) ΠΈ ΠΏΡΠ»Ρ Π²ΡΠ΄Π°ΡΠΈ IP Π°Π΄ΡΠ΅ΡΠΎΠ² Π΄Π»Ρ ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ΅ΠΉ (Π·Π΄Π΅ΡΡ ΠΈΠ·ΡΠΌΠΈΠ½ΠΊΠ° β Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ policy β Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΠ»ΡΡΡΡΡΡΡΡ DHCP Relay Circuit ID ΠΈ ΡΡΠΎΡ DHCP relay Circuit ID ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ VNI Π΄Π»Ρ ΡΠ΅ΡΠΈ, Ρ. Π΅. Π΄Π»Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠ»Π° ΡΡΠΎΡ DHCP Relay Circuit ID Π±ΡΠ΄Π΅Ρ ΡΡΡΡ Π΄ΡΡΠ³ΠΈΠΌ).
To configure DHCP on Windows server.
1. Create a super scope. Within the super scope, create scope B, S1, S2, S3, β¦, Sn for the subnet B and the subnets for each segment.
2. In scope B, specify the 'Exclusion Range' to be the entire address range (so that the offered address range must not be from this scope).
3. For every segment scope Si, specify a policy that matches on Agent Circuit ID with value of '0108000600XXXXXX', where '0108000600' is a fixed value for all segments, the 6 numbers "XXXXXX" is the segment ID value in hexadecimal. Also ensure to check the Append wildcard(*) check box.
4. Set the policy address range to the entire range of the scope.
service dhcp
ip dhcp relay
ip dhcp relay information option
ip dhcp relay information option vpn
interface loopback10
vrf member VRF1
ip address 10.120.0.1/32 tag 1234567
interface Vlan12
no shutdown
vrf member VRF1
no ip redirects
ip address 10.120.251.1/24 tag 1234567
no ipv6 redirects
fabric forwarding mode anycast-gateway
ip dhcp relay address 10.0.0.5
ip dhcp relay source-interface loopback10
β’ Sub-option 151(0x97) - Virtual Subnet Selection (Defined in RFC#6607)
Used to convey VRF related information to the DHCP server in an MPLS-VPN and VXLAN EVPN multi-tenant environment.
β’ Sub-option 11(0xb) - Server ID Override (Defined in RFC#5107.)
The server identifier (server ID) override sub-option allows the DHCP relay agent to specify a new value for the server ID option, which is inserted by the DHCP server in the reply packet. This sub-option allows the DHCP relay agent to act as the actual DHCP server such that the renew requests will come to the relay agent rather than the DHCP server directly. The server ID override sub-option contains the incoming interface IP address, which is the IP address on the relay agent that is accessible from the client. Using this information, the DHCP client sends all renew and release request packets to the relay agent. The relay agent adds all of the appropriate sub-options and then forwards the renew and release request packets to the original DHCP server. For this function, Ciscoβs proprietary implementation is sub-option 152(0x98). You can use the ip dhcp relay sub-option type cisco command to manage the function.
Sub-option 5(0x5) - Link Selection (Defined in RFC#3527.)
The link selection sub-option provides a mechanism to separate the subnet/link on which the DHCP client resides from the gateway address (giaddr), which can be used to communicate with the relay agent by the DHCP server. The relay agent will set the sub-option to the correct subscriber subnet and the DHCP server will use that value to assign an IP address rather than the giaddr value. The relay agent will set the giaddr to its own IP address so that DHCP messages are able to be forwarded over the network. For this function, Ciscoβs proprietary implementation is sub-option 150(0x96). You can use the ip dhcp relay sub-option type ciscocommand to manage the function.
ΠΠ΄ΡΠ΅Ρ ΡΠ΅ΡΠΈ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ IP Π°Π΄ΡΠ΅Ρ.
ΠΠ²ΠΎΠ»ΡΡΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Cisco Π² ΡΠ°ΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ DHCP Π½Π° Microsoft Windows Server 2012
If multiple DHCP Scopes are required for multiple subnets, you need to create one LoopbackX per subnet/vlan on all LEAFS and create a superscope with a loopbackX range scope and actual client IP subnet scope per vlan.
Create Superscope for all scopes you want to use for Option 82-based policies.
Note
The Superscope should combine all scopes and act as the administrative boundary.
Let us assume the switch is using the address from subnet B (it can be the backbone subnet, management subnet, or any customer designated subnet for this purpose) to communicate with the Windows DHCP server. In DFA we have subnets S1, S2, S3, β¦, Sn for segment s1, s2, s3, β¦, sn.
To configure DHCP on Windows server.
1. Create a super scope. Within the super scope, create scope B, S1, S2, S3, β¦, Sn for the subnet B and the subnets for each segment.
2. In scope B, specify the 'Exclusion Range' to be the entire address range (so that the offered address range must not be from this scope).
3. For every segment scope Si, specify a policy that matches on Agent Circuit ID with value of '0108000600XXXXXX', where '0108000600' is a fixed value for all segments, the 6 numbers "XXXXXX" is the segment ID value in hexadecimal. Also ensure to check the Append wildcard(*) check box.
4. Set the policy address range to the entire range of the scope.
DHCP Π² Microsoft Windows Server (superscope & policy)
Superscope is an administrative feature of a DHCP server that can be used to group multiple scopes as a single administrative entity. Superscope allows a DHCP server to provide leases from more than one scope to clients on a single physical network. Scopes added to a superscope are called member scopes.
The DHCP Server role in Windows Server 2012 introduces a new feature that allows you to create IPv4 policies that specify custom IP address and option assignments for DHCP clients based on a set of conditions.
The policy based assignment (PBA) feature allows you to group DHCP clients by specific attributes based on fields contained in the DHCP client request packet. PBA enables targeted administration and greater control of the configuration parameters delivered to network devices with DHCP.
ΠΠΎΠ»ΠΈΡΠΈΠΊΠΈ β ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°Π·Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ IP Π°Π΄ΡΠ΅ΡΠ° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°. ΠΠ½ΠΆΠ΅Π½Π΅ΡΡ Cisco ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Π² Windows Server 2012 Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ VNI (Virtual Network Identifier).
NEXUS-9000V-SW-1# show ip dhcp relay statistics
----------------------------------------------------------------------
Message Type Rx Tx Drops
----------------------------------------------------------------------
Discover 8 8 0
Offer 8 8 0
Request(*) 0 0 0
Ack 0 0 0
Release(*) 0 0 0
Decline 0 0 0
Inform(*) 0 0 0
Nack 0 0 0
----------------------------------------------------------------------
Total 16 16 0
----------------------------------------------------------------------
DHCP L3 FWD:
Total Packets Received : 0
Total Packets Forwarded : 0
Total Packets Dropped : 0
Non DHCP:
Total Packets Received : 0
Total Packets Forwarded : 0
Total Packets Dropped : 0
DROP:
DHCP Relay not enabled : 0
Invalid DHCP message type : 0
Interface error : 0
Tx failure towards server : 0
Tx failure towards client : 0
Unknown output interface : 0
Unknown vrf or interface for server : 0
Max hops exceeded : 0
Option 82 validation failed : 0
Packet Malformed : 0
Relay Trusted port not configured : 0
DHCP Request dropped on MCT : 0
* - These counters will show correct value when switch
receives DHCP request packet with destination ip as broadcast
address. If request is unicast it will be HW switched
NEXUS-9000V-SW-1#
ΠΠΎΡΠ΅ΠΌΡ Π² Microsoft Windows Server 2012 Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ°ΠΊΠ°Ρ ΡΠ»ΠΎΠΆΠ½Π°Ρ?
Π Microsoft Windows Server 2012 Π΅ΡΠ΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ RFC#3527 (Option 82 Sub-option 5(0x5) β Link Selection)
ΠΠΎ ΡΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Policy.
ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ:
Microsoft Windows Server 2012 Π΅ΡΡΡ ΡΡΠΏΠ΅Ρ-ΠΏΡΠ» (SuperScope) Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΅ΡΡΡ Π°Π΄ΡΠ΅ΡΠ° Loopback ΠΈ ΠΏΡΠ»Ρ Π΄Π»Ρ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠ΅ΡΠ΅ΠΉ.
ΠΠ°ΠΊ ΡΠΏΡΠΎΡΠ°Π΅ΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π² Microsoft Windows Server 2016/2019?
Π Microsoft Windows Server 2016 ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» RFC#3527. Π’. Π΅. Windows Server 2016 ΡΠΌΠ΅Π΅Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΡΠ΅ΡΡ ΠΈΠ· Π°ΡΡΠΈΠ±ΡΡΠ° Option 82 Sub-option 5(0x5) β Link Selection
Note
All relay agent IP addresses (GIADDR) must be part of an active DHCP scope IP address range. Any GIADDR outside of the DHCP scope IP address ranges is considered a rogue relay and Windows DHCP Server will not acknowledge DHCP client requests from those relay agents.
A special scope can be created to "authorize" relay agents. Create a scope with the GIADDR (or multiple if the GIADDR's are sequential IP addresses), exclude the GIADDR address(es) from distribution, and then activate the scope. This will authorize the relay agents while preventing the GIADDR addresses from being assigned.
Π’.Π΅. Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½Π° Microsoft Windows Server 2016/2019 DHCP ΠΏΡΠ»Π° Π΄Π»Ρ VXLAN BGP EVPN ΡΠ°Π±ΡΠΈΠΊΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ»ΡΠΊΠΎ: