Cisco L2VPN
Virtual Private LAN Service (VPLS) är ett sätt att tillhandahålla Ethernet-baserad multipoint-to-multipoint-kommunikation över IP eller MPLS. Multipla siter kopplas ihop med hjälp av pseudowires. De underliggande tekniker som kan användas som pseudowire är Ethernet over MPLS, L2TPv3 eller GRE. Den vanligaste bäraren är MPLS och för control plane (Auto-Discovery/Signaling) kan LDP eller BGP användas. Det finns inbyggd loop prevention i form av att frames som kommer ifrån en VPLS aldrig får skickas vidare inom VPLS. VPLS skalar inte superbra eftersom det kräver full-mesh, detta går att bygga ut med Hierarchical VPLS. Det man gör då är att koppla ihop flera VPLS och stänga av split horizon vid intersektionerna. En annan begränsande faktor är minnesmängden på VPLS Edge devices eftersom de måste lära sig kundens MAC-adresser. Att sträcka L2 är aldrig häftigt men man får göra så gott man kan med STP alternativt ha routrar direkt på andra sidan. Se även Cisco MPLS.
Contents
Ethernet Virtual Circuit
Att binda en kund eller tjänst till en port eller VLAN var en begränsande faktor i access-lagret. Därför togs EVC framework fram för att komma förbi det. Det är en unified software infrastructure för att konfigurera Ethernet services. Tanken är att låta access circuits mappas till flera olika typer av Ethernet-tjänster så som L2 point-to-point local connects, L2 point-to-point xconnects, L2 multipoint-to-multipoint VPLS och andra tjänster. Man kan genom att välja encapsulation även vlan-tagga, dubbel-tagga eller skriva om vlan-tag.
interface GigabitEthernet2 no ip address service instance 10 ethernet encapsulation default xconnect 19.19.19.19 219 encapsulation mpls
Verification
show ethernet service instance summary show ethernet service instance id 10 interface gig2 detail
Konfiguration
Manual VPLS, legacy syntax. Bridge domain används för mac learning samt att binda ihop Ethernet UNI med LSP. Man kan ej blanda gammal och ny syntax pga att bridge-domain betyder olika beroende på config context.
l2 vfi VPLS manual vpn id 100 bridge-domain 1 neighbor 10.0.0.2 encapsulation mpls neighbor 10.0.0.3 encapsulation mpls interface gi2 service instance 10 ethernet encapsulation default bridge-domain 1
Manual VPLS, preferred syntax. Full mesh scaling är ett administrativt problem oavsett syntax.
l2vpn vfi context VPLS vpn id 100 member 10.0.0.2 encapsulation mpls member 10.0.0.3 encapsulation mpls member 10.0.0.4 encapsulation mpls interface gi2 service instance 10 ethernet encapsulation default bridge-domain 1 mac limit maximum addresses 50 member gi2 service-instance 10 member vfi VPLS
Verify
show l2vpn vfi show bridge-domain show mpls l2transport vc show mpls forwarding-table | i l2ckt
Man kan även koppla in L3-interface på sin bridge-domain.
interface BDI1 ip address 172.20.0.10 255.255.255.0
BGP Autodiscovery
LDP based VPLS med BGP Autodiscovery (RFC 4762). BGP används för att upptäcka VPLS-endpoints automatiskt för varje VPN och VC-grannar konfigureras ej maneullt. Varje VPLS får en egen rd och detta går att använda i kombination med route reflector.
l2vpn vfi context VPLS vpn id 100 autodiscovery bgp signaling ldp auto-route-target #på default router bgp 100 address-family l2vpn vpls neighbor 1.1.1.1 activate neighbor 1.1.1.1 send-comunity extended
Verify
show bgp l2vpn vpls all summary
BGP based VPLS med BGP Autodiscovery (RFC 4761). BGP används för att upptäcka VPLS-endpoints men också för att signalera labels. Man måste suppress ldp signaling för att slå på bgp signaling.
l2vpn vfi context VPLS vpn id 100 autodiscovery bgp signaling bgp ve id 11 #unik per VPLS Edge device router bgp 100 address-family l2vpn vpls neighbor 1.1.1.1 suppress-signaling-protocol ldp
Verify
show bgp l2vpn vpls all
L2 Tunneling
För CDP, LACP, STP frames etc krävs l2 tunneling protocol. Detta finns det inte stöd för på alla plattformar, l2protocol action not supported.
interface gi2 service instance 100 ethernet l2protocol tunnel show ethernet service instance detail | i L2protocol
AToM
Any Transport over MPLS (RFC 4448). Requires end-to-end MPLS LSP och att targeted LDP tillåts.
xconnect logging pseudowire status mpls ldp discovery targeted-hello accept
PE1
interface gi2 xconnect 2.2.2.2 102 encapsulation mpls
PE2, VCID måste matcha på båda sidor
interface gi2 xconnect 1.1.1.1 102 encapsulation mpls
Verify
show xconnect all show xconnect peer 2.2.2.2 vcid 102 show mpls l2transport vc 102 detail ping mpls pseudowire 10.0.0.10 102
Segment 1 är de interface som kunden sitter på, segment 2 är core.
Inter AS
Inter AS pseudowire går att bygga PE <-> ASBR <-> ASBR <-> PE.
AS1-BR
pseudowire-class PW encapsulation mpls l2 vfi PW-SWITCH point-to-point neighbor <AS2-BR IP> 100 pw-class PW neighbor <PE IP> 16 pw-class PW
L2TPv3
Layer 2 Tunneling Protocol (RFC 3931, RFC 4719) kräver CEF och IP-konnektivitet end-to-end. Det är endast point-to-point. IP protocol: 115.
pseudowire-class L2TP-PWCLASS encapsulation l2tpv3 ip local interface Loopback0 interface gi2 xconnect 2.2.2.2 102 pw-class L2TP-PWCLASS
Verify
show l2tp session all show l2tun tunnel all
IOS-XR
Loggning
l2vpn logging bridge-domain pseudowire vfi
Static VPLS
l2vpn bridge group PROD bridge-domain 101 mtu 9000 interface Bundle-Ether1.101 ! vfi 101 neighbor 10.0.10.15 pw-id 101 neighbor 10.0.10.16 pw-id 101
Verify
show l2vpn bridge-domain brief