Skip to content

Commit 1939654

Browse files
authored
Release notes for 26.04 (#3306)
- New bgp.advertise node attribute (14+ platforms) - Extreme Networks EXOS initial platform support - EVPN control-plane-only nodes - Static routes on Nexus OS, Nokia SR OS/SRL, OpenBSD - EVPN/VXLAN-over-IPv6 on FRRouting - BIRD OSPF area parameters - Junos BGP confederations and route import - bgp.originate dual-stack and VRF-aware improvements - New netlab report: nodes/IDs/devices/images
1 parent a81b393 commit 1939654

4 files changed

Lines changed: 165 additions & 3 deletions

File tree

.github/skills/release-notes/SKILL.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,10 @@ description: Create release notes for a new netlab release
99
* Create release notes from commits after the last `release_xx.xx` tag
1010
* Categorize commits without the explicit category (usually 'Doc' or 'Fix') in the title into one of the categories based on their content and impact.
1111
* Try to identify breaking changes.
12-
* As a new policy, remove PR references from all sections except bug and documentation fixes (older release notes/templates may still show the previous style; follow this rule going forward).
12+
* Remove PR references from all sections except bug and documentation fixes (older release notes/templates may still show the previous style; follow this rule going forward).
1313
* Remove the "Doc: " or "Fix: " part of the commit title
14+
15+
# IMPORTANT
16+
17+
* DO NOT make up cross-reference anchors. Use only anchors already defined in the documentation files. Tell the user if you think something is crucial enough to warrant a new anchor.
18+
* DO NOT modify files outside the ‘docs’ directory. For example, DO NOT change the `netsim/__init__.py` file.

docs/platforms.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
| Cisco IOS-on-Linux L2 image (IOL L2)[](caveats-iol) | ioll2 | full |
2525
| Cisco IOSv [](caveats-iosv) | iosv | full |
2626
| [Cisco IOSvL2](https://developer.cisco.com/docs/modeling-labs/iosvl2/#iosvl2) [](caveats-iosv) | iosvl2 | full |
27-
| Cisco IOS XRv/XRd [](caveats-iosxr) | iosxr | minimal |
27+
| Cisco IOS XRv/XRd [](caveats-iosxr) | iosxr | full (XRd only) |
2828
| Cisco Nexus 9300v [](caveats-nxos) | nxos | best effort |
2929
| Cumulus Linux 4.x/5.x [](caveats-cumulus) | cumulus | end of life |
3030
| Cumulus Linux 5.x (NVUE) [](caveats-cumulus-nvue) | cumulus_nvue | minimal |
@@ -33,7 +33,7 @@
3333
| Fortinet FortiOS [](caveats-fortios) | fortios | minimal |
3434
| FRRouting (FRR) [](caveats-frr) | frr | full |
3535
| [Generic Linux host](generic-linux-devices) | linux | full |
36-
| Juniper cRPD | crpd | best effort |
36+
| Juniper cRPD | crpd | full |
3737
| Juniper vMX [](caveats-vmx) | vmx | best effort |
3838
| Juniper vPTX (vJunos EVO) [](caveats-vptx) | vptx | full |
3939
| Juniper vSRX 3.0 [](caveats-vsrx) | vsrx | best effort |

docs/release.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
Release Notes
22
=============
33

4+
**Release 26.04 (2026-04-12)**
5+
6+
* New [**bgp.advertise**](bgp-advertise-prefix) node/VRF attribute — advertise prefixes from IP routing tables into BGP on most platforms.
7+
* The **bgp.originate** node attribute can be used to [originate IPv4 and IPv6 prefixes](bgp-advertise-prefix) in global and VRF BGP instances.
8+
* Extreme Networks EXOS initial platform support
9+
* Static routes on Nexus OS, Nokia SR OS, SR Linux, OpenBSD
10+
* EVPN/VXLAN-over-IPv6 on FRRouting
11+
12+
[More details](release-26.04)
13+
414
**Release 26.03 (2026-03-10)**
515

616
* [New Cisco IOS XR features](release-26.03-ios-xr): SR-MPLS, MPLS/VPN, MPLS 6PE, EVPN over MPLS, VRRP, full BGP routing policy support
@@ -121,6 +131,7 @@ For older releases, check the [release notes archive](release-archive.md).
121131
:caption: Individual release notes
122132
:maxdepth: 1
123133
134+
release/26.04.md
124135
release/26.03.md
125136
release/26.02.md
126137
release/26.01.md

docs/release/26.04.md

Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
# Changes in Release 26.04
2+
3+
```eval_rst
4+
.. contents:: Table of Contents
5+
:depth: 2
6+
:local:
7+
```
8+
9+
(release-26.04)=
10+
## New Functionality
11+
12+
* **Extreme Networks EXOS** is supported as a Vagrant box or containerlab node with OSPF, VLAN, and VRRP configuration (by [Seb d'Argoeuves](https://github.com/sdargoeuves)).
13+
* The new [**bgp.advertise**](bgp-advertise-prefix) node attribute allows you to advertise networks in the IP routing table into BGP. It’s supported on most platforms.
14+
* The **bgp.originate** attribute is now [dual-stack and VRF-aware](bgp-advertise-prefix), allowing you to originate IPv4 and IPv6 prefixes into per-VRF BGP instances.
15+
* Static routes (including VRF and discard routes) are now supported on **Nexus OS**, **Nokia SR OS**, **Nokia SR Linux**, and **OpenBSD**.
16+
* **EVPN/VXLAN-over-IPv6** is now supported on **FRRouting**.
17+
* **BIRD** now supports [OSPF area parameters](plugin-ospf-areas).
18+
* **Junos** now supports BGP confederations and [route import](routing_import) into global and VRF BGP instances.
19+
20+
**Minor improvements**
21+
22+
* **EVPN control-plane-only nodes** (route reflectors) can now be configured for EVPN/VXLAN running over IPv6.
23+
* New *devices* [**netlab report**](netlab-report): nodes, node IDs, devices, and images — a quick summary of all nodes in the lab topology.
24+
* The **netlab show modules** command now splits module support tables into groups and multiple tables for better readability.
25+
26+
(release-26.04-device-features)=
27+
## New Device Features
28+
29+
Bird:
30+
* OSPF area parameters
31+
32+
Extreme Networks EXOS:
33+
* Initial platform support
34+
* OSPF, VLANs, VRRP configuration
35+
36+
FRRouting:
37+
* EVPN/VXLAN-over-IPv6
38+
* Upgraded to release 10.6.0
39+
40+
Junos:
41+
* BGP confederations
42+
* Route import into global and VRF BGP instances
43+
* `bgp.advertise` support
44+
45+
Nexus OS:
46+
* Static routes (including VRF and discard routes)
47+
* `bgp.advertise` support
48+
49+
Nokia SR Linux:
50+
* Static routes (including VRF and discard routes)
51+
* `bgp.advertise` support
52+
* Enable redistribution of static routes into IGPs
53+
* Upgraded default container release to 26.3.1
54+
55+
Nokia SR OS:
56+
* Static routes (including VRF and discard routes)
57+
* Enable redistribution of static routes into IGPs
58+
* `bgp.advertise` support
59+
60+
OpenBSD:
61+
* Discard static routes
62+
* `bgp.advertise` support
63+
64+
VyOS:
65+
* Prepended AS path can contain as single AS number
66+
67+
(release-26.04-device-fixes)=
68+
## Fixes in Configuration Templates
69+
70+
Bird:
71+
* Cleanup of OSPF configuration template
72+
73+
Cisco IOS XE:
74+
* Fix BGP neighbor TCP-AO configuration
75+
* **next-hop-self** is required on EVPN/MPLS AF to make L3VRFs work with BGP-speaking CE-routers
76+
77+
Cisco IOS XR:
78+
* The `route-map` keyword used in route redistribution commands should be `route-policy`
79+
* IOS XRd is fully tested and supported
80+
81+
Dell OS10:
82+
* Dell OS10 needs the "normalize" step to shut down layer-2 interfaces in VLAN 1
83+
84+
FortiOS:
85+
* The FortiOS configuration templates have been renamed from `fortinet.fortios.fortios` to `fortios`.
86+
87+
Junos:
88+
* Use standard interface names for cRPD loopbacks
89+
* Fix global routing instance policy names
90+
* Merge BGP advertise and propagate policies
91+
* cRPD is fully tested and supported
92+
93+
Nokia SR Linux:
94+
* Fix BGP policies for release 26.3
95+
* Fix inter-instance policies for release 26.3
96+
97+
Nokia SR OS:
98+
* Fix BGP TCP-AO configuration
99+
100+
(release-26.04-breaking)=
101+
## Potentially Breaking Changes
102+
103+
We had to make a few changes to support the changed **bgp.originate** attribute and the new **bgp.advertise** attribute. There should be no impact unless you modified the _netlab_ device configuration templates.
104+
105+
* The **bgp.originate** attribute is no longer present in the device data when the device supports *discard* static routes. When needed, _netlab_ adds entries to the **routing.static** list to create the routing table prefixes needed for BGP prefix origination and auto-enables the *routing* module.
106+
* We had to change the chains of Junos policies in global and VRF BGP instances.
107+
108+
(bug-fixes-26.04)=
109+
## Bug Fixes
110+
111+
* Enable EVPN on IPv6 BGP sessions on control-plane-only nodes (#3302)
112+
* Use topology-level `vxlan.use_v6_vtep` attribute in VXLAN transformation (#3301)
113+
* Handle node routing policies referring to missing global policies (#3299)
114+
* Sort modules after plugin `post_transform` step (#3298)
115+
* Use shared `ansible_extra_vars` function across providers (#3293)
116+
* Rearrange search list components for provider-related templates (#3292)
117+
* Add topology file information to `netlab status` printout (#3260)
118+
* `netlab status` crashed after a reboot killed containers (#3247)
119+
* Disable PHY control frames on EOS configured with FastCLI
120+
* Using an invalid variable in an error message crashed netlab
121+
* Skip disabled routing protocol blocks when iterating over routing policy data
122+
* Skip all meta-devices when displaying device/module support (#3266)
123+
* Set explicit `evpn.transport` feature on VXLAN-only devices (#3229)
124+
* Always check the EVPN transport module before configuring EVPN (#3228)
125+
* Display supported EVPN transports in `netlab show modules`
126+
* Auto-generate node RD when its value is empty (#3227)
127+
* Use `subnet_of` instead of `overlaps` for reserved IP range checks (#3223)
128+
* Add node-level `router_id` when missing (#3224)
129+
* Add a newline after each node in `netlab exec` output (#3222)
130+
* Use updated suzieq container image (#3218)
131+
* Avoid creating an empty `node.module` in the `bgp.policy` plugin (#3216)
132+
* Fix custom task paths in custom config deployment (#3203)
133+
* Fix: Cisco IOS gets upset when 'ge' in prefix list matches prefix len
134+
* Fix: Pings in integration tests should have **wait** option
135+
* Fix: Clear BGP sessions before starting the integration tests
136+
* Fix: OSPF route redistribution policy used in the integration test should not have MED attribute (that fails with IOS XR)
137+
* Fix: OSPF "passive interface" tests have to reset OSPF on probes first
138+
* Adjust integration tests based on device type (#3318)
139+
* Fix: Implement interactive integration tests
140+
141+
(doc-fixes-26.04)=
142+
## Documentation Fixes
143+
144+
* Fix common IOS/IOS XE caveats pointing to IOSv caveats instead (#3294)
145+
* EOS `sh` config mode works only on recent EOS releases (#3255)
146+
* Clarify that the global `bgp.as` value is used in global VRF RD/RT (#3226)

0 commit comments

Comments
 (0)