Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Introduction to Configuring VPLS

Virtual private LAN service (VPLS) allows you to provide a point-to-multipoint LAN between a set of sites in a virtual private network (VPN).

To configure VPLS functionality, you must enable VPLS support on the provider edge (PE) router. You must also configure PE routers to distribute routing information to the other PE routers in the VPLS. In addition, you must also configure the circuits between the PE routers and the customer edge (CE) routers.

Note:

In the VPLS documentation, the word router in terms such as PE router is used to refer to any device that provides routing functions.

You can support VPLS traffic by configuring a routing instance with the instance-type of vpls on Junos OS or a routing instance on with the instance-type of virtual-switchJunos Evolve OS. . The routing instance carries Ethernet traffic transparently across the service provider’s network. As with other routing instances, all logical interfaces belonging to a VPLS routing instance are listed under that instance.

Note: When you configure normalized VLANs under a virtual-switch routing instance, either by not configuring vlan IDs or including the vlan-id none statement, then you must also include the service-type single statement at the [edit routing-instances routing-instance protocol vpls] hierarchy.

In addition to VPLS routing instance configuration, you must configure MPLS label-switched paths (LSPs) between the PE routers, IBGP sessions between the PE routers, and an interior gateway protocol (IGP) on the PE and provider (P) routers.

Many configuration procedures for VPLS are identical to the procedures for Layer 2 VPNs and Layer 3 VPNs.

Understanding VPLS Interfaces

Interface names:

For each VPLS routing instance on a PE router, you specify which interfaces are to be used to carry VPLS traffic between the PE and CE devices.

Specify both the physical and logical portions of the interface name, in the following format: physical.logical. For example, in ge-1/0/1.2, ge-1/0/1 is the physical portion of the interface name and 2 is the logical portion. If you do not specify the logical portion of the interface name, 0 is set by default.

A logical interface can be associated with only one routing instance.

Encapsulation Type:

The link-layer encapsulation type for a VPLS interface can be one of the following:

  • ethernet-vpls: Use Ethernet VPLS encapsulation on Ethernet interfaces that have VPLS enabled and that must accept packets carrying standard Tag Protocol Identifier (TPID) values.

    extended-vlan-vpls: Use extended virtual LAN (VLAN) VPLS encapsulation on Ethernet interfaces that have VLAN 802.1Q tagging and VPLS enabled and that must accept packets carrying TPIDs 0x8100, 0x9100, and 0x9901. All VLAN IDs from 1 through 1023 are valid for VPLS VLANs on Fast Ethernet interfaces, and all VLAN IDs from 1 through 4094 are valid for VPLS VLANs on Gigabit Ethernet interfaces.

    vlan-vpls: Use VLAN VPLS encapsulation on Ethernet interfaces with VLAN tagging and VPLS enabled. Interfaces with VLAN VPLS encapsulation accept packets carrying standard TPID values only. You must configure this encapsulation type on both the physical interface and the logical interface. VLAN IDs 1 through 511 are reserved for normal Ethernet VLANs, IDs 512 through 1023 are reserved for VPLS VLANs on Fast Ethernet interfaces, and IDs 512 through 4094 are reserved for VPLS VLANs on Gigabit Ethernet interfaces.

  • flexible-ethernet-services: Use flexible Ethernet services encapsulation when you want to configure multiple per-unit Ethernet encapsulations. This encapsulation type allows you to configure any combination of route, TCC, CCC, and VPLS encapsulations on a single physical port. Aggregated Ethernet bundles cannot use this encapsulation type.

    For flexible Ethernet services encapsulation, VLAN IDs from 1 through 511 are no longer reserved for normal VLANs.

VPLS CLI Configuration Hierarchy Differences between Junos OS and Junos OS Evolved

When you configure VPLS on devices running on Junos OS or Junos OS Evolved, be aware of the CLI hierarchy differences. Table explains the VPLS CLI hierarchy configuration differences on devices running on Junos OS and Junos OS Evolved.

To know about the devices running on Junos OS, see https://www.juniper.net/documentation/product/us/en/junos-os/#cat=by_product.

To know about the devices running on Junos OS Evolved, see https://www.juniper.net/documentation/product/us/en/junos-os-evolved/#cat=hardware_documentation.

Note:

Devices running on Junos OS Evolved do not support configuring family VPLS on the interfaces.

Note:
Table 1: VPLS Configuration CLI Differences between Junos OS and Junos OS Evolved
Task Junos OS Junos OS Evolved
Enable VPLS routing instance
user@host# set  routing-instances routing-instance-name instance-type vpls
user@host# set routing-instances routing-instance-name protocols vpls neighbor IP-address
user@host# set routing-instances routing-instance-name protocols vpls no-tunnel-services
user@host# set routing-instances routing-instance-name protocols vpls vpls-id number
user@host# set routing-instances routing-instance-name vlan-id number
user@host# set routing-instances routing-instance-name interface interface-name
user@host# set  routing-instances routing-instance-name instance-type virtual-switch
user@host# set routing-instances routing-instance-name protocols vpls neighbor IP-address
user@host# set routing-instances routing-instance-name protocols vpls no-tunnel-services
user@host# set routing-instances routing-instance-name protocols vpls vpls-id number
user@host# set routing-instances routing-instance-name vlans vlan-name vlan-id number
user@host# set routing-instances routing-instance-name vlans vlan-name interface interface-name
Note:

You need to mandatorily configure the no-tunnel-services configuration because tunnel interface is not supported on Junos OS Evolved.

Configure VLAN without VLAN IDs, or with VLAN ID as none, or VLAN ID as all
user@host# set routing-instances routing-instance-name
  • Configure VLAN without VLAN IDs

    user@host# set routing-instances routing-instance-name vlans vlan-name
    user@host# set routing-instances routing-instance-name vlans vlan-name protocols vpls service-type single
    
  • Configure VLAN with VLAN ID as none or all

    user@host# set routing-instances routing-instance-name vlans vlan-name vlan-id none
    user@host# set routing-instances routing-instance-name vlans vlan-name protocols vpls service-type single
    
Note:

When you configure a VLAN without VLAN IDs, or with VLAN ID as none, or VLAN ID as all, you must include the service-type single configuration statement at the [edit routing-instances routing-instance protocol vpls] hierarchy.

Note:

The ACX7000 family of routers do not support the vlan-id all statement.

Configure VPLS family on interfaces
user@host# set interfaces interface-name unit number family vpls

Devices running Junos OS Evolved do not support configuring the protocol family of VPLS on the interfaces.

Configure VPLS encapsulation on the interfaces
user@host# set interfaces interface-name flexible-vlan-tagging
user@host# set interfaces interface-name speed 100g
user@host# set interfaces interface-name encapsulation flexible-ethernet-services
user@host# set interfaces interface-name unit number encapsulation vlan-vpls
user@host# set interfaces interface-name unit number vlan-id number
user@host# set interfaces interface-name flexible-vlan-tagging
user@host# set interfaces interface-name speed 100g
user@host# set interfaces interface-name encapsulation flexible-ethernet-services
user@host# set interfaces interface-name unit number encapsulation vlan-vpls
user@host# set interfaces interface-name unit number vlan-id number
Configure VPLS encapsulation on the interfaces using bridge domain
user@host# set interfaces et-0/0/6 flexible-vlan-tagging
user@host# set interfaces et-0/0/6 encapsulation flexible-ethernet-services
user@host# set interfaces et-0/0/6 unit 0 encapsulation vlan-bridge
user@host# set interfaces et-0/0/6 unit 0 vlan-id 1
user@host# set interfaces et-0/0/6 flexible-vlan-tagging
user@host# set interfaces et-0/0/6 encapsulation flexible-ethernet-services
user@host# set interfaces et-0/0/6 unit 0 encapsulation vlan-bridge
user@host# set interfaces et-0/0/6 unit 0 vlan-id 1
Configure an IRB on VPLS
user@host# set routing-instances routing-instance-name instance-type vpls
user@host# set routing-instances routing-instance-name protocols vpls neighbor ip-address
user@host# set routing-instances routing-instance-name protocols vpls no-tunnel-services
user@host# set routing-instances routing-instance-name protocols vpls vpls-id number
user@host# set routing-instances routing-instance-name vlan-id number
user@host# set routing-instances routing-instance-name interface interface-name
user@host# set routing-instances routing-instance-name routing-interface interface-name
user@host# set routing-instances routing-instance-name route-distinguisher distinguisher
user@host# set routing-instances routing-instance-name vrf-target target;
user@host# set routing-instances routing-instance-name instance-type virtual-switch
user@host# set routing-instances routing-instance-name protocols vpls neighbor ip-address
user@host# set routing-instances routing-instance-name protocols vpls no-tunnel-services
user@host# set routing-instances routing-instance-name protocols vpls control-word
user@host# set routing-instances routing-instance-name protocols vpls vpls-id number
user@host# set routing-instances routing-instance-name vlans vlan-name vlan-id number
user@host# set routing-instances routing-instance-name vlans vlan-name interface interface-name
user@host# set  routing-instances routing-instance-name l3-interface interface-name

Sample VPLS Configuration on Junos OS

The following is a sample VPLS configuration on Junos OS:

Configuration

Result

Verification

Confirm that the configuration is working properly.

Verify the VPLS connection status by running the show vpls connections command.

In this output, the VPLS connection status is up between the two PE routers.

Verify the MAC address learnt on the local PE and the remote PE by running the show vpls mac-table command.

In this output, you can see the MAC address (00:00:00:42:98:47) is learned from the local PE interface (et-0/0/4) with VLAN ID 108 and the MAC address (00:00:00:42:98:4a) is learned from the remote PE interface (lsi.1048832) with VLAN ID 108.

Sample VPLS Configuration on Junos OS Evolved

The following is a sample VPLS configuration on Junos OS Evolved:

Configuration

Result

Verification

Confirm that the configuration is working properly.

Verify the VPLS connection status by running the show vpls connections command.

In this output, the VPLS connection status is up between the two PE routers.

Verify the MAC address learnt on the local PE and the remote PE by running the show ethernet-switching table instance VPLS command.

In this output, you can see the MAC address (00:00:00:42:98:47) is learned from the local PE interface (et-0/0/4) with VLAN ID 108 and the MAC address (00:00:00:42:98:4a) is learned from the remote PE interface (lsi.1048832) with VLAN ID 108.