DHCPv6 relay agents relay all packets that are coming from DHCPv6 clients over the access-interfaces toward external DHCPv6
servers. DHCPv6 relay agents request IP addresses (::/128) through IANA allocation for the DHCPv6 clients. DHCPv6 relay agents
also receive response packets from the DHCPv6 servers and forward the packets toward DHCPv6 clients over BVI interfaces. DHCPv6
relay agents act as stateless, by default, for DHCPv6 clients. DHCPv6 clients do not maintain any DHCPv6 binding and respective
route entry for the allocated IP addresses. You can enable a DHCPv6 client to get a particular IPv6 address assigned by the
DHCPv6 server over a Bridge Virtual Interface (BVI) through Internet Assigned Numbers Authority (IANA) address allocation.
Therefore, the DHCPv6 relay agent acts as a stateful relay agents and maintains DHCPv6 binding and respective route entry
for the allocated IPv6 addresses.
Configuration Example
To configure DHCPv6 Relay Over BVI for IANA Address Allocation, use the following steps.
-
Enter the interface configuration mode and configure a BVI interface.
-
Assign an IPv6 address to the BVI interface.
-
Route the L2 access interface to the L3 BVI interface of the relay agent.
-
Enter the DHCP IPv6 configuration mode and then create a DHCP IPv6 Stateful relay profile.
-
Attach the relay profile to a server address.
-
Configure a stateful relay agent by enabling route allocation through IANA.
-
Attach the BVI Interface to the DHCPv6 relay profile.
Configuration
/* Enter the interface configuration mode and configure a BVI interface. */
Router# configure
Router(config)# interface BVI1
Assign an IPv6 address to the BVI interface.
Router(config-if)# ipv6 address 2001:db8::2/64
Router(config-if)# commit
Router(config-if)# exit
/* Route the L2 access interface to the L3 BVI interface of the relay agent. */
Router(config)# l2vpn bridge group 1
Router(config-l2vpn-bg)# bridge-domain 1
Router(config-l2vpn-bg-bd)# interface hundredGigE 0/0/0/1.100
Router(config-l2vpn-bg-bd-ac)# commit
Router(config-l2vpn-bg-bd-ac)# exit
Router(config-l2vpn-bg-bd)# routed interface BVI1
Router(config-l2vpn-bg-bd)# exit
Router(config-l2vpn-bg)# exit
Router(config-l2vpn-bg)# exit
Router(config-l2vpn)# exit
Router(config)#
/* Enter the DHCP IPv6 configuration mode and then create a DHCP IPv6 Stateful relay profile. */
Router(config)# dhcp ipv6
Router(config-dhcpv6)# profile RELAY1 relay
/* Attach the relay profile to a server address. */
Router(config-dhcpv6-relay-profile)# helper-address vrf default 2001:DB8::1
/* Configure a stateful relay agent by enabling route allocation through IANA. */
Router(config-dhcpv6-relay-profile)# iana-route-add
Router(config-dhcpv6-relay-profile)# exit
/* Attach the BVI Interface to the DHCPv6 relay profile. */
Router(config-dhcpv6-relay-profile)# interface BVI1 relay profile RELAY1
Router(config-dhcpv6-relay-profile)# commit
Running Configuration
Router# show running configuration
interface BVI1
ipv6 address 2001:db8::2/64
!
l2vpn
bridge group 1
bridge-domain 1
interface HundredGigE0/0/0/1.100
!
routed interface BVI1
!
!
!
!
dhcp ipv6
profile RELAY1 relay
helper-address vrf default 2001:db8::1
iana-route-add
!
interface BVI1 relay profile RELAY1
!
Verification
Use the following command to verify that more than one DHCP client is bridged over BVI:
Router# show dhcp ipv6 relay binding
Thu Nov 21 05:48:38.463 UTC
Summary:
Total number of clients: 500
IPv6 Address: 2000::418f/128 (BVI31)
Client DUID: 000100015dcf28de001094003295
MAC Address: 0010.9400.3295
IAID: 0x0
VRF: default
Lifetime: 600 secs (00:10:00)
Expiration: 533 secs (00:08:53)
L2Intf AC: Bundle-Ether3.1
SERG State: NONE
SERG Intf State: SERG-NONE
IPv6 Address: 2000::4190/128 (BVI31)
Client DUID: 000100015dcf28de001094003296
MAC Address: 0010.9400.3296
IAID: 0x0
VRF: default
Lifetime: 600 secs (00:10:00)
Expiration: 531 secs (00:08:51)
L2Intf AC: Bundle-Ether3.1
SERG State: NONE
SERG Intf State: SERG-NONE
IPv6 Address: 2000::4191/128 (BVI31)
Client DUID: 000100015dcf28de001094003297
MAC Address: 0010.9400.3297
IAID: 0x0
VRF: default
Lifetime: 600 secs (00:10:00)
Expiration: 448 secs (00:07:28)
L2Intf AC: Bundle-Ether3.1
SERG State: NONE
SERG Intf State: SERG-NONE
IPv6 Address: 2000::4192/128 (BVI31)
Client DUID: 000100015dcf28de001094003298
MAC Address: 0010.9400.3298
IAID: 0x0
VRF: default
Lifetime: 600 secs (00:10:00)
Expiration: 439 secs (00:07:19)
L2Intf AC: Bundle-Ether3.1
SERG State: NONE
SERG Intf State: SERG-NONE
Use the following command to verify that a unique IPv6 address is assigned to a client due to IANA allocation:
Router# show route ipv6
Mon Oct 21 06:16:43.617 UTC
Codes: C - connected, S - static, R - RIP, B - BGP, (>) - Diversion path
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - ISIS, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, su - IS-IS summary null, * - candidate default
U - per-user static route, o - ODR, L - local, G - DAGR, l - LISP
A - access/subscriber, a - Application route
M - mobile route, r - RPL, t - Traffic Engineering, (!) - FRR Backup path
Gateway of last resort is not set
A 2000::/64
[1/0] via fe80::1, 00:00:37, BVI700
A 2000::1/128
[1/0] via fe80::210:94ff:fe00:8, 00:00:12, BVI700
C 2007:3019::/64 is directly connected,
00:00:37, Loopback1
L 2007:3019::1/128 is directly connected,
00:00:37, Loopback1
C 7001:6018::/64 is directly connected,
00:00:37, BVI700
L 7001:6018::1/128 is directly connected,
00:00:37, BVI700
C 7001:6019::/64 is directly connected,
00:00:37, TenGigE0/0/0/2.2
L 7001:6019::1/128 is directly connected,
00:00:37, TenGigE0/0/0/2.2