Virtual Private LAN Service (VPLS) is one of the most widely deployed Layer 2 VPN technologies in service provider networks. While EVPN has become the modern successor, VPLS remains in active production across thousands of service provider deployments worldwide. Understanding how to configure and verify VPLS on OcNOS is essential for network engineers working in brownfield SP environments.
This guide builds a complete VPLS deployment from the ground up: OSPF underlay, LDP label distribution, and VPLS pseudowire configuration — with verification commands at each stage.
Network Topology
Step 1: Configure OSPF Underlay
OSPF provides the IP reachability between PE routers. Configure interfaces as point-to-point (eliminates DR/BDR election) and mark loopbacks as passive (no adjacency expected).
! OcNOS -- OSPF underlay on R1 (all PEs use same config pattern)
!
router ospf 1
router-id 10.0.0.1
passive-interface lo
!
network 10.0.0.1/32 area 0 ! Loopback -- PE identifier
network 192.168.12.0/30 area 0 ! Link to R2
network 192.168.13.0/30 area 0 ! Link to R3
!
interface eth-0-1
ip ospf network point-to-point
ip ospf 1 area 0
!
interface eth-0-2
ip ospf network point-to-point
ip ospf 1 area 0
!
! Verify OSPF neighbors:
show ip ospf neighbor
! Expected: R2 and R3 in FULL state
!
! Verify loopback reachability:
show ip route 10.0.0.2
show ip route 10.0.0.3
Step 2: Enable LDP for Label Distribution
LDP binds MPLS labels to OSPF-learned prefixes, building the Label Switched Paths (LSPs) that VPLS pseudowires ride over.
! OcNOS -- LDP configuration on R1
!
mpls ldp
router-id 10.0.0.1
!
address-family ipv4
discovery transport-address 10.0.0.1
!
interface eth-0-1
!
interface eth-0-2
exit-address-family
!
! Verify LDP sessions (should show R2 and R3 as Operational):
show mpls ldp neighbor
!
! Verify label bindings for PE loopbacks:
show mpls ldp bindings
! Look for: 10.0.0.2/32 and 10.0.0.3/32 with in/out labels
Step 3: Configure VPLS
VPLS creates a virtual Ethernet switch across the MPLS network. Each PE maintains pseudowires to all other PEs in the VPLS instance, forwarding frames based on MAC learning — exactly like a physical Ethernet switch, but over MPLS.
! OcNOS -- VPLS configuration on R1
! VPN-ID 100 connects CE-A (R1), CE-B (R3), CE-C (R2)
!
l2vpn vpls
vpls-id 100
!
! Pseudowire to R2 (PE2)
neighbor 10.0.0.2 pw-id 100
!
! Pseudowire to R3 (PE3)
neighbor 10.0.0.3 pw-id 100
!
! Attach CE-facing interface to VPLS instance
interface eth-0-3 ! Physical port toward CE-A
encapsulation dot1q 100 ! Strip VLAN 100 tag
!
!
! Verify VPLS pseudowire status:
show l2vpn vpls
show l2vpn vpls detail
! Expected: both neighbors in UP/UP state (VC Type: Ethernet)
!
! Verify MAC learning:
show l2vpn vpls mac
! Confirm CE-A MAC appears when traffic is generated
Step 4: Verify End-to-End Connectivity
! OcNOS -- End-to-end VPLS verification
!
! Check MPLS label stack for VPLS traffic path:
show mpls forwarding-table 10.0.0.2
! Check LDP LSP to remote PEs:
show mpls ldp igp sync
show mpls ldp neighbor 10.0.0.2 detail
! Check VPLS instance state (all PEs should show each other):
show l2vpn vpls 100
! Verify OSPF-LDP sync (prevent black holes during convergence):
show ip ospf mpls ldp interface
VPLS vs. EVPN: When to Use Each
| 能力 | VPLS | EVPN |
|---|---|---|
| MAC learning | Data plane (flooding) | Control plane (BGP) |
| 多歸屬 | Complex (H-VPLS) | Native (EVPN MH) |
| BUM traffic | Flood-and-learn | Selective multicast |
| Fast convergence | Limited | Mass withdrawal + aliasing |
| L3 integration | Separate L3VPN needed | EVPN IRB (native) |
| Brownfield fit | Excellent | Good (with SR underlay) |
VPLS remains the right choice for brownfield deployments where EVPN migration is not yet planned. For new deployments, EVPN-ELAN delivers the same multipoint L2 service with superior scalability and faster convergence.
- EVPN-ELINE: Point-to-Point L2VPN over ISIS-SR
- EVPN-ELAN: Multipoint L2VPN over ISIS-SR
- LDP to SR Migration Guide
- OcNOS-SP Product Page
- 聯繫 IP Infusion
IP Infusion Engineering Team