Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
703f63c
Feat(eos_designs): Add support for ipv6 addresses in l3_interfaces in…
Shivani-gslab Apr 22, 2026
f8c0f7e
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
Shivani-gslab Apr 27, 2026
446b331
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
Shivani-gslab Apr 28, 2026
5d2d766
fixing error msg in test
Shivani-gslab Apr 28, 2026
258a812
minor update
Shivani-gslab Apr 29, 2026
a6cea90
variable update
Shivani-gslab Apr 30, 2026
8fa7d28
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
Shivani-gslab May 4, 2026
8fed1b2
Addressing comments
Shivani-gslab May 6, 2026
714f8c0
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
MaheshGSLAB May 7, 2026
694785c
updated decription anf moved checks for l3_interfaces
Shivani-gslab May 7, 2026
2732b9e
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
MaheshGSLAB May 13, 2026
641a417
Fixing the filtered_tenants with ipv6 addressed
Shivani-gslab May 14, 2026
de94b36
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
laxmikantchintakindi May 14, 2026
651b6e9
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
MaheshGSLAB May 15, 2026
702bf07
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
Shivani-gslab May 28, 2026
e1e536a
schema fix
Shivani-gslab May 28, 2026
e1485b3
Apply suggestions from code review
Shivani-gslab Jun 3, 2026
27b0fd5
Adding helper to validate with node length
Shivani-gslab Jun 3, 2026
f0e64aa
added support for ipv6_acli_in and ipv6_acl_out
Shivani-gslab Jun 3, 2026
c4cf2c9
creating helper methods for ipv4/ipv6
Shivani-gslab Jun 11, 2026
f2db67b
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
gmuloc Jun 15, 2026
aaf39e6
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
gmuloc Jun 16, 2026
152a1bc
Apply suggestions from code review
Shivani-gslab Jun 22, 2026
aa7df7c
Fixing comments, separating helper
Shivani-gslab Jun 22, 2026
c5fa15c
refactor
Shivani-gslab Jun 22, 2026
75446f8
Updated comment
Shivani-gslab Jun 23, 2026
31980dc
Updated description and docstring
Shivani-gslab Jun 25, 2026
c96c6bc
Adding todo
Shivani-gslab Jun 25, 2026
ad04090
Updated description
Shivani-gslab Jun 30, 2026
d58b804
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
gmuloc Jul 7, 2026
b1d72f4
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
MaheshGSLAB Jul 10, 2026
331ade0
create separate helper for ospf and pim
Shivani-gslab Jul 13, 2026
f978f18
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
MaheshGSLAB Jul 14, 2026
5b257f2
Merge branch 'devel' into l3_interfaces_ipv6_n/w_services
gmuloc Jul 21, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,5 @@ tenants:
node: net-srv-l3-po-sub-interface-without-ip

expected_error_message: >-
'l3leaf.nodes[name=net-srv-l3-po-sub-interface-without-ip].l3_port_channels[name=Port-Channel1111.100].ip_address' is required but was not found.
'l3leaf.nodes[name=net-srv-l3-po-sub-interface-without-ip].l3_port_channels[name=Port-Channel1111.100].ip_address or .ipv6_addresses'
is required but was not found.
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
!
no enable password
no aaa root
!
vlan internal order ascending range 1006 1199
!
transceiver qsfp default-mode 4x10G
!
service routing protocols model multi-agent
!
hostname network-services-l3-interfaces
!
vrf instance MGMT
!
interface Ethernet11
description dual-stack-default-vrf
no shutdown
no switchport
ip address 10.0.11.1/31
ipv6 address 2001:db8:11::1/64
!
interface Loopback0
description ROUTER_ID
no shutdown
ip address 192.168.200.1/32
!
interface Loopback1
description VXLAN_TUNNEL_SOURCE
no shutdown
ip address 192.168.201.1/32
!
interface Vxlan1
description network-services-l3-interfaces_VTEP
vxlan source-interface Loopback1
vxlan udp-port 4789
vxlan vrf default vni 1
!
ip virtual-router mac-address 00:dc:00:00:00:0b
!
ip routing
no ip routing vrf MGMT
!
ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY
seq 10 permit 192.168.200.0/24 eq 32
seq 20 permit 192.168.201.0/24 eq 32
!
ipv6 unicast-routing
!
route-map RM-CONN-2-BGP permit 10
match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY
!
router bfd
multihop interval 300 min-rx 300 multiplier 3
!
router bgp 200
router-id 192.168.200.1
update wait-install
no bgp default ipv4-unicast
maximum-paths 4
redistribute connected route-map RM-CONN-2-BGP
!
end
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,19 @@ interface Port-Channel23
no shutdown
no switchport
!
interface Port-Channel33
description ipv6-cloud_Po33
no shutdown
no switchport
ipv6 address 2001:db8:1::1/64
!
interface Port-Channel44
description dual-stack-cloud_Po44
no shutdown
no switchport
ip address 10.10.30.2/29
ipv6 address 2001:db8:2::1/64
!
interface Port-Channel77
description L3 Port-Channel without ip_address
no shutdown
Expand Down Expand Up @@ -150,6 +163,13 @@ interface Port-Channel1113
ip address 1.1.1.13/29
ip ospf area 0.0.0.0
!
interface Port-Channel2000
description ipv6-cloud-testing_Po2000
no shutdown
no switchport
vrf TESTING
ipv6 address 2001:db8:3::1/64
!
interface Ethernet4
description man descr inet-clout eth8
no shutdown
Expand Down Expand Up @@ -193,6 +213,21 @@ interface Ethernet24
no shutdown
channel-group 23 mode on
!
interface Ethernet33
description ipv6-cloud_Ethernet33
no shutdown
channel-group 33 mode active
!
interface Ethernet45
description dual-stack-cloud_Ethernet45
no shutdown
channel-group 44 mode active
!
interface Ethernet46
description ipv6-cloud-testing_Ethernet46
no shutdown
channel-group 2000 mode active
!
interface Ethernet77
description underlay-peer_Ethernet77
no shutdown
Expand Down Expand Up @@ -243,6 +278,9 @@ ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY
seq 10 permit 192.168.255.0/24 eq 32
seq 20 permit 192.168.254.0/24 eq 32
!
ipv6 unicast-routing
ipv6 unicast-routing vrf TESTING
!
route-map RM-CONN-2-BGP permit 10
match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY
!
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
aaa_root:
disabled: true
config_end: true
enable_password:
disabled: true
ethernet_interfaces:
- name: Ethernet11
Comment thread
ClausHolbechArista marked this conversation as resolved.
description: dual-stack-default-vrf
shutdown: false
ip_address: 10.0.11.1/31
ipv6_addresses:
- 2001:db8:11::1/64
metadata:
peer_type: l3_interface
switchport:
enabled: false
hostname: network-services-l3-interfaces
ip_igmp_snooping:
globally_enabled: true
ip_routing: true
ip_virtual_router_mac_address: 00:dc:00:00:00:0b
ipv6_unicast_routing: true
loopback_interfaces:
- name: Loopback0
description: ROUTER_ID
shutdown: false
ip_address: 192.168.200.1/32
- name: Loopback1
description: VXLAN_TUNNEL_SOURCE
shutdown: false
ip_address: 192.168.201.1/32
metadata:
is_deployed: true
fabric_name: EOS_DESIGNS_UNIT_TESTS
prefix_lists:
- name: PL-LOOPBACKS-EVPN-OVERLAY
sequence_numbers:
- sequence: 10
action: permit 192.168.200.0/24 eq 32
- sequence: 20
action: permit 192.168.201.0/24 eq 32
route_maps:
- name: RM-CONN-2-BGP
sequence_numbers:
- sequence: 10
type: permit
match:
- ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY
router_bfd:
multihop:
interval: 300
min_rx: 300
multiplier: 3
router_bgp:
as: '200'
router_id: 192.168.200.1
maximum_paths:
paths: 4
updates:
wait_install: true
bgp:
default:
ipv4_unicast: false
redistribute:
connected:
enabled: true
route_map: RM-CONN-2-BGP
service_routing_protocols_model: multi-agent
transceiver_qsfp_default_mode_4x10: true
vlan_internal_order:
allocation: ascending
range:
beginning: 1006
ending: 1199
vrfs:
- name: MGMT
ip_routing: false
vxlan_interface:
vxlan1:
description: network-services-l3-interfaces_VTEP
vxlan:
source_interface: Loopback1
udp_port: 4789
vrfs:
- name: default
vni: 1
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,26 @@ ethernet_interfaces:
peer: inet-cloud
peer_interface: Ethernet24
peer_type: l3_port_channel_member
- name: Ethernet33
description: ipv6-cloud_Ethernet33
shutdown: false
channel_group:
id: 33
mode: active
metadata:
peer: ipv6-cloud
peer_interface: Ethernet33
peer_type: l3_port_channel_member
- name: Ethernet45
description: dual-stack-cloud_Ethernet45
shutdown: false
channel_group:
id: 44
mode: active
metadata:
peer: dual-stack-cloud
peer_interface: Ethernet45
peer_type: l3_port_channel_member
- name: Ethernet4
description: man descr inet-clout eth8
shutdown: false
Expand All @@ -114,6 +134,16 @@ ethernet_interfaces:
peer: inet-cloud
peer_interface: Ethernet9
peer_type: l3_port_channel_member
- name: Ethernet46
description: ipv6-cloud-testing_Ethernet46
shutdown: false
channel_group:
id: 2000
mode: active
metadata:
peer: ipv6-cloud-testing
peer_interface: Ethernet46
peer_type: l3_port_channel_member
flow_tracking:
sampled:
sample: 10000
Expand Down Expand Up @@ -159,6 +189,7 @@ ip_igmp_snooping:
globally_enabled: true
ip_routing: true
ip_virtual_router_mac_address: 00:dc:00:00:00:0a
ipv6_unicast_routing: true
loopback_interfaces:
- name: Loopback0
description: ROUTER_ID
Expand Down Expand Up @@ -233,6 +264,29 @@ port_channel_interfaces:
peer_type: l3_port_channel
switchport:
enabled: false
- name: Port-Channel33
description: ipv6-cloud_Po33
shutdown: false
ipv6_addresses:
- 2001:db8:1::1/64
metadata:
peer: ipv6-cloud
peer_interface: Po33
peer_type: l3_port_channel
switchport:
enabled: false
- name: Port-Channel44
description: dual-stack-cloud_Po44
shutdown: false
ip_address: 10.10.30.2/29
ipv6_addresses:
- 2001:db8:2::1/64
metadata:
peer: dual-stack-cloud
peer_interface: Po44
peer_type: l3_port_channel
switchport:
enabled: false
- name: Port-Channel1111
description: Description list
shutdown: false
Expand Down Expand Up @@ -336,6 +390,18 @@ port_channel_interfaces:
peer_type: l3_port_channel
switchport:
enabled: false
- name: Port-Channel2000
description: ipv6-cloud-testing_Po2000
shutdown: false
vrf: TESTING
ipv6_addresses:
- 2001:db8:3::1/64
metadata:
peer: ipv6-cloud-testing
peer_interface: Po2000
peer_type: l3_port_channel
switchport:
enabled: false
- name: Port-Channel22.100
description: inet-cloud-sub100_Po22.100
shutdown: false
Expand Down Expand Up @@ -451,6 +517,7 @@ vrfs:
ip_routing: false
- name: TESTING
ip_routing: true
ipv6_routing: true
metadata:
tenants:
- L3PO
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
# This yml file is being used to test ipv6_addresses support for l3_interfaces under network_services
type: l3leaf
l3leaf:
defaults:
loopback_ipv4_pool: 192.168.200.0/24
vtep_loopback_ipv4_pool: 192.168.201.0/24
virtual_router_mac_address: 00:dc:00:00:00:0b
nodes:
- name: network-services-l3-interfaces
id: 1
bgp_as: 200

tenants:
- name: L3INTF
mac_vrf_vni_base: 30000
vrfs:
- name: default
vrf_id: 1
bgp:
enabled: false
l3_interfaces:
# IPv6-only in default VRF: tests that ipv6_unicast_routing global flag is set
- interfaces: [Ethernet10]
nodes: [network-services-l3-interfaces]
ipv6_addresses: ["2001:db8:10::1/64"]
enabled: true
description: "ipv6-only-default-vrf"
# Dual-stack (IPv4 + IPv6) in default VRF
- interfaces: [Ethernet11]
nodes: [network-services-l3-interfaces]
ip_addresses: ["10.0.11.1/31"]
ipv6_addresses: ["2001:db8:11::1/64"]
enabled: true
description: "dual-stack-default-vrf"
- name: L3INTF_TEST
vrf_id: 2
l3_interfaces:
# IPv6-only in non-default VRF: tests VRF-level ipv6_routing set and ipv6_unicast_routing global flag also set
- interfaces: [Ethernet12]
nodes: [network-services-l3-interfaces]
ipv6_addresses: ["2001:db8:12::1/64"]
enabled: true
description: "ipv6-only-non-default-vrf"
Loading
Loading