Junos OS

last person joined: 7 days ago 

Ask questions and share experiences about Junos OS.
  • 1.  QinQ on Martini L2 circuit

    Posted 07-16-2019 11:51

    Hello 

     

    Refer to the scenarion in diagram below

     

     

    QnQ.png

     

    I have one interface dedicated for my client (PE1 to CE1) carrying a mix of services vlan-ccc (for layer 2circuit) and routed IP services. Now my client wants to have an additional layer 2 circuit (to connect CE1 and CE3) in which they will be able to add/remove vlans as they wish without my intervention (this has to be achieved with no change to current setup). So I though of using QinQ.

    Is there a way I can configure QinQ on a logical interface with encapsulation vlan-ccc and have that interface on a l2circuit with a neighboring PE where by CE1 and CE3 will be sending packets with single tag and a second tag will be imposed on the PEs and carried over a L2 circuit.

    PE1 and PE3 are MX80s the distribution switch is an EX2200 (there is an EX4500 if required it can be used)

     

    Thanks



  • 2.  RE: QinQ on Martini L2 circuit

     
    Posted 07-16-2019 12:18

    Looks like supported. On MX PE, you can configure input-vlan-map/output-vlan-map on vlan-ccc interface.

    Below I have an example vlan 100 (C-VLAN) is configured on CE-facing interface xe-0/0/1. PE pushed S-VLAN 10 when sending across the core. I checked ping works between CE and CE. You can also modify the etherType if you'd like to 

     

    lab> show configuration logical-systems r1 interfaces xe-0/0/1
    unit 100 {
    encapsulation vlan-ccc;
    vlan-id 100;
    input-vlan-map {
    push;
    vlan-id 10;
    }
    output-vlan-map pop;
    family ccc;
    }

    labroot@jtac-MX80-r067> show configuration logical-systems r1 protocols l2circuit
    neighbor 2.2.2.2 {
    interface xe-0/0/1.100 {
    virtual-circuit-id 2000;
    }
    }

    labroot@jtac-MX80-r067> show interfaces xe-0/0/1

    Logical interface xe-0/0/1.100 (Index 392) (SNMP ifIndex 620)
    Flags: Up SNMP-Traps 0x0 VLAN-Tag [ 0x8100.100 ] In(push .10) Out(pop) Encapsulation: VLAN-CCC
    Input packets : 2
    Output packets: 2
    Protocol ccc, MTU: 1522



  • 3.  RE: QinQ on Martini L2 circuit

    Posted 07-21-2019 23:56

    Hello Mhu

     

    Thanks for your input. with the configuration you shared 

     

    lab> show configuration logical-systems r1 interfaces xe-0/0/1
    unit 100 {
    encapsulation vlan-ccc;
    vlan-id 100;

     

    The tag will only be pushed to the frames coming in with vlan tag 100. Say we replace vlan-id 100 with vlan-id-list or vlan-id-range on PE1, PE3 must also be configured with the same vlan-id-list or vlan-id range for the L2circuit to come up, otherwise there will be a Vlan Mismatch on the l2circuit. Problem with this is that the interface on PE3 is having other service for other customers. Requirement is that on PE3 only one VLAN can be assigned to this new L2circuit required



  • 4.  RE: QinQ on Martini L2 circuit

     
    Posted 07-23-2019 11:47

    Problem with this is that the interface on PE3 is having other service for other customers. Requirement is that on PE3 only one VLAN can be assigned to this new L2circuit required

     

    Not sure if I get your requirement completely. If you seperate different customer service to differnt logical interfaces, will that work for you ? 

    For example, xe-0/0/1.100 for vlan 100, xe-0/0/1.101 for vlan 101. You may also use "vlan-id-list", but I've not tried or seen lots of customer use case like this 



  • 5.  RE: QinQ on Martini L2 circuit
    Best Answer

    Posted 07-24-2019 00:43

    Hello Mhu

     

    Thanks for the input I have managed to find a work around for this.

     

    From PE1 on the interface facing CE1, I have used vlan-id-list to map a whole range of vlans to one logical interface then created a VPLS instance and added this logical interface. On the same VPLS instance I added a mesh group to terminate a martini l2circuit from PE3.

     

    From PE3 the interface connecting to distribution switch has many logical interfaces with diffeerent services to different customers. So I have added a new logical interface with a vlan-id 100 and vlan-map to push tag on incoming frames and pop tag on outgoing frames. This logical interface is put in a l2circuit to PE1

     

    On the distribution switch I have added the vlan 100 and allowed it on trunk towards CE3. Client has put a small device between distribution switch and CE3. This device has a trunk interface facing distribution switch that accepts the tag vlan 100 and the interface facing CE3 is an open trunk  that accepts all their internal vlans and adds a second tag of 100 that is used in my network

     



  • 6.  RE: QinQ on Martini L2 circuit

     
    Posted 07-24-2019 07:03

    Ah haa. Yes. Using VPLS to stitch l2circuit, that actually has more use case. I've not used this combined with QinQ. 

    Good that you have achieved what you desired.