09-11-2023
10:49 AM
- last edited on
09-11-2023
06:12 PM
by
Translator
Hello, everyone!
I've just started studying about MPLS and I have a question when it comes to prefixes in the MPLS Forwarding table.
Here is my topology.
The ISP (AS 1234) is running OSPF internally. PE1 and PE2 have an eBGP peering established with the CE routers and an iBGP peering between them. The customers are advertising their loopbacks (
1.1.1.1/32
- CE1 and
2.2.2.2/32
- CE2
) to the ISP (AS 1234). I've issued the
mtu ip
command on the interfaces of the AS 1234 routers to enable MPLS on them. Again, I am only on the basics of MPLS so far. The
1.1.1.1/32
and
2.2.2.2/32
prefixes are being advertised via BGP and the core of the network (the P router) is BGP-free.
CE1 can successfully
ping
CE2, however I have a question.
When I check the MPLS forwarding table on PE1, there is no entry for the CE2
network - 2.2.2.2/32
and no label associated with it.
Normally, I'd expect an entry saying something like
Prefix: 2.2.2.2/32 Outgoing label: x
But that prefix is not there yet the
ping
still works somehow. For some reason, anything destined to
2.2.2.2
is tagged with a Label of 16. What is going on here?
Thank you.
Solved! Go to Solution.
09-11-2023
11:14 AM
- last edited on
09-11-2023
06:16 PM
by
Translator
Hi @Mitrixsen ,
Labels are not assigned by default to BGP learnt routes. In this scenario, the BGP
prefix 2.2.2.2/32
is recursively resolved to
NH 4.4.4.4
PE1 uses the label allocated for
4.4.4.4/32
to forward packets to
2.2.2.2/32
to PE2 across the MPLS core.
The same would apply to BGP
prefix 1.1.1.1/32
on PE2 that would recursively resolve to
NH 3.3.3.3
and the label for
3.3.3.3/32
would be used to forward traffic to BGP
prefix 1.1.1.1/32
to PE1 across the MPLS core.
Regards,
09-11-2023
11:14 AM
- last edited on
09-11-2023
06:16 PM
by
Translator
Hi @Mitrixsen ,
Labels are not assigned by default to BGP learnt routes. In this scenario, the BGP
prefix 2.2.2.2/32
is recursively resolved to
NH 4.4.4.4
PE1 uses the label allocated for
4.4.4.4/32
to forward packets to
2.2.2.2/32
to PE2 across the MPLS core.
The same would apply to BGP
prefix 1.1.1.1/32
on PE2 that would recursively resolve to
NH 3.3.3.3
and the label for
3.3.3.3/32
would be used to forward traffic to BGP
prefix 1.1.1.1/32
to PE1 across the MPLS core.
Regards,
09-11-2023 11:22 AM
Hello @Harold Ritter
Thank you very much, I appreciate your help here. May I ask why does it work like this with BGP learnt routes, please?
09-11-2023
11:37 AM
- last edited on
09-11-2023
06:19 PM
by
Translator
Hi @Mitrixsen ,
> May I ask why does it work like this with BGP learnt routes, please?
It is basically because of the recursion used by BGP. Imagine that PE1 received the entire Internet routing table (~933k routes ) from PE2. You would not want to get a different label allocated for each an every prefix. In place, PE1 needs only one label (leant via LDP) for the BGP next hop and is able to forward traffic to any destination in the Internet routing table using only that one label allocated to the BGP next
hop (4.4.4.4)
Regards,
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide