RyuBGP doesn't work properly becase of handling wrong nexthop address.
Therefore, in spite of receiving BGP UPDATE Message in the peering router,
the router fails to learn a new route entry from RyuBGP in BGP table.
(Memo: this issue has not occurred in Vpnv4/mpBGP environment.)

(1) register route entry as prefix_add(prefix='x,x,x,x', next_hop='y.y.y.y')

                 static               eBGP
    ------- R1 ------------ RyuBGP ---------> Router
    x.x.x.x   y.y.y.y            z.z.z.z       => Drop UPDATE(Nexthop: y.y.y.y)

(2) receiving BGP UPDATE Message from iBGP session

                 iBGP                 eBGP
    ------- R1 -----------> RyuBGP ---------> Router
    x.x.x.x   y.y.y.y            z.z.z.z       => Drop UPDATE(Nexthop: y.y.y.y)

Signed-off-by: Toshiki Tsuboi <[email protected]>
---
 ryu/services/protocols/bgp/peer.py | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/ryu/services/protocols/bgp/peer.py 
b/ryu/services/protocols/bgp/peer.py
index 48806bc..d293774 100644
--- a/ryu/services/protocols/bgp/peer.py
+++ b/ryu/services/protocols/bgp/peer.py
@@ -802,11 +802,6 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
         """
         route_family = path.route_family
 
-        if route_family == RF_IPv4_UC and path.nexthop != '0.0.0.0':
-            return path.nexthop
-        if route_family == RF_IPv6_UC and path.nexthop != '::':
-            return path.nexthop
-
         # By default we use BGPS's interface IP with this peer as next_hop.
         if self._neigh_conf.next_hop:
             next_hop = self._neigh_conf.next_hop
@@ -857,7 +852,6 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
             unkown_opttrans_attrs = None
             nlri_list = [path.nlri]
 
-            # MP_REACH_NLRI Attribute.
             # By default we use BGPS's interface IP with this peer as next_hop.
             # TODO(PH): change to use protocol's local address.
             # next_hop = self.host_bind_ip
-- 
1.9.1
------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to