Description

This article describes how to configure QinQ by using Enhanced Layer 2 Software Support (ELS) on Junos OS.

Solution

Example Topology:

Example Configuration:

CE-1

[master:0][edit]
root@CE-1# show vlans V10
vlan-id 10;
l3-interface irb.10;

[master:0][edit]
root@CE-1# show interfaces ge-0/0/1
unit 0 {
    family ethernet-switching {
        interface-mode trunk;
        vlan {
            members V10;

[master:0][edit]
root@CE-1# show interfaces irb.10
family inet {
    address 10.10.10.1/24;

PE-1

{master:0}[edit]
root@PE-1# show chassis
aggregated-devices {
    ethernet {
        device-count 10;
    }
}

{master:0}[edit]
root@PE-1# show interfaces ge-0/0/0
ether-options {
    802.3ad ae0;
}

[master:0][edit] root@PE-1# show vlans V2000 interface ge-0/0/1.2000; interface ae0.2000; [master:0][edit] root@PE-1# show interfaces ge-0/0/1 flexible-vlan-tagging; encapsulation extended-vlan-bridge; unit 2000 { vlan-id-list 10-100; input-vlan-map push; output-vlan-map pop; [master:0][edit] root@PE-1# show interfaces ae0 flexible-vlan-tagging; encapsulation extended-vlan-bridge; aggregated-ether-options { lacp { active; periodic fast; } } unit 2000 { vlan-id 2000;

PE-2

[master:0][edit]
root@PE-2# show vlans V2000
interface ge-0/0/1.2000;
interface ae0.2000;

{master:0}[edit]
root@PE-2# show chassis
aggregated-devices {
    ethernet {
        device-count 10;
    }
}

{master:0}[edit]
root@PE-2# show interfaces ge-0/0/0
ether-options {
    802.3ad ae0;
}
[master:0][edit] root@PE-2# show interfaces ge-0/0/1 flexible-vlan-tagging; encapsulation extended-vlan-bridge; unit 2000 { vlan-id-list 10-100; input-vlan-map push; output-vlan-map pop; [master:0][edit] root@PE-2# show interfaces ae0 flexible-vlan-tagging; encapsulation extended-vlan-bridge; aggregated-ether-options { lacp { active; periodic fast; } } unit 2000 { vlan-id 2000;

CE-2

[master:0][edit]
root@CE-2# show vlans V10
vlan-id 10;
l3-interface irb.10;

[master:0][edit]
root@CE-2# show interfaces ge-0/0/1
unit 0 {
    family ethernet-switching {
        interface-mode trunk;
        vlan {
            members V10;

[master:0][edit]
root@CE-2# show interfaces irb.10
family inet {
    address 10.10.10.2/24;

Here is the same configuration in set commands style:

 

CE1


set vlans V10 vlan-id 10 
set vlans V10 l3-interface irb.10
set interfaces ge-0/0/1 unit 0 family ethernet-switching interface-mode trunk
set interfaces ge-0/0/1 unit 0 family ethernet-switching vlan members V10
set interfaces irb.10 family inet address 10.10.10.1/24

PE-1


set vlans V2000 interface ge-0/0/1.2000
set vlans V2000 interface ae0.2000
set interfaces ge-0/0/1 flexible-vlan-tagging
set interfaces ge-0/0/1 encapsulation extended-vlan-bridge
set interfaces ge-0/0/1 unit 2000 vlan-id-list 10-100
set interfaces ge-0/0/1 unit 2000 input-vlan-map push
set interfaces ge-0/0/1 unit 2000 output-vlan-map pop
set interfaces ae0 flexible-vlan-tagging
set interfaces ae0 encapsulation extended-vlan-bridge
set interfaces ae0 aggregated-ether-options lacp active
set interfaces ae0 aggregated-ether-options lacp periodic fast
set interfaces ae0 unit 2000 vlan-id 2000
set interfaces ge-0/0/0 ether-options 802.3ad ae0
set chassis aggregated-devices ethernet device-count 10

PE-2


set vlans V2000 interface ge-0/0/1.2000
set vlans V2000 interface ae0.2000
set interfaces ge-0/0/1 flexible-vlan-tagging
set interfaces ge-0/0/1 encapsulation extended-vlan-bridge
set interfaces ge-0/0/1 unit 2000 vlan-id-list 10-100
set interfaces ge-0/0/1 unit 2000 input-vlan-map push
set interfaces ge-0/0/1 unit 2000 output-vlan-map pop
set interfaces ae0 flexible-vlan-tagging
set interfaces ae0 encapsulation extended-vlan-bridge
set interfaces ae0 aggregated-ether-options lacp active
set interfaces ae0 aggregated-ether-options lacp periodic fast
set interfaces ae0 unit 2000 vlan-id 2000
set interfaces ge-0/0/0 ether-options 802.3ad ae0
set chassis aggregated-devices ethernet device-count 10

CE-2


set vlans V10 vlan-id 10
set vlans V10 l3-interface irb.10
set interfaces ge-0/0/1 unit 0 family ethernet-switching interface-mode trunk
set interfaces ge-0/0/1 unit 0 family ethernet-switching vlan members V10
set interfaces irb.10 family inet address 10.10.10.2/24

 

You can test this configuration with ping:

 

{master:0}
root@CE-1> ping 10.10.10.2
May 03 12:37:13
PING 10.10.10.2 (10.10.10.2): 56 data bytes
64 bytes from 10.10.10.2: icmp_seq=0 ttl=64 time=43.944 ms
64 bytes from 10.10.10.2: icmp_seq=1 ttl=64 time=33.102 ms
64 bytes from 10.10.10.2: icmp_seq=2 ttl=64 time=118.114 ms
^C
--- 10.10.10.2 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 33.102/65.053/118.114/37.780 ms

 

When you ping 10.10.10.2 from CE-1, the ping is successful.

Modification History

2020-02-13: Replaced line diagram with an image since line diagram gets distorted when opened in browser.
2019-08-23: Corrected the PE interface in the topology diagram in the Solution section; no other changes made

2025-05-03: Added the set commands, the ping test and the missing config for child of ae0 and chassis LAG creation.