[Xorp-users] Problems with IBGP
Alejandro Berna
alejandro.berna at i2cat.net
Fri May 8 05:44:28 PDT 2009
Hi all,
I am trying to configure two ASs (65002 and 65000). Every AS for
internal routing has configured OSPFv4 and it works properly. Between
the two ASBR routers I have configured EBGP exporting the OSPF routes to
each one. The peer interfaces of the EBGP are not configured in the
internal OSPFv4 protocol of every AS. The two ASBR routers learn all the
networks (the external and the internals) and know how to reach to every
one. Now I need to send the networks learned thanks to EBGP to the rest
of the internal routers of each AS. I need to do it with IBGP (for my
objectives I cannot import these routes to the OSPF database). I
configure IBGP inside every AS but I find a problem; they learn the
routes but the next-hop of every external AS network is the peer
interface of the EBGP (these interfaces are not in the OSPF database
therefore the internal routers doesn't know how to reach them). I've
tried using loopback address for the IBGP peers but with this solution
the internal routers doesn't learn any external network. This is my testbed:
The two peer interfaces for EBGP are Router 2 eth1 and Router 5 eth3. As
I commented before these 2 interfaces are not included in the internal
AS OSPF configuration. In order to expose my doubt I show Router 1 and
Router 2 configuration as they were the only 2 routers that have IBGP
configuration (Router 3 excluded for the IBGP configuration):
The configuration file for Router 2 is:
interfaces {
interface eth1 {
vif eth1 {
address 10.10.10.10{
prefix-length: 24
disable: false
}
}
}
interface eth2 {
vif eth2 {
address 10.129.0.2 {
prefix-length: 24
disable: false
}
}
}
interface eth3 {
vif eth3 {
address 10.1.10.2 {
prefix-length: 24
disable: false
}
}
}
}
fea {
unicast-forwarding4 {
disable: false
}
}
policy {
policy-statement export-routes {
term 100 {
from {
protocol: "connected"
}
}
term 101 {
from {
protocol: "ospf4"
}
}
term 102 {
from {
protocol: "bgp"
}
}
}
}
protocols {
ospf4 {
router-id: 192.168.0.2
area 0.0.0.0 {
interface eth2 {
vif eth2 {
address 10.129.0.2 {
}
}
}
interface eth3 {
vif eth3 {
address 10.1.10.2 {
}
}
}
}
}
bgp {
bgp-id: 10.10.10.10
local-as: 65002
export: "export-routes"
peer 10.10.10.20 {
local-ip: 10.10.10.10
as: 65000
next-hop: 10.10.10.10
}
peer 10.129.0.3 {
local-ip: 10.129.0.2
as: 65002
next-hop: 10.129.0.2
}
}
}
And the configuration file for Router 1 is:
interfaces {
interface eth1 {
vif eth1 {
address 10.129.0.3 {
prefix-length: 24
disable: false
}
}
}
interface eth2 {
vif eth2 {
address 10.9.7.3 {
prefix-length: 24
disable: false
}
}
}
}
fea {
unicast-forwarding4 {
disable: false
}
}
protocols {
ospf4 {
router-id: 192.168.0.1
area 0.0.0.1 {
interface eth1 {
vif eth1 {
address 10.129.0.3 {
}
}
}
interface eth2 {
vif eth2 {
address 10.9.7.3 {
}
}
}
}
}
bgp {
bgp-id: 10.129.0.3
local-as: 65002
peer 10.129.0.2 {
local-ip: 10.129.0.3
as: 65002
next-hop: 10.129.0.3
}
}
}
The bgp route table for Router 2 is:
Prefix Nexthop
Peer AS Path
*> 10.1.10.0/24 10.1.10.2
0.0.0.0 i
*> 10.9.7.0/24 10.129.0.3
0.0.0.0 i
*> 10.10.10.0/24 10.10.10.10
0.0.0.0 i
*> 10.129.0.0/24 10.129.0.2
0.0.0.0 i
*> 10.3.7.0/24 10.10.10.20
10.10.10.20 65000 i
*> 10.3.9.0/24 10.10.10.20
10.10.10.20 65000 i
*> 10.9.9.0/24 10.10.10.20
10.10.10.20 65000 i
* 10.10.10.0/24 10.10.10.20
10.10.10.20 65000 i
And the bgp route table for Router 1 is:
Prefix Nexthop
Peer AS Path
*> 10.1.10.0/24 10.1.10.2
10.10.10.10 i
* 10.3.7.0/24 10.10.10.20
10.10.10.10 65000 i
* 10.3.9.0/24 10.10.10.20
10.10.10.10 65000 i
*> 10.9.7.0/24 10.129.0.2
10.10.10.10 i
* 10.9.9.0/24 10.10.10.20
10.10.10.10 65000 i
* 10.10.10.0/24 10.10.10.10
10.10.10.10 i
*> 10.129.0.0/24 10.129.0.2
10.10.10.10 i
As I commented Router 2 is able to reach any network of both ASs. Router
1 is only able to reach the networks inside the AS because it doesn't
know how to reach 10.10.10.0/24 network. How can I fix this? I specified
the IBGP next hop for Router 1 as the interface 10.129.0.2 but in the
bgp route it appears 10.10.10.20, what am I doing wrong? I hope somebody
can help me, thanks a lot,
Alejandro Berna
More information about the Xorp-users
mailing list