← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1615919] Re: BGP: DVR fip has next_hop to snat gateway after associate first time

 

Reviewed:  https://review.openstack.org/372310
Committed: https://git.openstack.org/cgit/openstack/neutron-dynamic-routing/commit/?id=0980985b2f3590f60b4726a5419680a1d70f9ead
Submitter: Jenkins
Branch:    master

commit 0980985b2f3590f60b4726a5419680a1d70f9ead
Author: LIU Yulong <liuyulong@xxxxxx>
Date:   Mon Sep 19 11:29:04 2016 +0800

    Let the bgp_plugin to query floating IP bgp next_hop
    
    When a dvr floating IP is associated to a port, the bgp plugin
    `floatingip_update_callback` will immediately send a notification
    `start_route_advertisements` to DR agent, there is a new floating
    IP bgp route.
    But this bgp route is not correct, its next_hop is set to dvr router
    snat gateway IP address. And then after `periodic_interval` seconds,
    the DR agent will resync that DVR fip route with new next_hop to the
    correct FIP namespace fg-device IP address.
    
    This patch will let the bgp_plugin to handle the floating IP bgp route
    next_hop query.
    
    Change-Id: Ic6bb7f4263c6e2da315178be2ed041eb7020c905
    Closes-bug: #1615919


** Changed in: neutron
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1615919

Title:
  BGP: DVR fip has next_hop to snat gateway after associate first time

Status in neutron:
  Fix Released

Bug description:
  ENV:
  stable/mitaka

  When A DVR floating IP associate to a port, the `floatingip_update_callback` will immediately start a `start_route_advertisements` to notify DR agent that FIP bgp route.
  But this bgp route is not right, its next_hop is set to snat gateway IP address.
  And then after `periodic_interval` seconds, then the DR agent will resync that DVR fip route with new next_hop to the correct FIP namespace fg-device IP address.

  Reproduce:
  1. create a DVR router 1, set gateway
  2. create a network/subnet, and connected to the DVR router 1
  3. create a VM 1
  4. bind a floating IP to that VM 1
  5. in DR agent LOG, you may see the following infos:

  2016-08-23 13:08:26.301 13559 INFO bgpspeaker.api.base [req-829d21e2-98c3-49f3-9ba5-bd626aaf782e - - - - -] API method network.add called with args: {'prefix': u'172.16.10.68/32', 'next_hop': u'172.16.6.154'}
  2016-08-23 13:08:26.302 13559 INFO neutron.services.bgp.driver.ryu.driver [req-829d21e2-98c3-49f3-9ba5-bd626aaf782e - - - - -] Route cidr=172.16.10.68/32, nexthop=172.16.6.154 is advertised for BGP Speaker running for local_as=2345.
  2016-08-23 13:08:37.131 13559 INFO bgpspeaker.api.base [req-fa420676-2ddd-4b24-9c36-932c2c8b1bef - - - - -] API method network.del called with args: {'prefix': u'172.16.10.68/32'}
  2016-08-23 13:08:37.131 13559 INFO neutron.services.bgp.driver.ryu.driver [req-fa420676-2ddd-4b24-9c36-932c2c8b1bef - - - - -] Route cidr=172.16.10.68/32 is withdrawn from BGP Speaker running for local_as=2345.
  2016-08-23 13:08:37.132 13559 INFO bgpspeaker.api.base [req-fa420676-2ddd-4b24-9c36-932c2c8b1bef - - - - -] API method network.add called with args: {'prefix': u'172.16.10.68/32', 'next_hop': u'172.16.10.66'}
  2016-08-23 13:08:37.132 13559 INFO neutron.services.bgp.driver.ryu.driver [req-fa420676-2ddd-4b24-9c36-932c2c8b1bef - - - - -] Route cidr=172.16.10.68/32, nexthop=172.16.10.66 is advertised for BGP Speaker running for local_as=2345.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1615919/+subscriptions


References