Normally LDP neighbors are found automatically by sending UDP Hello packets on Port 646 with the destination of multicast address 126.96.36.199 out of each LDP enabled interface.
In some MPLS applications a LDP session must be established between non directly connected peers to exchange labels. In such cases Hello packets can not be just broadcasted, instead these Hello packets are sent as unicast packets using UDP on port 646 and destined to the targeted peer.
AToM and some Traffic Engineering scenarios are examples of these applications that require a targeted LDP session between non directly connected routers.
The command mpls ldp neighbor [vrf vpn-name] ip-addr targeted [ldp | tdp] can be used to manually configure targeted LDP sessions between peers.
Note: In the AToM and TE cases you don’t need to use the previous command because the session will be established automatically after adding the service required configuration.
BB-PE1(config)#mpls ldp neighbor 100.100.253.2 targeted ldp BB-PE1#sh mpls ldp neighbor 100.100.253.2 det Peer LDP Ident: 100.100.253.2:0; Local LDP Ident 100.100.253.1:0 TCP connection: 100.100.253.2.25316 - 100.100.253.1.646 Password: not required, none, in use State: Oper; Msgs sent/rcvd: 12/12; Downstream; Last TIB rev sent 17 Up time: 00:01:30; UID: 3; Peer Id 1; LDP discovery sources: Targeted Hello 100.100.253.1 -> 100.100.253.2, active, passive; holdtime: infinite, hello interval: 10000 ms Addresses bound to peer LDP Ident: 100.100.29.1 100.100.253.2 Peer holdtime: 180000 ms; KA interval: 60000 ms; Peer state: estab Clients: Dir Adj Client !-- Small Part of the LIB table showing the label exchange between the peers BB-PE1#sh mpls ldp binding lib entry: 100.100.19.0/24, rev 6 local binding: label: imp-null remote binding: lsr: 100.100.253.2:0, label: 16 lib entry: 100.100.19.1/32, rev 17 remote binding: lsr: 100.100.253.2:0, label: 17 lib entry: 100.100.19.2/32, rev 4 local binding: label: 16 remote binding: lsr: 100.100.253.2:0, label: 21