]> git.proxmox.com Git - pve-docs.git/blame - vxlan-and-evpn.adoc
vxlan-evpn: remove prefix-route deny
[pve-docs.git] / vxlan-and-evpn.adoc
CommitLineData
445822a9
DM
1
2////
3
4This is currently not included, because
5- it requires ifupdown2
6- routing needs more documentation
7
8////
9
10
11VXLAN layer2 with vlan unware linux bridges
12~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13
14VXLAN is an overlay network to carry Ethernet traffic over an existing IP network
15while accommodating a very large number of tenants. It is defined in RFC 7348.
16Each overlay network is known as a VXLAN Segment and identified by a unique
1724-bit segment ID called a VXLAN Network Identifier (VNI).
18
47cf2d10
AD
19VXLAN encapsulation add 50bytes overhead, so you need to increase mtu on your host
20physical interfaces to 1550 at minimum. (or decrease mtu inside your vms to 1450)
21
445822a9
DM
22For BUM traffic (broadcast / unknown unicast traffic, multicast),
23we have 3 differents vxlan setup modes : multicast, unicast, bgp-evpn
24
25image::images/vxlan-l2-vlanunaware.svg["vxlan l2 bridge vlan unaware",align="center"]
26
27multicast mode
28^^^^^^^^^^^^^^
29
30This scenario relies in head end replication, meaning that end host in case
31of not having any entry for the destination MAC address will send out an ARP
32to other devices / VTEPs in the VXLAN network.
33This is done by sending the request to the VXLAN multicast group,
34remote VTEPs will get the packet and answer accordingly direct to the originating VTEP.
35
36
37* node1
38
39----
40auto eno1
41iface eno1 inet manual
47cf2d10 42 mtu 1550
445822a9
DM
43
44auto vmbr0
45iface vmbr0 inet static
46 address 192.168.0.1
47 netmask 255.255.255.0
48 bridge_ports eno1
49 bridge_stp off
50 bridge_fd 0
51
52auto vxlan2
53iface vxlan2 inet manual
edcf2118 54 vxlan-id 2
445822a9
DM
55 vxlan-svcnodeip 225.20.1.1
56 vxlan-physdev eno1
57
58auto vmbr2
59iface vmbr2 inet manual
60 bridge_ports vxlan2
61 bridge_stp off
62 bridge_fd 0
63
64auto vxlan3
65iface vxlan3 inet manual
edcf2118 66 vxlan-id 3
445822a9
DM
67 vxlan-svcnodeip 225.20.1.1
68 vxlan-physdev eno1
69
70auto vmbr3
71iface vmbr3 inet manual
72 bridge_ports vxlan3
73 bridge_stp off
74 bridge_fd 0
75----
76
77
78* node2
79
80----
81auto eno1
82iface eno1 inet manual
47cf2d10 83 mtu 1550
445822a9
DM
84
85auto vmbr0
86iface vmbr0 inet static
87 address 192.168.0.2
88 netmask 255.255.255.0
89 bridge_ports eno1
90 bridge_stp off
91 bridge_fd 0
92
93auto vxlan2
94iface vxlan2 inet manual
edcf2118 95 vxlan-id 2
445822a9
DM
96 vxlan-svcnodeip 225.20.1.1
97 vxlan-physdev eno1
98
99auto vmbr2
100iface vmbr2 inet manual
101 bridge_ports vxlan2
102 bridge_stp off
103 bridge_fd 0
104
105
106auto vxlan3
107iface vxlan3 inet manual
edcf2118 108 vxlan-id 3
445822a9
DM
109 vxlan-svcnodeip 225.20.1.1
110 vxlan-physdev eno1
111
112auto vmbr3
113iface vmbr3 inet manual
114 bridge_ports vxlan3
115 bridge_stp off
116 bridge_fd 0
117----
118
119
120* node3
121
122----
123auto eno1
124iface eno1 inet manual
47cf2d10 125 mtu 1550
445822a9
DM
126
127auto vmbr0
128iface vmbr0 inet static
129 address 192.168.0.3
130 netmask 255.255.255.0
131 bridge_ports eno1
132 bridge_stp off
133 bridge_fd 0
134
135auto vxlan2
136iface vxlan2 inet manual
edcf2118 137 vxlan-id 2
445822a9
DM
138 vxlan-svcnodeip 225.20.1.1
139 vxlan-physdev eno1
140
141auto vmbr2
142iface vmbr2 inet manual
143 bridge_ports vxlan2
144 bridge_stp off
145 bridge_fd 0
146
147
148auto vxlan3
149iface vxlan3 inet manual
edcf2118 150 vxlan-id 3
445822a9
DM
151 vxlan-svcnodeip 225.20.1.1
152 vxlan-physdev eno1
153
154auto vmbr3
155iface vmbr3 inet manual
156 bridge_ports vxlan3
157 bridge_stp off
158 bridge_fd 0
159----
160
161
162unicast mode
163^^^^^^^^^^^^
164
165We can replace multicast by head-end replication of BUM frames to a statically configured lists of remote VTEPs.
166The VXLAN is defined without a remote multicast group.
167Instead, all the remote VTEPs are associated with the all-zero address:
168a BUM frame will be duplicated to all these destinations.
169The VXLAN device will still learn remote addresses automatically using source-address learning.
170
171* node1
172
173----
174auto eno1
175iface eno1 inet manual
47cf2d10 176 mtu 1550
445822a9
DM
177
178auto vmbr0
179iface vmbr0 inet static
180 address 192.168.0.1
181 netmask 255.255.255.0
182 bridge_ports eno1
183 bridge_stp off
184 bridge_fd 0
185
186
187auto vxlan2
188iface vxlan2 inet manual
edcf2118 189 vxlan-id 2
445822a9
DM
190 vxlan_remoteip 192.168.0.2
191 vxlan_remoteip 192.168.0.3
192
193
194auto vmbr2
195iface vmbr2 inet manual
196 bridge_ports vxlan2
197 bridge_stp off
198 bridge_fd 0
199
200
201auto vxlan3
202iface vxlan2 inet manual
edcf2118 203 vxlan-id 3
445822a9
DM
204 vxlan_remoteip 192.168.0.2
205 vxlan_remoteip 192.168.0.3
206
207
208auto vmbr3
209iface vmbr3 inet manual
210 bridge_ports vxlan3
211 bridge_stp off
212 bridge_fd 0
213----
214
215
216* node2
217
218----
219auto eno1
220iface eno1 inet manual
47cf2d10 221 mtu 1550
445822a9
DM
222
223auto vmbr0
224iface vmbr0 inet static
225 address 192.168.0.2
226 netmask 255.255.255.0
227 bridge_ports eno1
228 bridge_stp off
229 bridge_fd 0
230
231auto vxlan2
232iface vxlan2 inet manual
edcf2118 233 vxlan-id 2
445822a9
DM
234 vxlan_remoteip 192.168.0.1
235 vxlan_remoteip 192.168.0.3
236
237
238
239auto vmbr2
240iface vmbr2 inet manual
241 bridge_ports vxlan2
242 bridge_stp off
243 bridge_fd 0
244
245auto vxlan3
246iface vxlan2 inet manual
edcf2118 247 vxlan-id 3
445822a9
DM
248 vxlan_remoteip 192.168.0.1
249 vxlan_remoteip 192.168.0.3
250
251
252auto vmbr3
253iface vmbr3 inet manual
254 bridge_ports vxlan3
255 bridge_stp off
256 bridge_fd 0
257----
258
259
260* node3
261
262----
263auto eno1
264iface eno1 inet manual
47cf2d10 265 mtu 1550
445822a9
DM
266
267auto vmbr0
268iface vmbr0 inet static
269 address 192.168.0.3
270 netmask 255.255.255.0
271 bridge_ports eno1
272 bridge_stp off
273 bridge_fd 0
274
275auto vxlan2
276iface vxlan2 inet manual
edcf2118 277 vxlan-id 2
445822a9
DM
278 vxlan_remoteip 192.168.0.2
279 vxlan_remoteip 192.168.0.3
280
281
282
283auto vmbr2
284iface vmbr2 inet manual
285 bridge_ports vxlan2
286 bridge_stp off
287 bridge_fd 0
288
289auto vxlan3
290iface vxlan2 inet manual
edcf2118 291 vxlan-id 3
445822a9
DM
292 vxlan_remoteip 192.168.0.2
293 vxlan_remoteip 192.168.0.3
294
295
296auto vmbr3
297iface vmbr3 inet manual
298 bridge_ports vxlan3
299 bridge_stp off
300 bridge_fd 0
301----
302
303
304bgp-evpn
305^^^^^^^^
306
307VTEPs use control plane learning/distribution via BGP for remote MAC addresses instead of data plane learning.
308VTEPs have the ability to suppress ARP flooding over VXLAN tunnels.
309
310The control plane used here is FRR, a bgp routing software.
311Each node in the proxmox cluster peer with each others nodes.
312For bigger networks, or multiple proxmox clusters,
313it's possible to use external bgp route reflector servers.
314
315* node1
316
317----
318auto eno1
319iface eno1 inet manual
47cf2d10 320 mtu 1550
445822a9
DM
321
322auto vmbr0
323iface vmbr0 inet static
324 address 192.168.0.1
325 netmask 255.255.255.0
326 bridge_ports eno1
327 bridge_stp off
328 bridge_fd 0
329
330auto vxlan2
331iface vxlan2 inet manual
edcf2118 332 vxlan-id 2
445822a9
DM
333 vxlan-local-tunnelip 192.168.0.1
334 bridge-learning off
335 bridge-arp-nd-suppress on
336 bridge-unicast-flood off
337 bridge-multicast-flood off
338
339
340auto vmbr2
341iface vmbr2 inet manual
342 bridge_ports vxlan2
343 bridge_stp off
344 bridge_fd 0
345
346
347auto vxlan3
348iface vxlan3 inet manual
edcf2118 349 vxlan-id 3
445822a9
DM
350 vxlan-local-tunnelip 192.168.0.1
351 bridge-learning off
352 bridge-arp-nd-suppress on
353 bridge-unicast-flood off
354 bridge-multicast-flood off
355
356
357auto vmbr3
358iface vmbr3 inet manual
359 bridge_ports vxlan3
360 bridge_stp off
361 bridge_fd 0
362----
363
364
365/etc/frr/frr.conf
366
367----
368router bgp 1234
369 no bgp default ipv4-unicast
c141a897 370 no bgp default ipv6-unicast
445822a9
DM
371 coalesce-time 1000
372 neighbor 192.168.0.2 remote-as 1234
373 neighbor 192.168.0.3 remote-as 1234
374 !
375 address-family l2vpn evpn
376 neighbor 192.168.0.2 activate
377 neighbor 192.168.0.3 activate
378 advertise-all-vni
379 exit-address-family
380!
381line vty
382!
383----
384
385
386* node2
387
388----
389auto eno1
390iface eno1 inet manual
47cf2d10 391 mtu 1550
445822a9
DM
392
393auto vmbr0
394iface vmbr0 inet static
395 address 192.168.0.2
396 netmask 255.255.255.0
397 bridge_ports eno1
398 bridge_stp off
399 bridge_fd 0
400
401auto vxlan2
402iface vxlan2 inet manual
edcf2118 403 vxlan-id 2
445822a9
DM
404 vxlan-local-tunnelip 192.168.0.2
405 bridge-learning off
406 bridge-arp-nd-suppress on
407 bridge-unicast-flood off
408 bridge-multicast-flood off
409
410
411auto vmbr2
412iface vmbr2 inet manual
413 bridge_ports vxlan2
414 bridge_stp off
415 bridge_fd 0
416
417auto vxlan3
418iface vxlan3 inet manual
edcf2118 419 vxlan-id 3
445822a9
DM
420 vxlan-local-tunnelip 192.168.0.2
421 bridge-learning off
422 bridge-arp-nd-suppress on
423 bridge-unicast-flood off
424 bridge-multicast-flood off
425
426
427auto vmbr3
428iface vmbr3 inet manual
429 bridge_ports vxlan3
430 bridge_stp off
431 bridge_fd 0
432----
433
434
435/etc/frr/frr.conf
436
437----
438router bgp 1234
439 no bgp default ipv4-unicast
c141a897 440 no bgp default ipv6-unicast
445822a9
DM
441 coalesce-time 1000
442 neighbor 192.168.0.1 remote-as 1234
443 neighbor 192.168.0.3 remote-as 1234
444 !
445 address-family l2vpn evpn
446 neighbor 192.168.0.1 activate
447 neighbor 192.168.0.3 activate
448 advertise-all-vni
449 exit-address-family
450!
451line vty
452!
453----
454
455
456* node3
457
458----
459auto eno1
460iface eno1 inet manual
47cf2d10 461 mtu 1550
445822a9
DM
462
463auto vmbr0
464iface vmbr0 inet static
465 address 192.168.0.2
466 netmask 255.255.255.0
467 bridge_ports eno1
468 bridge_stp off
469 bridge_fd 0
470
471auto vxlan2
472iface vxlan2 inet manual
edcf2118 473 vxlan-id 2
445822a9
DM
474 vxlan-local-tunnelip 192.168.0.3
475 bridge-learning off
476 bridge-arp-nd-suppress on
477 bridge-unicast-flood off
478 bridge-multicast-flood off
479
480
481auto vmbr2
482iface vmbr2 inet manual
483 bridge_ports vxlan2
484 bridge_stp off
485 bridge_fd 0
486
487auto vxlan3
488iface vxlan3 inet manual
edcf2118 489 vxlan-id 3
445822a9
DM
490 vxlan-local-tunnelip 192.168.0.3
491 bridge-learning off
492 bridge-arp-nd-suppress on
493 bridge-unicast-flood off
494 bridge-multicast-flood off
495
496
497auto vmbr3
498iface vmbr3 inet manual
499 bridge_ports vxlan3
500 bridge_stp off
501 bridge_fd 0
502----
503
504
505/etc/frr/frr.conf
506
507
508----
509router bgp 1234
510 no bgp default ipv4-unicast
c141a897 511 no bgp default ipv6-unicast
445822a9
DM
512 coalesce-time 1000
513 neighbor 192.168.0.1 remote-as 1234
514 neighbor 192.168.0.2 remote-as 1234
515 !
516 address-family l2vpn evpn
517 neighbor 192.168.0.1 activate
518 neighbor 192.168.0.2 activate
519 advertise-all-vni
520 exit-address-family
521!
522line vty
523!
524----
525
1821b137
AD
526VXLAN layer3 routing with anycast gateway
527~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
528
529With this need, each vmbr bridge will be the gateway for the vm.
530Same vmbr on different node, will have same ip address and same mac address,
531to have working vm live migration and no network disruption.
532
4d3f6a2e 533VXLAN layer3 routing only work with FRR and non-aware bridge.
1821b137
AD
534(vlan aware bridge support is buggy currently).
535
1821b137
AD
536asymmetric model
537^^^^^^^^^^^^^^^^
538
539This is the simplest mode. To get it work, all vxlan need to be defined on all nodes.
540
4d3f6a2e
TL
541The asymmetric model allows routing and bridging on the VXLAN tunnel ingress,
542but only bridging on the egress.
543This results in bi-directional VXLAN traffic traveling on different VNIs
1821b137
AD
544in each direction (always the destination VNI) across the routed infrastructure.
545
546image::images/vxlan-l3-asymmetric.svg["vxlan l3 asymmetric",align="center"]
547
1821b137
AD
548* node1
549
550----
551auto eno1
552iface eno1 inet manual
47cf2d10 553 mtu 1550
4d3f6a2e 554
1821b137
AD
555auto vmbr0
556iface vmbr0 inet static
557 address 192.168.0.1
558 netmask 255.255.255.0
559 bridge_ports eno1
560 bridge_stp off
561 bridge_fd 0
4d3f6a2e 562
1821b137
AD
563auto vxlan2
564iface vxlan2 inet manual
edcf2118 565 vxlan-id 2
1821b137
AD
566 vxlan-local-tunnelip 192.168.0.1
567 bridge-learning off
568 bridge-arp-nd-suppress on
569 bridge-unicast-flood off
570 bridge-multicast-flood off
571
572
573auto vmbr2
574iface vmbr2 inet static
575 address 10.0.2.254
576 netmask 255.255.255.0
577 hwaddress 44:39:39:FF:40:94
578 bridge_ports vxlan2
579 bridge_stp off
580 bridge_fd 0
fc8f7b53
AD
581 ip-forward on
582 ip6-forward on
583 arp-accept on
1821b137
AD
584
585auto vxlan3
586iface vxlan3 inet manual
edcf2118 587 vxlan-id 3
1821b137
AD
588 vxlan-local-tunnelip 192.168.0.1
589 bridge-learning off
590 bridge-arp-nd-suppress on
591 bridge-unicast-flood off
592 bridge-multicast-flood off
593
594
595auto vmbr3
596iface vmbr3 inet static
597 address 10.0.3.254
598 netmask 255.255.255.0
599 hwaddress 44:39:39:FF:40:94
600 bridge_ports vxlan3
601 bridge_stp off
602 bridge_fd 0
fc8f7b53
AD
603 ip-forward on
604 ip6-forward on
605 arp-accept on
1821b137
AD
606----
607
608
609frr.conf
610
611----
612router bgp 1234
613 bgp router-id 192.168.0.1
614 no bgp default ipv4-unicast
c141a897 615 no bgp default ipv6-unicast
1821b137
AD
616 coalesce-time 1000
617 neighbor 192.168.0.2 remote-as 1234
618 neighbor 192.168.0.3 remote-as 1234
619 !
620 address-family l2vpn evpn
621 neighbor 192.168.0.2 activate
622 neighbor 192.168.0.3 activate
4d3f6a2e 623 advertise-all-vni
1821b137
AD
624 exit-address-family
625!
626line vty
627!
628----
629
630
631* node2
632
633----
634auto eno1
635iface eno1 inet manual
47cf2d10 636 mtu 1550
4d3f6a2e 637
1821b137
AD
638auto vmbr0
639iface vmbr0 inet static
640 address 192.168.0.2
641 netmask 255.255.255.0
642 bridge_ports eno1
643 bridge_stp off
644 bridge_fd 0
4d3f6a2e 645
1821b137
AD
646auto vxlan2
647iface vxlan2 inet manual
edcf2118 648 vxlan-id 2
1821b137
AD
649 vxlan-local-tunnelip 192.168.0.2
650 bridge-learning off
651 bridge-arp-nd-suppress on
652 bridge-unicast-flood off
653 bridge-multicast-flood off
654
655
656auto vmbr2
657iface vmbr2 inet static
658 address 10.0.2.254
659 netmask 255.255.255.0
660 hwaddress 44:39:39:FF:40:94
661 bridge_ports vxlan2
662 bridge_stp off
663 bridge_fd 0
fc8f7b53
AD
664 ip-forward on
665 ip6-forward on
666 arp-accept on
1821b137
AD
667
668
669auto vxlan3
670iface vxlan3 inet manual
edcf2118 671 vxlan-id 3
1821b137
AD
672 vxlan-local-tunnelip 192.168.0.2
673 bridge-learning off
674 bridge-arp-nd-suppress on
675 bridge-unicast-flood off
676 bridge-multicast-flood off
677
678
679auto vmbr3
680iface vmbr3 inet static
681 address 10.0.3.254
682 netmask 255.255.255.0
683 hwaddress 44:39:39:FF:40:94
684 bridge_ports vxlan3
685 bridge_stp off
686 bridge_fd 0
fc8f7b53
AD
687 ip-forward on
688 ip6-forward on
689 arp-accept on
1821b137
AD
690----
691
692
693frr.conf
694
695----
696router bgp 1234
697 bgp router-id 192.168.0.2
698 no bgp default ipv4-unicast
c141a897 699 no bgp default ipv6-unicast
1821b137
AD
700 coalesce-time 1000
701 neighbor 192.168.0.1 remote-as 1234
702 neighbor 192.168.0.3 remote-as 1234
703 !
704 address-family l2vpn evpn
705 neighbor 192.168.0.1 activate
706 neighbor 192.168.0.3 activate
4d3f6a2e 707 advertise-all-vni
1821b137
AD
708 exit-address-family
709!
710line vty
711!
712----
713
714
715* node3
716
717----
718auto eno1
719iface eno1 inet manual
47cf2d10 720 mtu 1550
4d3f6a2e 721
1821b137
AD
722auto vmbr0
723iface vmbr0 inet static
724 address 192.168.0.3
725 netmask 255.255.255.0
726 bridge_ports eno1
727 bridge_stp off
728 bridge_fd 0
4d3f6a2e 729
1821b137
AD
730auto vxlan2
731iface vxlan2 inet manual
edcf2118 732 vxlan-id 2
1821b137
AD
733 vxlan-local-tunnelip 192.168.0.3
734 bridge-learning off
735 bridge-arp-nd-suppress on
736 bridge-unicast-flood off
737 bridge-multicast-flood off
738
739
740auto vmbr2
741iface vmbr2 inet static
742 address 10.0.2.254
743 netmask 255.255.255.0
744 hwaddress 44:39:39:FF:40:94
745 bridge_ports vxlan2
746 bridge_stp off
747 bridge_fd 0
fc8f7b53
AD
748 ip-forward on
749 ip6-forward on
750 arp-accept on
1821b137
AD
751
752auto vxlan3
753iface vxlan3 inet manual
edcf2118 754 vxlan-id 3
1821b137
AD
755 vxlan-local-tunnelip 192.168.0.3
756 bridge-learning off
757 bridge-arp-nd-suppress on
758 bridge-unicast-flood off
759 bridge-multicast-flood off
760
1821b137
AD
761auto vmbr3
762iface vmbr3 inet static
763 address 10.0.3.254
764 netmask 255.255.255.0
765 hwaddress 44:39:39:FF:40:94
766 bridge_ports vxlan3
767 bridge_stp off
768 bridge_fd 0
fc8f7b53
AD
769 ip-forward on
770 ip6-forward on
771 arp-accept on
1821b137
AD
772----
773
774
775frr.conf
776
777----
778router bgp 1234
779 bgp router-id 192.168.0.3
780 no bgp default ipv4-unicast
c141a897 781 no bgp default ipv6-unicast
1821b137
AD
782 coalesce-time 1000
783 neighbor 192.168.0.1 remote-as 1234
784 neighbor 192.168.0.2 remote-as 1234
785 !
786 address-family l2vpn evpn
787 neighbor 192.168.0.1 activate
788 neighbor 192.168.0.2 activate
4d3f6a2e 789 advertise-all-vni
1821b137
AD
790 exit-address-family
791!
792line vty
793!
794----
795
796
797symmetric model
798^^^^^^^^^^^^^^^
799
800With this model, you don't need to have all vxlan on all nodes.
4d3f6a2e 801This model will also be needed to route traffic to an external router.
1821b137 802
4d3f6a2e
TL
803The symmetric model routes and bridges on both the ingress and the egress leafs.
804This results in bi-directional traffic being able to travel on the same VNI, hence the symmetric name.
805However, a new specialty transit VNI is used for all routed VXLAN traffic, called the L3VNI.
806All traffic that needs to be routed will be routed onto the L3VNI, tunneled across the layer 3 Infrastructure,
1821b137
AD
807routed off the L3VNI to the appropriate VLAN and ultimately bridged to the destination.
808
809A vrf is needed for the L3VNI, so all vmbr bridge need to be in the vrf if they want to be able to reach each others.
810
811image::images/vxlan-l3-symmetric.svg["vxlan l3 symmetric",align="center"]
812
1821b137
AD
813* node1
814
815----
816auto vrf1
817iface vrf1
818 vrf-table auto
819
820auto eno1
821iface eno1 inet manual
47cf2d10 822 mtu 1550
4d3f6a2e 823
1821b137
AD
824auto vmbr0
825iface vmbr0 inet static
826 address 192.168.0.1
827 netmask 255.255.255.0
828 bridge_ports eno1
829 bridge_stp off
830 bridge_fd 0
831
832auto vxlan2
833iface vxlan2 inet manual
edcf2118 834 vxlan-id 2
1821b137
AD
835 vxlan-local-tunnelip 192.168.0.1
836 bridge-learning off
837 bridge-arp-nd-suppress on
838 bridge-unicast-flood off
839 bridge-multicast-flood off
840
841auto vmbr2
842iface vmbr2 inet static
843 bridge_ports vxlan2
844 bridge_stp off
845 bridge_fd 0
846 address 10.0.2.254
847 netmask 255.255.255.0
848 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
849 vrf vrf1
fc8f7b53
AD
850 ip-forward on
851 ip6-forward on
852 arp-accept on
1821b137
AD
853
854auto vxlan3
855iface vxlan3 inet manual
edcf2118 856 vxlan-id 3
1821b137
AD
857 vxlan-local-tunnelip 192.168.0.1
858 bridge-learning off
859 bridge-arp-nd-suppress on
860 bridge-unicast-flood off
861 bridge-multicast-flood off
862
863auto vmbr3
864iface vmbr3 inet static
865 bridge_ports vxlan3
866 bridge_stp off
867 bridge_fd 0
868 address 10.0.3.254
869 netmask 255.255.255.0
870 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
871 vrf vrf1
fc8f7b53
AD
872 ip-forward on
873 ip6-forward on
874 arp-accept on
1821b137
AD
875
876#interconnect vxlan-vfr l3vni
877auto vxlan4000
878iface vxlan4000 inet manual
edcf2118 879 vxlan-id 4000
1821b137
AD
880 vxlan-local-tunnelip 192.168.0.1
881 bridge-learning off
882 bridge-arp-nd-suppress on
883 bridge-unicast-flood off
884 bridge-multicast-flood off
885
886
887auto vmbr4000
888iface vmbr4000 inet manual
889 bridge_ports vxlan4000
890 bridge_stp off
891 bridge_fd 0
1821b137
AD
892 vrf vrf1
893----
894
895frr.conf
896
897----
898vrf vrf1
899 vni 4000
250e8aa6 900 exit-vrf
1821b137
AD
901!
902router bgp 1234
903 bgp router-id 192.168.0.1
904 no bgp default ipv4-unicast
c141a897 905 no bgp default ipv6-unicast
1821b137
AD
906 coalesce-time 1000
907 neighbor 192.168.0.2 remote-as 1234
908 neighbor 192.168.0.3 remote-as 1234
909 !
910 address-family l2vpn evpn
911 neighbor 192.168.0.2 activate
912 neighbor 192.168.0.3 activate
913 advertise-all-vni
914 exit-address-family
915!
1821b137
AD
916line vty
917!
918----
919
920
921* node2
922
923----
924auto vrf1
925iface vrf1
926 vrf-table auto
927
928auto eno1
929iface eno1 inet manual
47cf2d10 930 mtu 1550
4d3f6a2e 931
1821b137
AD
932auto vmbr0
933iface vmbr0 inet static
934 address 192.168.0.2
935 netmask 255.255.255.0
936 bridge_ports eno1
937 bridge_stp off
938 bridge_fd 0
939
940auto vxlan2
941iface vxlan2 inet manual
edcf2118 942 vxlan-id 2
1821b137
AD
943 vxlan-local-tunnelip 192.168.0.2
944 bridge-learning off
945 bridge-arp-nd-suppress on
946 bridge-unicast-flood off
947 bridge-multicast-flood off
948
949auto vmbr2
950iface vmbr2 inet static
951 bridge_ports vxlan2
952 bridge_stp off
953 bridge_fd 0
954 address 10.0.2.254
955 netmask 255.255.255.0
956 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
957 vrf vrf1
fc8f7b53
AD
958 ip-forward on
959 ip6-forward on
960 arp-accept on
1821b137
AD
961
962auto vxlan3
963iface vxlan3 inet manual
edcf2118 964 vxlan-id 3
1821b137
AD
965 vxlan-local-tunnelip 192.168.0.2
966 bridge-learning off
967 bridge-arp-nd-suppress on
968 bridge-unicast-flood off
969 bridge-multicast-flood off
970
971auto vmbr3
972iface vmbr3 inet static
973 bridge_ports vxlan3
974 bridge_stp off
975 bridge_fd 0
976 address 10.0.3.254
977 netmask 255.255.255.0
978 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
979 vrf vrf1
fc8f7b53
AD
980 ip-forward on
981 ip6-forward on
982 arp-accept on
1821b137
AD
983
984#interconnect vxlan-vfr l3vni
985auto vxlan4000
986iface vxlan4000 inet manual
edcf2118 987 vxlan-id 4000
1821b137
AD
988 vxlan-local-tunnelip 192.168.0.2
989 bridge-learning off
990 bridge-arp-nd-suppress on
991 bridge-unicast-flood off
992 bridge-multicast-flood off
993
994
995auto vmbr4000
996iface vmbr4000 inet manual
997 bridge_ports vxlan4000
998 bridge_stp off
999 bridge_fd 0
1821b137
AD
1000 vrf vrf1
1001----
1002
1003
1004frr.conf
1005
1006----
1007vrf vrf1
1008 vni 4000
250e8aa6 1009 exit-vrf
1821b137
AD
1010!
1011router bgp 1234
1012 bgp router-id 192.168.0.2
1013 no bgp default ipv4-unicast
c141a897 1014 no bgp default ipv6-unicast
1821b137
AD
1015 coalesce-time 1000
1016 neighbor 192.168.0.1 remote-as 1234
1017 neighbor 192.168.0.3 remote-as 1234
1018 !
1019 address-family l2vpn evpn
1020 neighbor 192.168.0.1 activate
1021 neighbor 192.168.0.3 activate
1022 advertise-all-vni
1023 exit-address-family
1024!
1821b137
AD
1025line vty
1026!
1027----
1028
1029
1030* node3
1031
1032----
1033auto vrf1
1034iface vrf1
1035 vrf-table auto
1036
1037auto eno1
1038iface eno1 inet manual
47cf2d10 1039 mtu 1550
4d3f6a2e 1040
1821b137
AD
1041auto vmbr0
1042iface vmbr0 inet static
1043 address 192.168.0.3
1044 netmask 255.255.255.0
1045 bridge_ports eno1
1046 bridge_stp off
1047 bridge_fd 0
1048
1049auto vxlan2
1050iface vxlan2 inet manual
edcf2118 1051 vxlan-id 2
1821b137
AD
1052 vxlan-local-tunnelip 192.168.0.3
1053 bridge-learning off
1054 bridge-arp-nd-suppress on
1055 bridge-unicast-flood off
1056 bridge-multicast-flood off
1057
1058auto vmbr2
1059iface vmbr2 inet static
1060 bridge_ports vxlan2
1061 bridge_stp off
1062 bridge_fd 0
1063 address 10.0.2.254
1064 netmask 255.255.255.0
1065 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1066 vrf vrf1
fc8f7b53
AD
1067 ip-forward on
1068 ip6-forward on
1069 arp-accept on
1821b137
AD
1070
1071auto vxlan3
1072iface vxlan3 inet manual
edcf2118 1073 vxlan-id 3
1821b137
AD
1074 vxlan-local-tunnelip 192.168.0.3
1075 bridge-learning off
1076 bridge-arp-nd-suppress on
1077 bridge-unicast-flood off
1078 bridge-multicast-flood off
1079
1080auto vmbr3
1081iface vmbr3 inet static
1082 bridge_ports vxlan3
1083 bridge_stp off
1084 bridge_fd 0
1085 address 10.0.3.254
1086 netmask 255.255.255.0
1087 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1088 vrf vrf1
fc8f7b53
AD
1089 ip-forward on
1090 ip6-forward on
1091 arp-accept on
1821b137
AD
1092
1093#interconnect vxlan-vfr l3vni
1094auto vxlan4000
1095iface vxlan4000 inet manual
edcf2118 1096 vxlan-id 4000
1821b137
AD
1097 vxlan-local-tunnelip 192.168.0.3
1098 bridge-learning off
1099 bridge-arp-nd-suppress on
1100 bridge-unicast-flood off
1101 bridge-multicast-flood off
1102
1103
1104auto vmbr4000
1105iface vmbr4000 inet manual
1106 bridge_ports vxlan4000
1107 bridge_stp off
1108 bridge_fd 0
1821b137
AD
1109 vrf vrf1
1110----
1111
1112
1113frr.conf
1114
1115----
1116vrf vrf1
1117 vni 4000
250e8aa6 1118 exit-vrf
1821b137
AD
1119!
1120router bgp 1234
1121 bgp router-id 192.168.0.3
1122 no bgp default ipv4-unicast
c141a897 1123 no bgp default ipv6-unicast
1821b137
AD
1124 coalesce-time 1000
1125 neighbor 192.168.0.1 remote-as 1234
1126 neighbor 192.168.0.2 remote-as 1234
1127 !
1128 address-family l2vpn evpn
1129 neighbor 192.168.0.1 activate
1130 neighbor 192.168.0.2 activate
1131 advertise-all-vni
1132 exit-address-family
1133!
1821b137
AD
1134line vty
1135!
1136----
76b6e857
AD
1137
1138VXLAN layer3 routing with anycast gateway + routing to outside with external router
1139~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1140Routing to outside need the symmetric model.
1141
11421 gateway node
1143^^^^^^^^^^^^^^
1144In this example, we'll use only 1 proxmox node as exit gateway. (node1)
250e8aa6 1145This node announce the default gw in vrf1 (default originate) and forward to his own default gateway (192.168.0.254) (no bgp between router and node1)
76b6e857
AD
1146
1147
1148*node1
1149
1150----
1151auto vrf1
1152iface vrf1
1153 vrf-table auto
1154
1155auto eno1
1156iface eno1 inet manual
47cf2d10 1157 mtu 1550
76b6e857
AD
1158
1159auto vmbr0
1160iface vmbr0 inet static
1161 address 192.168.0.1
1162 netmask 255.255.255.0
250e8aa6 1163 gateway 192.168.0.254
76b6e857
AD
1164 bridge_ports eno1
1165 bridge_stp off
1166 bridge_fd 0
ae2687d3
AD
1167 ip-forward on
1168 ip6-forward on
76b6e857 1169
76b6e857
AD
1170auto vxlan2
1171iface vxlan2 inet manual
edcf2118 1172 vxlan-id 2
76b6e857
AD
1173 vxlan-local-tunnelip 192.168.0.1
1174 bridge-learning off
1175 bridge-arp-nd-suppress on
1176 bridge-unicast-flood off
1177 bridge-multicast-flood off
1178
1179auto vmbr2
1180iface vmbr2 inet static
1181 bridge_ports vxlan2
1182 bridge_stp off
1183 bridge_fd 0
1184 address 10.0.2.254
1185 netmask 255.255.255.0
1186 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1187 vrf vrf1
fc8f7b53
AD
1188 ip-forward on
1189 ip6-forward on
1190 arp-accept on
76b6e857
AD
1191
1192auto vxlan3
1193iface vxlan3 inet manual
edcf2118 1194 vxlan-id 3
76b6e857
AD
1195 vxlan-local-tunnelip 192.168.0.1
1196 bridge-learning off
1197 bridge-arp-nd-suppress on
1198 bridge-unicast-flood off
1199 bridge-multicast-flood off
1200
1201auto vmbr3
1202iface vmbr3 inet static
1203 bridge_ports vxlan3
1204 bridge_stp off
1205 bridge_fd 0
1206 address 10.0.3.254
1207 netmask 255.255.255.0
1208 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1209 vrf vrf1
fc8f7b53
AD
1210 ip-forward on
1211 ip6-forward on
1212 arp-accept on
76b6e857
AD
1213
1214#interconnect vxlan-vfr l3vni
1215auto vxlan4000
1216iface vxlan4000 inet manual
edcf2118 1217 vxlan-id 4000
76b6e857
AD
1218 vxlan-local-tunnelip 192.168.0.1
1219 bridge-learning off
1220 bridge-arp-nd-suppress on
1221 bridge-unicast-flood off
1222 bridge-multicast-flood off
1223
1224auto vmbr4000
1225iface vmbr4000 inet manual
1226 bridge_ports vxlan4000
1227 bridge_stp off
1228 bridge_fd 0
76b6e857
AD
1229 vrf vrf1
1230----
1231
1232
1233frr.conf
1234
1235----
1236vrf vrf1
1237 vni 4000
250e8aa6 1238 exit-vrf
76b6e857
AD
1239!
1240router bgp 1234
1241 bgp router-id 192.168.0.1
1242 no bgp default ipv4-unicast
c141a897 1243 no bgp default ipv6-unicast
76b6e857
AD
1244 coalesce-time 1000
1245 neighbor 192.168.0.2 remote-as 1234
1246 neighbor 192.168.0.3 remote-as 1234
1247 !
250e8aa6
AD
1248 address-family ipv4 unicast
1249 import vrf vrf1
1250 exit-address-family
1251 !
76b6e857
AD
1252 address-family l2vpn evpn
1253 neighbor 192.168.0.2 activate
1254 neighbor 192.168.0.3 activate
1255 advertise-all-vni
1256 exit-address-family
1257!
1258router bgp 1234 vrf vrf1
1259!
ae2687d3
AD
1260 address-family ipv4 unicast
1261 redistribute connected
1262 exit-address-family
1263 !
76b6e857 1264 address-family l2vpn evpn
250e8aa6 1265 default-originate ipv4
76b6e857
AD
1266 exit-address-family
1267!
1268line vty
1269!
1270----
1271
1272
1273* node2
1274
1275----
1276auto vrf1
1277iface vrf1
1278 vrf-table auto
1279
1280auto eno1
1281iface eno1 inet manual
47cf2d10 1282 mtu 1550
4d3f6a2e 1283
76b6e857
AD
1284auto vmbr0
1285iface vmbr0 inet static
1286 address 192.168.0.2
1287 netmask 255.255.255.0
1288 bridge_ports eno1
1289 bridge_stp off
1290 bridge_fd 0
1291
1292auto vxlan2
1293iface vxlan2 inet manual
edcf2118 1294 vxlan-id 2
76b6e857
AD
1295 vxlan-local-tunnelip 192.168.0.2
1296 bridge-learning off
1297 bridge-arp-nd-suppress on
1298 bridge-unicast-flood off
1299 bridge-multicast-flood off
1300
1301auto vmbr2
1302iface vmbr2 inet static
1303 bridge_ports vxlan2
1304 bridge_stp off
1305 bridge_fd 0
1306 address 10.0.2.254
1307 netmask 255.255.255.0
1308 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1309 vrf vrf1
fc8f7b53
AD
1310 ip-forward on
1311 ip6-forward on
1312 arp-accept on
76b6e857
AD
1313
1314auto vxlan3
1315iface vxlan3 inet manual
edcf2118 1316 vxlan-id 3
76b6e857
AD
1317 vxlan-local-tunnelip 192.168.0.2
1318 bridge-learning off
1319 bridge-arp-nd-suppress on
1320 bridge-unicast-flood off
1321 bridge-multicast-flood off
1322
1323auto vmbr3
1324iface vmbr3 inet static
1325 bridge_ports vxlan3
1326 bridge_stp off
1327 bridge_fd 0
1328 address 10.0.3.254
1329 netmask 255.255.255.0
1330 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1331 vrf vrf1
fc8f7b53
AD
1332 ip-forward on
1333 ip6-forward on
1334 arp-accept on
76b6e857
AD
1335
1336#interconnect vxlan-vfr l3vni
1337auto vxlan4000
1338iface vxlan4000 inet manual
edcf2118 1339 vxlan-id 4000
76b6e857
AD
1340 vxlan-local-tunnelip 192.168.0.2
1341 bridge-learning off
1342 bridge-arp-nd-suppress on
1343 bridge-unicast-flood off
1344 bridge-multicast-flood off
1345
1346
1347auto vmbr4000
1348iface vmbr4000 inet manual
1349 bridge_ports vxlan4000
1350 bridge_stp off
1351 bridge_fd 0
76b6e857
AD
1352 vrf vrf1
1353----
1354
1355
1356frr.conf
1357
1358----
1359vrf vrf1
1360 vni 4000
250e8aa6 1361 exit-vrf
76b6e857
AD
1362!
1363router bgp 1234
1364 bgp router-id 192.168.0.2
1365 no bgp default ipv4-unicast
c141a897 1366 no bgp default ipv6-unicast
76b6e857
AD
1367 coalesce-time 1000
1368 neighbor 192.168.0.1 remote-as 1234
1369 neighbor 192.168.0.3 remote-as 1234
1370 !
1371 address-family l2vpn evpn
1372 neighbor 192.168.0.1 activate
1373 neighbor 192.168.0.3 activate
1374 advertise-all-vni
1375 exit-address-family
1376!
76b6e857
AD
1377line vty
1378!
1379----
1380
1381
1382* node3
1383
1384----
1385auto vrf1
1386iface vrf1
1387 vrf-table auto
1388
1389auto eno1
1390iface eno1 inet manual
47cf2d10 1391 mtu 1550
4d3f6a2e 1392
76b6e857
AD
1393auto vmbr0
1394iface vmbr0 inet static
1395 address 192.168.0.3
1396 netmask 255.255.255.0
1397 bridge_ports eno1
1398 bridge_stp off
1399 bridge_fd 0
1400
1401auto vxlan2
1402iface vxlan2 inet manual
edcf2118 1403 vxlan-id 2
76b6e857
AD
1404 vxlan-local-tunnelip 192.168.0.3
1405 bridge-learning off
1406 bridge-arp-nd-suppress on
1407 bridge-unicast-flood off
1408 bridge-multicast-flood off
1409
1410auto vmbr2
1411iface vmbr2 inet static
1412 bridge_ports vxlan2
1413 bridge_stp off
1414 bridge_fd 0
1415 address 10.0.2.254
1416 netmask 255.255.255.0
1417 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1418 vrf vrf1
fc8f7b53
AD
1419 ip-forward on
1420 ip6-forward on
1421 arp-accept on
76b6e857
AD
1422
1423auto vxlan3
1424iface vxlan3 inet manual
edcf2118 1425 vxlan-id 3
76b6e857
AD
1426 vxlan-local-tunnelip 192.168.0.3
1427 bridge-learning off
1428 bridge-arp-nd-suppress on
1429 bridge-unicast-flood off
1430 bridge-multicast-flood off
1431
1432auto vmbr3
1433iface vmbr3 inet static
1434 bridge_ports vxlan3
1435 bridge_stp off
1436 bridge_fd 0
1437 address 10.0.3.254
1438 netmask 255.255.255.0
1439 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1440 vrf vrf1
fc8f7b53
AD
1441 ip-forward on
1442 ip6-forward on
1443 arp-accept on
76b6e857
AD
1444
1445#interconnect vxlan-vfr l3vni
1446auto vxlan4000
1447iface vxlan4000 inet manual
edcf2118 1448 vxlan-id 4000
76b6e857
AD
1449 vxlan-local-tunnelip 192.168.0.3
1450 bridge-learning off
1451 bridge-arp-nd-suppress on
1452 bridge-unicast-flood off
1453 bridge-multicast-flood off
1454
1455
1456auto vmbr4000
1457iface vmbr4000 inet manual
1458 bridge_ports vxlan4000
1459 bridge_stp off
1460 bridge_fd 0
76b6e857
AD
1461 vrf vrf1
1462----
1463
1464
1465frr.conf
1466
1467----
1468vrf vrf1
1469 vni 4000
250e8aa6 1470 exit-vrf
76b6e857
AD
1471!
1472router bgp 1234
1473 bgp router-id 192.168.0.3
1474 no bgp default ipv4-unicast
c141a897 1475 no bgp default ipv6-unicast
76b6e857
AD
1476 coalesce-time 1000
1477 neighbor 192.168.0.1 remote-as 1234
1478 neighbor 192.168.0.2 remote-as 1234
1479 !
1480 address-family l2vpn evpn
1481 neighbor 192.168.0.1 activate
1482 neighbor 192.168.0.2 activate
1483 advertise-all-vni
1484 exit-address-family
1485!
76b6e857
AD
1486line vty
1487!
1488----
1489
1490multiple gateway nodes
1491^^^^^^^^^^^^^^^^^^^^^^
1492In this example, all nodes will be used as exit gateway. (But you can use only 2 nodes if you want)
250e8aa6
AD
1493All nodes have a a default gw to the external router (192.168.0.254) (no bgp between router and node1)
1494and announce this default gw in the vrf (default originate)
76b6e857
AD
1495The external router have ecmp routes to all proxmox nodes.(balancing).
1496If the router send the packet to a wrong node (vm is not on this node), this node will route through
1497vxlan the packet to final destination.
1498
1499*node1
1500
1501----
1502auto vrf1
1503iface vrf1
1504 vrf-table auto
1505
1506auto eno1
1507iface eno1 inet manual
47cf2d10 1508 mtu 1550
76b6e857
AD
1509
1510auto vmbr0
1511iface vmbr0 inet static
1512 address 192.168.0.1
1513 netmask 255.255.255.0
250e8aa6 1514 gateway 192.168.0.254
76b6e857
AD
1515 bridge_ports eno1
1516 bridge_stp off
1517 bridge_fd 0
ae2687d3
AD
1518 ip-forward on
1519 ip6-forward on
76b6e857 1520
76b6e857
AD
1521auto vxlan2
1522iface vxlan2 inet manual
edcf2118 1523 vxlan-id 2
76b6e857
AD
1524 vxlan-local-tunnelip 192.168.0.1
1525 bridge-learning off
1526 bridge-arp-nd-suppress on
1527 bridge-unicast-flood off
1528 bridge-multicast-flood off
1529
1530auto vmbr2
1531iface vmbr2 inet static
1532 bridge_ports vxlan2
1533 bridge_stp off
1534 bridge_fd 0
1535 address 10.0.2.254
1536 netmask 255.255.255.0
1537 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1538 vrf vrf1
fc8f7b53
AD
1539 ip-forward on
1540 ip6-forward on
1541 arp-accept on
76b6e857
AD
1542
1543auto vxlan3
1544iface vxlan3 inet manual
edcf2118 1545 vxlan-id 3
76b6e857
AD
1546 vxlan-local-tunnelip 192.168.0.1
1547 bridge-learning off
1548 bridge-arp-nd-suppress on
1549 bridge-unicast-flood off
1550 bridge-multicast-flood off
1551
1552auto vmbr3
1553iface vmbr3 inet static
1554 bridge_ports vxlan3
1555 bridge_stp off
1556 bridge_fd 0
1557 address 10.0.3.254
1558 netmask 255.255.255.0
1559 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1560 vrf vrf1
fc8f7b53
AD
1561 ip-forward on
1562 ip6-forward on
1563 arp-accept on
76b6e857
AD
1564
1565#interconnect vxlan-vfr l3vni
1566auto vxlan4000
1567iface vxlan4000 inet manual
edcf2118 1568 vxlan-id 4000
76b6e857
AD
1569 vxlan-local-tunnelip 192.168.0.1
1570 bridge-learning off
1571 bridge-arp-nd-suppress on
1572 bridge-unicast-flood off
1573 bridge-multicast-flood off
1574
1575auto vmbr4000
1576iface vmbr4000 inet manual
1577 bridge_ports vxlan4000
1578 bridge_stp off
1579 bridge_fd 0
76b6e857
AD
1580 vrf vrf1
1581----
1582
1583
1584frr.conf
1585
1586----
1587vrf vrf1
1588 vni 4000
250e8aa6 1589 exit-vrf
76b6e857
AD
1590!
1591router bgp 1234
1592 bgp router-id 192.168.0.1
1593 no bgp default ipv4-unicast
c141a897 1594 no bgp default ipv6-unicast
76b6e857
AD
1595 coalesce-time 1000
1596 neighbor 192.168.0.2 remote-as 1234
1597 neighbor 192.168.0.3 remote-as 1234
1598 !
250e8aa6
AD
1599 address-family ipv4 unicast
1600 import vrf vrf1
1601 exit-address-family
1602 !
76b6e857
AD
1603 address-family l2vpn evpn
1604 neighbor 192.168.0.2 activate
1605 neighbor 192.168.0.3 activate
1606 advertise-all-vni
1607 exit-address-family
1608!
1609router bgp 1234 vrf vrf1
1610!
ae2687d3
AD
1611 address-family ipv4 unicast
1612 redistribute connected
1613 exit-address-family
1614 !
76b6e857 1615 address-family l2vpn evpn
250e8aa6 1616 default-originate ipv4
76b6e857
AD
1617 exit-address-family
1618!
1619line vty
1620!
1621----
1622
1623
1624* node2
1625
1626----
1627auto vrf1
1628iface vrf1
1629 vrf-table auto
1630
1631auto eno1
1632iface eno1 inet manual
47cf2d10 1633 mtu 1550
4d3f6a2e 1634
76b6e857
AD
1635auto vmbr0
1636iface vmbr0 inet static
1637 address 192.168.0.2
1638 netmask 255.255.255.0
250e8aa6 1639 gateway 192.168.0.254
76b6e857
AD
1640 bridge_ports eno1
1641 bridge_stp off
1642 bridge_fd 0
ae2687d3
AD
1643 ip-forward on
1644 ip6-forward on
76b6e857 1645
76b6e857
AD
1646auto vxlan2
1647iface vxlan2 inet manual
edcf2118 1648 vxlan-id 2
76b6e857
AD
1649 vxlan-local-tunnelip 192.168.0.2
1650 bridge-learning off
1651 bridge-arp-nd-suppress on
1652 bridge-unicast-flood off
1653 bridge-multicast-flood off
1654
1655auto vmbr2
1656iface vmbr2 inet static
1657 bridge_ports vxlan2
1658 bridge_stp off
1659 bridge_fd 0
1660 address 10.0.2.254
1661 netmask 255.255.255.0
1662 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1663 vrf vrf1
fc8f7b53
AD
1664 ip-forward on
1665 ip6-forward on
1666 arp-accept on
76b6e857
AD
1667
1668auto vxlan3
1669iface vxlan3 inet manual
edcf2118 1670 vxlan-id 3
76b6e857
AD
1671 vxlan-local-tunnelip 192.168.0.2
1672 bridge-learning off
1673 bridge-arp-nd-suppress on
1674 bridge-unicast-flood off
1675 bridge-multicast-flood off
1676
1677auto vmbr3
1678iface vmbr3 inet static
1679 bridge_ports vxlan3
1680 bridge_stp off
1681 bridge_fd 0
1682 address 10.0.3.254
1683 netmask 255.255.255.0
1684 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1685 vrf vrf1
fc8f7b53
AD
1686 ip-forward on
1687 ip6-forward on
1688 arp-accept on
76b6e857
AD
1689
1690#interconnect vxlan-vfr l3vni
1691auto vxlan4000
1692iface vxlan4000 inet manual
edcf2118 1693 vxlan-id 4000
76b6e857
AD
1694 vxlan-local-tunnelip 192.168.0.2
1695 bridge-learning off
1696 bridge-arp-nd-suppress on
1697 bridge-unicast-flood off
1698 bridge-multicast-flood off
1699
1700
1701auto vmbr4000
1702iface vmbr4000 inet manual
1703 bridge_ports vxlan4000
1704 bridge_stp off
1705 bridge_fd 0
76b6e857
AD
1706 vrf vrf1
1707----
1708
1709
1710frr.conf
1711
1712----
1713vrf vrf1
1714 vni 4000
250e8aa6 1715 exit-vrf
76b6e857
AD
1716!
1717router bgp 1234
1718 bgp router-id 192.168.0.2
1719 no bgp default ipv4-unicast
c141a897 1720 no bgp default ipv6-unicast
76b6e857
AD
1721 coalesce-time 1000
1722 neighbor 192.168.0.1 remote-as 1234
1723 neighbor 192.168.0.3 remote-as 1234
1724 !
250e8aa6
AD
1725 address-family ipv4 unicast
1726 import vrf vrf1
1727 exit-address-family
1728 !
76b6e857
AD
1729 address-family l2vpn evpn
1730 neighbor 192.168.0.1 activate
1731 neighbor 192.168.0.3 activate
1732 advertise-all-vni
1733 exit-address-family
1734!
ae2687d3
AD
1735 address-family ipv4 unicast
1736 redistribute connected
1737 exit-address-family
1738 !
76b6e857 1739 address-family l2vpn evpn
250e8aa6 1740 default-originate ipv4
76b6e857
AD
1741 exit-address-family
1742!
1743line vty
1744!
1745----
1746
1747
1748* node3
1749
1750----
1751auto vrf1
1752iface vrf1
1753 vrf-table auto
1754
1755auto eno1
1756iface eno1 inet manual
47cf2d10
AD
1757 mtu 1550
1758
76b6e857
AD
1759auto vmbr0
1760iface vmbr0 inet static
1761 address 192.168.0.3
1762 netmask 255.255.255.0
250e8aa6 1763 gateway 192.168.0.254
76b6e857
AD
1764 bridge_ports eno1
1765 bridge_stp off
1766 bridge_fd 0
ae2687d3
AD
1767 ip-forward on
1768 ip6-forward on
76b6e857 1769
76b6e857
AD
1770auto vxlan2
1771iface vxlan2 inet manual
edcf2118 1772 vxlan-id 2
76b6e857
AD
1773 vxlan-local-tunnelip 192.168.0.3
1774 bridge-learning off
1775 bridge-arp-nd-suppress on
1776 bridge-unicast-flood off
1777 bridge-multicast-flood off
1778
1779auto vmbr2
1780iface vmbr2 inet static
1781 bridge_ports vxlan2
1782 bridge_stp off
1783 bridge_fd 0
1784 address 10.0.2.254
1785 netmask 255.255.255.0
1786 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr2
1787 vrf vrf1
fc8f7b53
AD
1788 ip-forward on
1789 ip6-forward on
1790 arp-accept on
76b6e857
AD
1791
1792auto vxlan3
1793iface vxlan3 inet manual
edcf2118 1794 vxlan-id 3
76b6e857
AD
1795 vxlan-local-tunnelip 192.168.0.3
1796 bridge-learning off
1797 bridge-arp-nd-suppress on
1798 bridge-unicast-flood off
1799 bridge-multicast-flood off
1800
1801auto vmbr3
1802iface vmbr3 inet static
1803 bridge_ports vxlan3
1804 bridge_stp off
1805 bridge_fd 0
1806 address 10.0.3.254
1807 netmask 255.255.255.0
1808 hwaddress 44:39:39:FF:40:94 #must be same on each node vmbr3
1809 vrf vrf1
fc8f7b53
AD
1810 ip-forward on
1811 ip6-forward on
1812 arp-accept on
76b6e857
AD
1813
1814#interconnect vxlan-vfr l3vni
1815auto vxlan4000
1816iface vxlan4000 inet manual
edcf2118 1817 vxlan-id 4000
76b6e857
AD
1818 vxlan-local-tunnelip 192.168.0.3
1819 bridge-learning off
1820 bridge-arp-nd-suppress on
1821 bridge-unicast-flood off
1822 bridge-multicast-flood off
1823
1824
1825auto vmbr4000
1826iface vmbr4000 inet manual
1827 bridge_ports vxlan4000
1828 bridge_stp off
1829 bridge_fd 0
76b6e857
AD
1830 vrf vrf1
1831----
1832
1833
1834frr.conf
1835
1836----
1837vrf vrf1
1838 vni 4000
250e8aa6 1839 exit-vrf
76b6e857
AD
1840!
1841router bgp 1234
1842 bgp router-id 192.168.0.3
1843 no bgp default ipv4-unicast
c141a897 1844 no bgp default ipv6-unicast
76b6e857
AD
1845 coalesce-time 1000
1846 neighbor 192.168.0.1 remote-as 1234
1847 neighbor 192.168.0.2 remote-as 1234
1848 !
250e8aa6
AD
1849 address-family ipv4 unicast
1850 import vrf vrf1
1851 exit-address-family
1852 !
76b6e857
AD
1853 address-family l2vpn evpn
1854 neighbor 192.168.0.1 activate
1855 neighbor 192.168.0.2 activate
1856 advertise-all-vni
1857 exit-address-family
1858!
1859router bgp 1234 vrf vrf1
1860!
ae2687d3
AD
1861 address-family ipv4 unicast
1862 redistribute connected
1863 exit-address-family
1864 !
76b6e857 1865 address-family l2vpn evpn
250e8aa6 1866 default-originate ipv4
76b6e857
AD
1867 exit-address-family
1868!
1869line vty
1870!
1871----
1872
1873Note
1874^^^^
1875
8adeb0eb
TL
1876If your external router doesn't support 'ECMP static routes' to reach multiple
1877{pve} nodes, you can setup an HA floating vip on proxmox nodes by using the
1878Virtual Router Redundancy Protocol (VRRP).
76b6e857 1879
8adeb0eb
TL
1880In this example, we will setup an floating 192.168.0.10 IP on node1 and node2.
1881Node1 is the primary with failover to node2 in case of outage.
76b6e857 1882
8adeb0eb 1883This setup currently needs 'vrrpd' package (`apt install vrrpd`).
250e8aa6 1884#TODO : It should be possible to do it with frr directly with last version.
76b6e857
AD
1885
1886* node1
1887
1888----
250e8aa6
AD
1889auto vmbr0
1890iface vmbr0 inet static
1891 address 192.168.0.1
1892 netmask 255.255.255.0
1893 gateway 192.168.0.254
1894 bridge_ports eno1
1895 bridge_stp off
1896 bridge_fd 0
1897 vrrp-id 1
1898 vrrp-priority 1
1899 vrrp-virtual-ip 192.168.0.10
76b6e857
AD
1900----
1901
1902* node2
1903
1904----
250e8aa6
AD
1905auto vmbr0
1906iface vmbr0 inet static
1907 address 192.168.0.2
1908 netmask 255.255.255.0
1909 gateway 192.168.0.254
1910 bridge_ports eno1
1911 bridge_stp off
1912 bridge_fd 0
1913 vrrp-id 1
1914 vrrp-priority 2
1915 vrrp-virtual-ip 192.168.0.10
76b6e857
AD
1916----
1917
1918
8adeb0eb 1919Route Reflectors
846e9430 1920^^^^^^^^^^^^^^^^
8adeb0eb
TL
1921If you have a lot of proxmox nodes, or multiple proxmox clusters, you may want
1922to avoid that all node peers with each others nodes.
1923For this, you can create dedicated route reflectors (RR) servers. As a RR is a
1924single point of failure, a minimum of two servers acting as an RR is highly
1925recommended for redundancy.
1926
1927Below is an example of configuration with 'frr', with `rrserver1
1928(192.168.0.200)' and `rrserver2 (192.168.0.201)`.
846e9430
AD
1929
1930rrserver1
1931----
1932router bgp 1234
1933 bgp router-id 192.168.0.200
4d3f6a2e 1934 bgp cluster-id 1.1.1.1 #cluster-id must be the same on each route reflector
846e9430
AD
1935 bgp log-neighbor-changes
1936 no bgp default ipv4-unicast
c141a897 1937 no bgp default ipv6-unicast
846e9430
AD
1938 neighbor fabric peer-group
1939 neighbor fabric remote-as 1234
1940 neighbor fabric capability extended-nexthop
1941 neighbor fabric update-source 192.168.0.200
1942 bgp listen range 192.168.0.0/24 peer-group fabric #allow any proxmoxnode client in the network range
1943 !
1944 address-family l2vpn evpn
1945 neighbor fabric activate
1946 neighbor fabric route-reflector-client
1947 neighbor fabric allowas-in
1948 exit-address-family
1949 !
1950 exit
1951!
1952---
1953
1954rrserver2
1955----
1956router bgp 1234
1957 bgp router-id 192.168.0.201
4d3f6a2e 1958 bgp cluster-id 1.1.1.1
846e9430
AD
1959 bgp log-neighbor-changes
1960 no bgp default ipv4-unicast
c141a897 1961 no bgp default ipv6-unicast
846e9430
AD
1962 neighbor fabric peer-group
1963 neighbor fabric remote-as 1234
1964 neighbor fabric capability extended-nexthop
1965 neighbor fabric update-source 192.168.0.201
1966 bgp listen range 192.168.0.0/24 peer-group fabric
1967 !
1968 address-family l2vpn evpn
1969 neighbor fabric activate
1970 neighbor fabric route-reflector-client
1971 neighbor fabric allowas-in
1972 exit-address-family
1973 !
1974 exit
1975!
1976---
1977
1978proxmoxnode(s)
1979----
1980router bgp 1234
1981 bgp router-id 192.168.0.x
1982 no bgp default ipv4-unicast
c141a897 1983 no bgp default ipv6-unicast
846e9430
AD
1984 coalesce-time 1000
1985 neighbor 192.168.0.200 remote-as 1234
1986 neighbor 192.168.0.201 remote-as 1234
1987 !
846e9430
AD
1988 address-family l2vpn evpn
1989 neighbor 192.168.0.200 activate
1990 neighbor 192.168.0.201 activate
1991 advertise-all-vni
1992 exit-address-family
1993!
1994----
1995
250e8aa6 1996#TODO : Documentation with bgp upstream router.