[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