Hi, In order to have both VPLS and L3VPN works *concurrently *in a PE router, I guess that I should do the following things:
1- Regardless of the type of service that whether it's *VPLS *,*L3VPN *or *none*(e.g. a simple connectivity) , the core of the network works the same, that is I should Insert everything about the core of the network in the Global VRF i.e. *IP FIB 0* and *MPLS FIB 0 in VPP*. The above step is done before even providing any services. 2- *For the PW-Label of VPLS*, the task is delivered to the mpls tunnel to put the PW-Label on the Packet (i.e. *mpls tunnel add l2-only <PE-TARGET> out-labels<PW-LABEL>*) then to resolve the PE-TARGET IP address the resolution is done by checking the Global VRF which contains information about the core and at that stage the MPLS label is added to packet. *For the VPN-Label of the L3VPN* the task of putting it on the packet is delivered to the VRF associated with the incoming Interface (i.e.* #* *ip route add <PE-TARGET> table <CUSTOMER-VRF> via <NEXT-HOP> out-labels <VPN-LABEL>*) and then to resolve the NEXT-HOP IP address, Global VRF must be checked since the routing information about the core is stored in the Global VRF (i.e. IP FIB 0 and MPLS FIB 0 in VPP) but the problem is that the route store in the customer's VRF must use Global VRF in order to resolve its NEXT-HOP. Searching VPP Doc, I confronted with a parameter that I can use to select which VRF to use to resolve the next hop. so the *#* command must be modified by (*ip route add <PE-TARGET> table <CUSTOMER-VRF> via <NEXT-HOP> next-hop-table <GLOBAL-VRF> out-labels <VPN-LABEL>*) and then during the resolution of the PE-TARGET IP address the MPLS Labels is added to the packet. *Question*: Am I right?? Excuse me for my questions ... most of the materials found in Internet are about Cisco commands to run the service and they give my little insights on what to do with lower level configurations. Thanks in advance On Mon, Jul 30, 2018 at 1:31 PM, Neale Ranns (nranns) <nra...@cisco.com> wrote: > Hi, > > > > Answers inline marked [nr] > > > > /neale > > > > *From: *<vpp-dev@lists.fd.io> on behalf of Gulakh <holoogul...@gmail.com> > *Date: *Saturday, 28 July 2018 at 13:45 > *To: *"vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io> > *Subject: *[vpp-dev] L3VPN in VPP > > > > Hi, > > I have setup a *VPLS *scenario successfully and now I want to setup a *L3VPN > *scenario in VPP (L3VPN topology is in attachment). > > > > My configuration for VPLS is some how like this link > <https://lists.fd.io/g/vpp-dev/topic/vpls_dev_in_vpp_1/18091281?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,18091281> > . > > > > As far as I searched Internet, L3VPN has a *VPN Label* that I think is > somehow like *PW Label* in VPLS with difference that *VPN Label is used > to select VRF* and *PW Label is used to select mpls tunnel *(hence > bridge). > > > > [nr] other label allocation schemes are available J > > > > =============================== > > *Part1:* > > I guess I should configure the *source PE* as follow: > > > > *In VPLS: mpls tunnel add l2-only via <PE-TARGET> out-labels > <PW-LABEL>* > > * ip route add <PE-TARGET> via <NEXT-HOP> out-labels > <MPLS-LABEL>* > > > > *In L3VPN: CMD1 ??????????????? (insert in customer VRF)* > > * ip route add <PE-TARGET> via <NEXT-HOP> out-labels > <MPLS-LABEL> (insert in GLOBAL VRF)* > > > > I don't know what command I should use for CMD1 ... This command must add > VPN-LABEL which is selected base on the customer's VRF to the packet and > then lookup the GLOBAL VRF to push the MPLS Label. just like VPLS that the > mpls tunnel first adds a PW Label and then in the destination IP > resolution, MPLS Label is added to packet. > > > > *Question1:* Am I right about the configurations in the source PE? > > > > > > [nr] ip route table <CUSTOMER> <PREFIX> via <PE-TARGET> out-labels > <CUSTOMER-VRF-LABEL> > > > > you could use PREFIX=0.0.0.0/0 or many more specifics > > > > and your route to the PE-TARGET would be better as a non-recursive route > (i.e. if it is learned via e.g. OSPF and this is not an inter-AS option C) > otherwise you’ll need another labelled route for the next-hop > > > > non-recursive means specify the next-hop and interface. > > > > > > ================================ > > *Part2:* > > I guess I should configure the *target PE* as follow: > > > > *In VPLS: mpls local-label add eos <PW-LABEL> via l2-input-on > <MPLS-TUNNEL>* > > > > * In L3VPN: mpls local-label add eos <VPN-LABEL> via > ip4-lookup-in-table <VRF-ID> (insert in GLOBAL VRF) * > > > > *Question2:* Am I right about the configurations in the target PE? > > > > [nr] Yes. The mpls label is added to the MPLS global table, i.e. there’s > no ‘insert in global-VRF’, since the instruction associated with the label > is to lookup the exposed IP destination address in the customer’s VRF/ > > > > ================================= > > *Part3:* > > In order to fill customer's VRF, I should use control plane's RouteTarget > (RT) to select the VRF ID and then use below command to fill the VRF: > > > > *ip route add <DESTIANTION> via <NEXT-HOP> <INTERFACE> table > <VRF-ID>* > > > > *Question3:* Am I right? > > > > [nr] yes. > > > > thanks in advance > > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#9982): https://lists.fd.io/g/vpp-dev/message/9982 Mute This Topic: https://lists.fd.io/mt/23840657/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-