# L3VPN with EVPN

> VXLAN L3VPN с control plane на BGP EVPN в VyOS - overlay-сеть фабрики ЦОД, симметричная маршрутизация IRB и изоляция тенантов.

Source: https://opennix.org/docs/vyos/examples/l3vpn-evpn/


L3VPN с EVPN (Ethernet VPN) и VXLAN для modern datacenter overlay networks с multi-tenancy.

## Сценарий

- Datacenter Fabric: Spine-leaf с VXLAN overlay
- Multi-Tenant: Изоляция через VRF + VNI
- BGP EVPN: Distributed control plane

## Topology

```
     Spine-1          Spine-2
        │     BGP EVPN    │
     ┌──┴────────┬────────┴──┐
     │           │           │
   Leaf-1      Leaf-2      Leaf-3
   (VTEP)      (VTEP)      (VTEP)
     │           │           │
  Tenant-A   Tenant-B   Tenant-C
```

## VyOS Leaf (VTEP) Configuration

```bash
# Loopback (VTEP source)
set interfaces loopback lo address '10.255.1.1/32'

# VXLAN Interface (VNI 2000)
set interfaces vxlan vxlan2000 source-address '10.255.1.1'
set interfaces vxlan vxlan2000 vni '2000'
set interfaces vxlan vxlan2000 parameters nolearning

# Bridge
set interfaces bridge br2000 member interface vxlan2000

# VRF для Tenant
set vrf name TENANT-A table '2000'
set interfaces bridge br2000 vrf 'TENANT-A'

# BGP EVPN
set protocols bgp system-as '65001'
set protocols bgp address-family l2vpn-evpn advertise-all-vni
set protocols bgp address-family l2vpn-evpn vni 2000
set protocols bgp neighbor 10.255.0.1 remote-as '65000'
set protocols bgp neighbor 10.255.0.1 address-family l2vpn-evpn activate
```

## Spine Configuration

Spine роутеры работают как BGP Route Reflectors для EVPN routes.

```bash
set protocols bgp neighbor 10.255.1.0/24 address-family l2vpn-evpn route-reflector-client
```

## Ссылки

- [VyOS VXLAN](https://docs.vyos.io/en/latest/configuration/interfaces/vxlan.html)
- [VyOS EVPN](https://docs.vyos.io/en/latest/configuration/protocols/bgp.html#evpn)
- [RFC 8365 - BGP EVPN](https://datatracker.ietf.org/doc/html/rfc8365)
- [VyOS L3VPN EVPN Example](https://docs.vyos.io/en/latest/configexamples/autotest/L3VPN_EVPN/L3VPN_EVPN.html)

