Skip to content

Commit e5f75ea

Browse files
authored
updated l2 evpn tutorial for srl 25.10.1 (#200)
1 parent 4eb84c9 commit e5f75ea

File tree

4 files changed

+60
-51
lines changed

4 files changed

+60
-51
lines changed

docs/tutorials/l2evpn/evpn.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ Then for each leaf we add a new BGP neighbor addressed by the remote `system0` i
5353

5454
/network-instance default protocols bgp
5555
group iBGP-overlay {
56-
export-policy all
57-
import-policy all
56+
export-policy [ all ]
57+
import-policy [ all ]
5858
peer-as 100
5959
afi-safi ipv4-unicast {
6060
admin-state disable
@@ -84,8 +84,8 @@ Then for each leaf we add a new BGP neighbor addressed by the remote `system0` i
8484

8585
/network-instance default protocols bgp
8686
group iBGP-overlay {
87-
export-policy all
88-
import-policy all
87+
export-policy [ all ]
88+
import-policy [ all ]
8989
peer-as 100
9090
afi-safi ipv4-unicast {
9191
admin-state disable
@@ -394,13 +394,13 @@ For your convenience, in case you want to jump over the config routines and star
394394
admin-state enable
395395
}
396396
group eBGP-underlay {
397-
export-policy all
398-
import-policy all
397+
export-policy [ all ]
398+
import-policy [ all ]
399399
peer-as 201
400400
}
401401
group iBGP-overlay {
402-
export-policy all
403-
import-policy all
402+
export-policy [ all ]
403+
import-policy [ all ]
404404
peer-as 100
405405
afi-safi ipv4-unicast {
406406
admin-state disable
@@ -520,13 +520,13 @@ For your convenience, in case you want to jump over the config routines and star
520520
admin-state enable
521521
}
522522
group eBGP-underlay {
523-
export-policy all
524-
import-policy all
523+
export-policy [ all ]
524+
import-policy [ all ]
525525
peer-as 201
526526
}
527527
group iBGP-overlay {
528-
export-policy all
529-
import-policy all
528+
export-policy [ all ]
529+
import-policy [ all ]
530530
peer-as 100
531531
afi-safi ipv4-unicast {
532532
admin-state disable
@@ -637,8 +637,8 @@ For your convenience, in case you want to jump over the config routines and star
637637
autonomous-system 201
638638
router-id 10.0.1.1
639639
group eBGP-underlay {
640-
export-policy all
641-
import-policy all
640+
export-policy [ all ]
641+
import-policy [ all ]
642642
}
643643
afi-safi ipv4-unicast {
644644
admin-state enable

docs/tutorials/l2evpn/fabric.md

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,9 @@ Let's start with configuring the IP interfaces on the inter-switch links to ensu
2424

2525
On each leaf and spine we will bring up the relevant [interface](../../get-started/interface.md) and address its routed subinterface to achieve L3 connectivity.
2626

27-
We begin with connecting to the CLI of our nodes via SSH[^1]:
27+
We begin with connecting to the CLI of our leaf1 node via SSH[^1]:
2828

2929
```bash
30-
# connecting to leaf1
3130
ssh clab-evpn01-leaf1
3231
```
3332

@@ -301,10 +300,10 @@ Here is a breakdown of the steps that are needed to configure EBGP on `leaf1` to
301300
A:leaf1# peer-as 201
302301
303302
--{ +* candidate shared default }--[ network-instance default protocols bgp group eBGP-underlay ]--
304-
A:leaf1# export-policy all
303+
A:leaf1# export-policy [ all ]
305304
306305
--{ +* candidate shared default }--[ network-instance default protocols bgp group eBGP-underlay ]--
307-
A:leaf1# import-policy all
306+
A:leaf1# import-policy [ all ]
308307
```
309308
310309
1. **Configure neighbor**
@@ -330,8 +329,8 @@ Here is a breakdown of the steps that are needed to configure EBGP on `leaf1` to
330329
+ autonomous-system 101
331330
+ router-id 10.0.0.1
332331
+ group eBGP-underlay {
333-
+ export-policy all
334-
+ import-policy all
332+
+ export-policy [ all ]
333+
+ import-policy [ all ]
335334
+ peer-as 201
336335
+ }
337336
+ afi-safi ipv4-unicast {
@@ -370,8 +369,8 @@ network-instance default {
370369
autonomous-system 101
371370
router-id 10.0.0.1
372371
group eBGP-underlay {
373-
export-policy all
374-
import-policy all
372+
export-policy [ all ]
373+
import-policy [ all ]
375374
peer-as 201
376375
}
377376
afi-safi ipv4-unicast {
@@ -403,8 +402,8 @@ network-instance default {
403402
autonomous-system 102
404403
router-id 10.0.0.2
405404
group eBGP-underlay {
406-
export-policy all
407-
import-policy all
405+
export-policy [ all ]
406+
import-policy [ all ]
408407
peer-as 201
409408
}
410409
afi-safi ipv4-unicast {
@@ -437,8 +436,8 @@ network-instance default {
437436
autonomous-system 201
438437
router-id 10.0.1.1
439438
group eBGP-underlay {
440-
export-policy all
441-
import-policy all
439+
export-policy [ all ]
440+
import-policy [ all ]
442441
}
443442
afi-safi ipv4-unicast {
444443
admin-state enable
@@ -776,8 +775,8 @@ set / network-instance default protocols bgp
776775
set / network-instance default protocols bgp autonomous-system 101
777776
set / network-instance default protocols bgp router-id 10.0.0.1
778777
set / network-instance default protocols bgp group eBGP-underlay
779-
set / network-instance default protocols bgp group eBGP-underlay export-policy all
780-
set / network-instance default protocols bgp group eBGP-underlay import-policy all
778+
set / network-instance default protocols bgp group eBGP-underlay export-policy [ all ]
779+
set / network-instance default protocols bgp group eBGP-underlay import-policy [ all ]
781780
set / network-instance default protocols bgp group eBGP-underlay peer-as 201
782781
set / network-instance default protocols bgp afi-safi ipv4-unicast
783782
set / network-instance default protocols bgp afi-safi ipv4-unicast admin-state enable
@@ -824,8 +823,8 @@ set / network-instance default protocols bgp
824823
set / network-instance default protocols bgp autonomous-system 102
825824
set / network-instance default protocols bgp router-id 10.0.0.2
826825
set / network-instance default protocols bgp group eBGP-underlay
827-
set / network-instance default protocols bgp group eBGP-underlay export-policy all
828-
set / network-instance default protocols bgp group eBGP-underlay import-policy all
826+
set / network-instance default protocols bgp group eBGP-underlay export-policy [ all ]
827+
set / network-instance default protocols bgp group eBGP-underlay import-policy [ all ]
829828
set / network-instance default protocols bgp group eBGP-underlay peer-as 201
830829
set / network-instance default protocols bgp afi-safi ipv4-unicast
831830
set / network-instance default protocols bgp afi-safi ipv4-unicast admin-state enable
@@ -877,8 +876,8 @@ set / network-instance default protocols bgp
877876
set / network-instance default protocols bgp autonomous-system 201
878877
set / network-instance default protocols bgp router-id 10.0.1.1
879878
set / network-instance default protocols bgp group eBGP-underlay
880-
set / network-instance default protocols bgp group eBGP-underlay export-policy all
881-
set / network-instance default protocols bgp group eBGP-underlay import-policy all
879+
set / network-instance default protocols bgp group eBGP-underlay export-policy [ all ]
880+
set / network-instance default protocols bgp group eBGP-underlay import-policy [ all ]
882881
set / network-instance default protocols bgp afi-safi ipv4-unicast
883882
set / network-instance default protocols bgp afi-safi ipv4-unicast admin-state enable
884883
set / network-instance default protocols bgp neighbor 192.168.11.1
@@ -893,6 +892,8 @@ commit now
893892

894893
///
895894

895+
**[:octicons-arrow-right-24: Next: EVPN Configuration](evpn.md)**
896+
896897
[^1]: default SR Linux credentials are `admin:NokiaSrl1!`.
897898
[^2]: the snippets were extracted with `info interface ethernet-1/x` command issued in running mode.
898899
[^3]: you can paste those snippets right after you do `enter candidate`

docs/tutorials/l2evpn/intro.md

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ tags:
1515
| **Lab name** | evpn01 |
1616
| **Packet captures** | [EVPN IMET routes exchange][capture-imets], [RT2 routes exchange with ICMP in datapath][capture-rt2-datapath] |
1717
| **Main ref documents** | [RFC 7432 - BGP MPLS-Based Ethernet VPN](https://datatracker.ietf.org/doc/html/rfc7432)<br/>[RFC 8365 - A Network Virtualization Overlay Solution Using Ethernet VPN (EVPN)](https://datatracker.ietf.org/doc/html/rfc8365)<br/>[Nokia 7220 SR Linux Advanced Solutions Guide][adv-sol-guide-evpn-l2]<br/>[Nokia 7220 SR Linux EVPN-VXLAN Guide][evpn-vxlan-guide] |
18-
| **Version information**[^1] | [`containerlab:0.48.6`][clab-install], [`srlinux:23.10.1`][srlinux-container], [`docker-ce:23.0.3`][docker-install] |
18+
| **Version information**[^1] | [`containerlab:0.71.1`][clab-install], [`srlinux:25.10`][srlinux-container], [`docker-ce:27.5.1`][docker-install] |
1919

2020
Ethernet Virtual Private Network (EVPN) is a standard technology in multi-tenant Data Centers (DCs) and provides a control plane framework for many functions.
2121
In this tutorial we will configure a **VXLAN based Layer 2 EVPN service**[^3] in a tiny CLOS fabric and at the same get to know SR Linux better!
@@ -46,23 +46,27 @@ The [containerlab file][topofile] that describes the lab topology is referenced
4646
Save[^2] the contents of this file under `evpn01.clab.yml` name and you are ready to deploy:
4747

4848
```
49-
$ containerlab deploy -t evpn01.clab.yml
49+
containerlab deploy -t evpn01.clab.yml
50+
```
51+
52+
<div class="embed-result">
53+
```{.text .no-copy .no-select}
5054
INFO[0000] Containerlab v0.48.6 started
51-
INFO[0000] Parsing & checking topology file: evpn01.clab.yml
52-
INFO[0005] Creating lab directory: /root/srl-labs/learn-srlinux/clab-evpn01
55+
INFO[0000] Parsing & checking topology file: evpn01.clab.yml
56+
INFO[0005] Creating lab directory: /root/srl-labs/learn-srlinux/clab-evpn01
5357
INFO[0005] Creating container: "srv2"
5458
INFO[0005] Creating container: "srv1"
5559
INFO[0005] Creating container: "spine1"
5660
INFO[0005] Creating container: "leaf1"
5761
INFO[0005] Creating container: "leaf2"
58-
INFO[0006] Creating virtual wire: srv2:eth1 <--> leaf2:e1-1
59-
INFO[0006] Creating virtual wire: leaf2:e1-49 <--> spine1:e1-2
60-
INFO[0006] Creating virtual wire: leaf1:e1-49 <--> spine1:e1-1
61-
INFO[0006] Creating virtual wire: srv1:eth1 <--> leaf1:e1-1
62-
INFO[0007] Running postdeploy actions for Nokia SR Linux 'spine1' node
63-
INFO[0007] Running postdeploy actions for Nokia SR Linux 'leaf1' node
64-
INFO[0007] Running postdeploy actions for Nokia SR Linux 'leaf2' node
65-
INFO[0021] Adding containerlab host entries to /etc/hosts file
62+
INFO[0006] Creating virtual wire: srv2:eth1 <--> leaf2:e1-1
63+
INFO[0006] Creating virtual wire: leaf2:e1-49 <--> spine1:e1-2
64+
INFO[0006] Creating virtual wire: leaf1:e1-49 <--> spine1:e1-1
65+
INFO[0006] Creating virtual wire: srv1:eth1 <--> leaf1:e1-1
66+
INFO[0007] Running postdeploy actions for Nokia SR Linux 'spine1' node
67+
INFO[0007] Running postdeploy actions for Nokia SR Linux 'leaf1' node
68+
INFO[0007] Running postdeploy actions for Nokia SR Linux 'leaf2' node
69+
INFO[0021] Adding containerlab host entries to /etc/hosts file
6670
+---+--------------------+--------------+---------------------------------+---------------+---------+----------------+----------------------+
6771
| # | Name | Container ID | Image | Kind | State | IPv4 Address | IPv6 Address |
6872
+---+--------------------+--------------+---------------------------------+---------------+---------+----------------+----------------------+
@@ -73,20 +77,24 @@ INFO[0021] Adding containerlab host entries to /etc/hosts file
7377
| 5 | clab-evpn01-srv2 | 2a63a6135a9c | ghcr.io/hellt/network-multitool | linux | running | 172.20.20.5/24 | 2001:172:20:20::5/64 |
7478
+---+--------------------+--------------+---------------------------------+---------------+---------+----------------+----------------------+
7579
```
80+
</div>
7681

7782
A few seconds later containerlab finishes the deployment with providing a summary table that outlines connection details of the deployed nodes. In the "Name" column we have the names of the deployed containers and those names can be used to reach the nodes, for example to connect to the SSH of `leaf1`:
7883

7984
```bash
80-
# default credentials admin:NokiaSrl1!
81-
ssh clab-evpn01-leaf1
85+
ssh clab-evpn01-leaf1 #(1)!
8286
```
8387

88+
1. Default credentials `admin:NokiaSrl1!`
89+
8490
With the lab deployed we are ready to embark on our learn-by-doing EVPN configuration journey!
8591

8692
/// note
8793
We advise the newcomers not to skip the [Configuration Basics Guide][conf-basics-guide] as it provides just enough details to survive in the configuration waters we are about to get in.
8894
///
8995

96+
**[:octicons-arrow-right-24: Next: Fabric Configuration](fabric.md)**
97+
9098
[topofile]: https://github.com/srl-labs/learn-srlinux/blob/master/labs/evpn01.clab.yml
9199
[clab-install]: https://containerlab.srlinux.dev/install/
92100
[srlinux-container]: https://github.com/orgs/nokia/packages/container/package/srlinux

labs/evpn01.clab.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,20 @@ name: evpn01
33
topology:
44
kinds:
55
nokia_srlinux:
6-
image: ghcr.io/nokia/srlinux:23.10.1
6+
image: ghcr.io/nokia/srlinux:25.10
77
linux:
8-
image: ghcr.io/hellt/network-multitool
8+
image: ghcr.io/srl-labs/network-multitool:latest
99

1010
nodes:
1111
leaf1:
1212
kind: nokia_srlinux
13-
type: ixrd2
13+
type: ixr-d2
1414
leaf2:
1515
kind: nokia_srlinux
16-
type: ixrd2
16+
type: ixr-d2
1717
spine1:
1818
kind: nokia_srlinux
19-
type: ixrd3
19+
type: ixr-d3
2020
srv1:
2121
kind: linux
2222
exec:

0 commit comments

Comments
 (0)