[j-nsp] EBGP multihop, prevent next-hop self on advertisement to an IBGP peer
Anton Smith
anton at huge.geek.nz
Wed Mar 28 07:08:33 EST 2007
Hi all,
I am having a problem with a J series router. I have a network as below:
R1---mp-ibgp----R2----multihop-ebgp----R3
The ebgp session between R2 and R3 is a normal EBGP multihop session.
Let us say that it is between a PE and another box located somewhere on
the internet.
The mp-ibgp session between R1 and R2 is used for advertising vpnv4
prefixes.
The BGP session between R2 and R3 terminates inside a VRF on R2.
My problem is that R2 is rewriting the next-hop for the routes from R3
when it advertises them on to R1.
I am definitely not setting next-hop self anywhere on R2.
When I show received routes for the routes from R3, I get the following
output:
admin at j-peering-gw1> show route receive-protocol bgp z.z.z.z
<snip>
vrf-internet.inet.0: 216203 destinations, 363085 routes (216203 active,
0 holddown, 2 hidden)
Prefix Nexthop MED Lclpref AS path
* x.x.x.x/19 z.z.z.z 0 12345 I
At this stage, the next-hop, z.z.z.z is intact and is the desired
next-hop that I want advertised on to R1.
When I show route extensive, things also *seem* (to me) to be ok
(apologies if the following output is not very clean, I have also
sanitised it a bit to replace IP addresses):
admin at j-peering-gw1> show route table vrf-internet x.x.x.x/19 extensive
------------------------------------------------------------------------
vrf-internet.inet.0: 216037 destinations, 362760 routes (216037 active,
0 holddown, 2 hidden)
x.x.x.x/19 (1 entry, 1 announced)
TSI:
Page 0 idx 0 Type 1 val c4b5f30
*BGP Preference: 170/-101
Next-hop reference count: 4
Source: z.z.z.z
Next hop: 172.17.100.26 via fe-0/0/0.0, selected
Label operation: Push 493, Push 109(top)
Protocol next hop: z.z.z.z
Indirect next hop: 8884af8 264765
State: <Active Ext>
Peer AS: 12345
Age: 23:48:05 Metric: 0 Metric2: 1
Task: BGP_39532.z.z.z.z+37854
Announcement bits (3): 0-BGP RT Background 1-KRT
2-Resolve tree 2
AS path: 12345I
Communities: 1234:1234
Localpref: 100
Router ID: 5.6.7.8
Indirect next hops: 1
Protocol next hop: z.z.z.z Metric: 1
Indirect next hop: 8884af8 264765
Indirect path forwarding next hops: 1
Next hop: 172.17.100.26 via fe-0/0/0.0
10.0.0.0/30 Originating RIB: vrf-internet.inet.0
Metric: 1 Node path
count: 1
Indirect nexthops: 1
Protocol Nexthop: 3.3.3.3 Metric: 1
Push 493
Indirect nexthop: 89fae04 264578
Indirect path forwarding nexthops: 1
Nexthop: 172.17.100.26 via
fe-0/0/0.0
3.3.3.3/32 Originating RIB: inet.3
Metric: 1
Node path count: 1
Forwarding nexthops: 1
Nexthop: 172.17.100.26 via
fe-0/0/0.0
-----------------------------------------------------------------------
The protocol next-hop looks correct, z.z.z.z.
However, when I show advertised routes towards R1, I see that the
next-hop has been changed:
admin at j-peering-gw1> show route advertising-protocol bgp 4.4.4.4
x.x.x.x/19 extensive
vrf-internet.inet.0: 216241 destinations, 363161 routes (216241 active,
0 holddown, 2 hidden)
* x.x.x.x/19 (1 entry, 1 announced)
BGP group route-reflectors type Internal
Route Distinguisher: 1111:1111
VPN Label: 107440
Nexthop: Self
Flags: Nexthop Change
MED: 0
Localpref: 100
AS path: [4321] 12345 I
Communities: 1234:1234 target:1111:1111
Notice the lines that read "Nexthop: Self" and "Flags: Nexthop Change".
The flag seems strange to me, does anybody know what it means?
Nowhere in my policies do I set next-hop self:
admin at j-peering-gw1> show configuration | match next-hop
admin at j-peering-gw1>
I have tried configuring, under the multihop bgp section, the parameter
'no-nexthop-change' but this does not have any effect ( I have set this
both for the ibgp group and the ebgp group to no avail ).
This behaviour seems unexpected to me - as though the box is
automatically setting next-hop self for some reason. Normally in all of
my experience (albeit with plain ibgp/ebgp setups) you need to
explicitly turn on next-hop self.
Does anybody have any idea why this is happening? My suspicion is it is
definitely something to do with multihop bgp.
Any help much appreciated, since at present I am completely stuck. And I
am aware that under normal circumstances this would be desirable
behaviour, but in this particular instance I have a specific requirement
that the next-hop not be changed.
Best regards,
Anton
More information about the juniper-nsp
mailing list