Re: Possible bug ? Re: 4.7 Release - bgpd not passing IBGP routes

2010-06-01 Thread a b
Thanks for the heads up Claudio, will look into it a bit more in light of your
comments.



Re: Possible bug ? Re: 4.7 Release - bgpd not passing IBGP routes

2010-05-31 Thread Claudio Jeker
On Sun, May 30, 2010 at 10:38:01PM +, a b wrote:
 (1) With set localpref 500 on EBGP session on BSD02
 
 bgpctl sh rib on BSD01 :
 I* 0.0.0.0/0172.16.99.254500065432i
 *   0.0.0.0/0172.16.99.254100065432i
 
 bgpctl sh rib on BSD02 :
 *  0.0.0.0/0172.16.99.254500065432i
 

This looks right. BSD02 is propegating the route to BSD01 and BSD01
selects that one as more prefered over the non iBGP route.

 (2) With no localpref set on EBGP session on BGP02
 
 bgpctl sh rib on BSD01 :
 * 0.0.0.0/0172.16.99.254100065432i
 I* 0.0.0.0/0172.16.99.254100065432i
 
 bgpctl sh rib on BSD02 :
 * 0.0.0.0/0172.16.99.254100065432i
 I* 0.0.0.0/0172.16.99.254100065432i
 

Again correct, both routers select the eBGP route since the prefixes have
the same metrics until the tiebreaker reaches the ebgp vs ibgp check. In
both cases the router select the eBGP route and propagate that route to
the other iBGP router.

 (3) With set localpref 25 on EBGP session on BSD02
 
 bgpctl sh rib on BSD01 :
 *0.0.0.0/0172.16.99.254 100065432i
 
 bgpctl sh rib on BSD02 :
 I*  0.0.0.0/0  172.16.99.254100065432i
 *0.0.0.0/0  172.16.99.25425 065432i
 

Again everything is fine. BSD01 selects the eBGP route and propagets that
route as iBGP route the BSD02 where that route is more prefered because of
the higher localpref.

Note, only the active route is redistributed and over iBGP sessions only
the active routes that are not internal are redistributed. That is the
reason why in case 1 and 3 only one router ends up with both routes.

PS: please fix your mailclient. It is almost impossible to read the mails
because of the insane linewrapping.
-- 
:wq Claudio



Re: 4.7 Release - bgpd not passing IBGP routes

2010-05-30 Thread Insan Praja SW

Hi,
On Sat, 29 May 2010 18:25:12 +0700, a b obsdmisc...@yahoo.co.uk wrote:


Hi,

I've got a curious problem with a test I've been doing with bgpd on 4.7
release.  Hopefully someone can point out where I am going wrong.

Test Layout
:
BSD01 - EBGP01
BSD02 - EBGP01

BSDxx are both 4.7 release BGP speakers in
private ASN 64550 (OSPF running between them as IGP)
EBGP01 is a non OpenBSD
BGP speaker in private ASN 65432 (just sending default route for test
purposes)


BSD01 does not appear to be receiving routes from BSD02 (in this
case, it should be learning a higher pref default route from BSD02 over  
IBGP)

on BSD01 :
# bgpctl show sum
Neighbor ASMsgRcvd   MsgSent   OutQ
Up/Down  State/PrfRcvd
BSD0264550   19 19   0
00:15:25 0
EBGP BOX 65432 20   19   0
00:17:09 1

#bgpctl show rib
*  0.0.0.0/0   172.16.99.254  400 0
65432 i


on BSD02 :
# bgpctl show sum
Neighbor   AS
MsgRcvd   MsgSent   OutQ  Up/Down
State/PrfRcvd
BSD0164550   121
125 0
00:20:25   1
EBGP BOX 65432 1163  1188
0 01:17:09 1

#bgpctl show rib
I* 0.0.0.0/0  172.16.99.254
400 0 65432 i
* 0.0.0.0/0  172.16.99.254 100 0 65432 i



bgpd.conf from
BSD01 :

PEER_ASN=65432
LOCAL_ASN=64550
MY_ID=192.168.152.1
REMOTE_IP=172.16.99.254
IBGP_PEER=192.168.152.2
LO1_IP=192.168.152.1

AS
$LOCAL_ASN
router-id $MY_ID
holdtime 180
holdtime min 3
fib-update yes

group
transit 65432 {
set localpref 400
remote-as $PEER_ASN
neighbor $REMOTE_IP {
descr EBGP BOX
announce self

  ^

I think you need to re-assess that. from man (5) bgpd.conf

 announce (all|none|self|default-route)
 If set to none, no UPDATE messages will be sent to the  
neighbor.
 If set to default-route, only the default route will be  
announced

 to the neighbor.  If set to all, all generated UPDATE messages
 will be sent to the neighbor.  This is usually used for  
transit
 AS's and IBGP peers.  The default value for EBGP peers is  
self,

 which limits the sent UPDATE messages to announcements of the
 local AS.  The default for IBGP peers is all.

Which, you need to have sth like:

network 0.0.0.0/0


}
}

group IBGP Mesh {
remote-as $LOCAL_ASN
local-address $LO1_IP
neighbor $IBGP_PEER {
descr BSD02
}
}

bgpd.conf from
BSD02 :

PEER_ASN=65432
LOCAL_ASN=64550
MY_ID=192.168.152.2
REMOTE_IP=172.16.99.254
IBGP_PEER=192.168.152.1
LO1_IP=192.168.152.2

AS
$LOCAL_ASN
router-id $MY_ID
holdtime 180
holdtime min 3
fib-update yes

group
transit 65432 {
set localpref 400
remote-as $PEER_ASN
neighbor $REMOTE_IP {
descr EBGP BOX
announce self
}
}

group IBGP Mesh {
remote-as $LOCAL_ASN
local-address $LO1_IP
neighbor $IBGP_PEER {
descr BSD01
}
}


HTH,

--
insandotpraja(at)gmaildotcom



Re: 4.7 Release - bgpd not passing IBGP routes

2010-05-30 Thread a b
Hello,

Thank you for your reply.

Ref. your pointing out 
 group

transit 65432 {
 set localpref 400
 remote-as $PEER_ASN
 neighbor
$REMOTE_IP {
 descr EBGP BOX
 announce self
   ^

Please
explain why, therefore, when I remove set localpref 400,  the IBGP mesh
defined in the next section of the config occurs correctly ?
When set
localpref 400 is removed, both primary and secondary routes (with default
pref 100) are visible on both IGBP peers.
As soon as set localpref 400 is
reinserted, the issue originally presented reappears.
Many thanks again for
your kind assistance.



Re: Possible bug ? Re: 4.7 Release - bgpd not passing IBGP routes

2010-05-30 Thread Insan Praja SW

Hi,
On Sun, 30 May 2010 02:34:12 +0700, a b obsdmisc...@yahoo.co.uk wrote:


Hi,

Further to my earlier email, additional experimentation shows that
removal of set localpref from my config file on BSD02 allows full mesh  
IBGP
to correctly occur.  Reinsertion of set localpref makes the issue  
originally

reported reappear.



By setting received prefixes to localpref 400, it would be preferable to  
the router thus made other similar prefixes with lower localpref  
unselected. But, yes, it should appeared on RIB. Please show us bgpctl sh  
rib output from all routers. And, if I'm not mistaken, if there are  
prefixes with the same metrics comes from both eBGP and iBGP, prefixes  
from eBGP peers will be chosen.


HTH,



--
insandotpraja(at)gmaildotcom



Re: Possible bug ? Re: 4.7 Release - bgpd not passing IBGP routes

2010-05-30 Thread a b
(1) With set localpref 500 on EBGP session on BSD02

bgpctl sh rib on
BSD01 :
I*0.0.0.0/0172.16.99.254500065432i
*
0.0.0.0/0172.16.99.254100065432i

bgpctl sh rib on BSD02
:
*0.0.0.0/0172.16.99.254500065432i

(2) With no
localpref set on EBGP session on BGP02

bgpctl sh rib on BSD01 :
*
0.0.0.0/0172.16.99.254100065432i
I*0.0.0.0/0
172.16.99.254100065432i

bgpctl sh rib on BSD02 :
*
0.0.0.0/0172.16.99.254100065432i
I*0.0.0.0/0
172.16.99.254100065432i

(3) With set localpref 25 on EBGP
session on BSD02

bgpctl sh rib on BSD01 :
*0.0.0.0/0172.16.99.254
100065432i

bgpctl sh rib on BSD02 :
I*0.0.0.0/0
172.16.99.254100065432i
*0.0.0.0/0172.16.99.25425
065432i



4.7 Release - bgpd not passing IBGP routes

2010-05-29 Thread a b
Hi,

I've got a curious problem with a test I've been doing with bgpd on 4.7
release.  Hopefully someone can point out where I am going wrong.

Test Layout
:
BSD01 - EBGP01
BSD02 - EBGP01

BSDxx are both 4.7 release BGP speakers in
private ASN 64550 (OSPF running between them as IGP)
EBGP01 is a non OpenBSD
BGP speaker in private ASN 65432 (just sending default route for test
purposes)


BSD01 does not appear to be receiving routes from BSD02 (in this
case, it should be learning a higher pref default route from BSD02 over IBGP)
on BSD01 :
# bgpctl show sum
Neighbor ASMsgRcvd   MsgSent   OutQ
Up/Down  State/PrfRcvd
BSD0264550   19 19   0
00:15:25 0
EBGP BOX 65432 20   19   0
00:17:09 1

#bgpctl show rib
*  0.0.0.0/0   172.16.99.254  400 0
65432 i


on BSD02 :
# bgpctl show sum
Neighbor   AS
MsgRcvd   MsgSent   OutQ  Up/Down  
State/PrfRcvd
BSD0164550   121
125 0  
00:20:25   1
EBGP BOX 65432 1163  1188
0 01:17:09 1

#bgpctl show rib
I* 0.0.0.0/0  172.16.99.254
400 0 65432 i
* 0.0.0.0/0  172.16.99.254 100 0 65432 i 



bgpd.conf from
BSD01 :

PEER_ASN=65432
LOCAL_ASN=64550
MY_ID=192.168.152.1
REMOTE_IP=172.16.99.254
IBGP_PEER=192.168.152.2
LO1_IP=192.168.152.1

AS
$LOCAL_ASN
router-id $MY_ID
holdtime 180
holdtime min 3
fib-update yes

group
transit 65432 {
set localpref 400
remote-as $PEER_ASN
neighbor $REMOTE_IP {
descr EBGP BOX
announce self
}
}

group IBGP Mesh {
remote-as $LOCAL_ASN
local-address $LO1_IP
neighbor $IBGP_PEER {
descr BSD02
}
}

bgpd.conf from
BSD02 :

PEER_ASN=65432
LOCAL_ASN=64550
MY_ID=192.168.152.2
REMOTE_IP=172.16.99.254
IBGP_PEER=192.168.152.1
LO1_IP=192.168.152.2

AS
$LOCAL_ASN
router-id $MY_ID
holdtime 180
holdtime min 3
fib-update yes

group
transit 65432 {
set localpref 400
remote-as $PEER_ASN
neighbor $REMOTE_IP {
descr EBGP BOX
announce self
}
}

group IBGP Mesh {
remote-as $LOCAL_ASN
local-address $LO1_IP
neighbor $IBGP_PEER {
descr BSD01
}
}



Possible bug ? Re: 4.7 Release - bgpd not passing IBGP routes

2010-05-29 Thread a b
Hi,

Further to my earlier email, additional experimentation shows that
removal of set localpref from my config file on BSD02 allows full mesh IBGP
to correctly occur.  Reinsertion of set localpref makes the issue originally
reported reappear.