Mailing List Archive

[Bug 418] changing address on an existing interface doesn't cause existing static routes to be revalidated
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug
report.

http://bugzilla.quagga.net/show_bug.cgi?id=418


web@pilot.org.ua changed:

What |Removed |Added
----------------------------------------------------------------------------
Summary|a new connected route |changing address on an
|doesn't activate existing |existing interface doesn't
|static routes, although |cause existing static routes
|ought to |to be revalidated
OS/Version|FreeBSD |All
Severity|normal |major




------- Additional Comments From web@pilot.org.ua 2007-11-09 08:55 -------
My recent research seems to prove, that the problem is OS-agnostic. There are
three cases, which I can reproduce on both FreeBSD and Linux. All of them are
constituted by a zebra daemon with some static routes configured.

A. Existing nexthop.
Starting zebra in a preconfigured environment, which has the nexthop of the
configured static routes reachable via a connected route results in those
statics being activated normally.

B. New interface being brought up.
Having zebra daemon running with configured static routes, we bring an interface
up, which makes the nexthop of the inactive statics reachable. All appropriate
statics get activated.

C. Changing address on an existing interface.
Having zebra daemon running, we change IP address of one of existing UP
interfaces so, that the new connected prefix covers nexthop(s) of some
configured, but inactive routes. A new connected route replaced the old one
and... nothing happens. At least before we make any further changes in the
connected routes set.



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
Quagga-bugs mailing list
Quagga-bugs@lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-bugs
[Bug 418] changing address on an existing interface doesn't cause existing static routes to be revalidated [ In reply to ]
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug
report.

http://bugzilla.quagga.net/show_bug.cgi?id=418





------- Additional Comments From web@pilot.org.ua 2007-11-09 09:28 -------
The inconsistency, which leads to such event handling, is that the connected
route of a new/preconfigured interface is added first, and then all existing
routes (incl. static ones) are revalidated with nexthop_active_update(), called
by rib_process(). Contrariwise, when a new connected route replaces existing
one, the sequence is: remove the old connected route, revalidate the whole RIB,
add the new connected route.
This way RIB revalidation after the connected route change will be postponed
till either a new interface pops up or the next connected route change occurs
(in the latter case posponing own revalidation even further).



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
Quagga-bugs mailing list
Quagga-bugs@lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-bugs
[Bug 418] changing address on an existing interface doesn't cause existing static routes to be revalidated [ In reply to ]
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug
report.

http://bugzilla.quagga.net/show_bug.cgi?id=418





------- Additional Comments From web@pilot.org.ua 2007-11-09 12:08 -------
Both connected_up_ipv4() and connected_down_ipv4() end up calling rib_update()
in a hope, that it will schedule RIB revalidation, but the latter doesn't
requeue or reorder already queued RIB records. This is the root cause of the
problem.

------- Additional Comments From web@pilot.org.ua 2007-11-09 16:43 -------
Created an attachment (id=255)
--> (http://bugzilla.quagga.net/attachment.cgi?id=255&action=view)
fixing patch revision 1




------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
Quagga-bugs mailing list
Quagga-bugs@lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-bugs
[Bug 418] changing address on an existing interface doesn't cause existing static routes to be revalidated [ In reply to ]
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug
report.

http://bugzilla.quagga.net/show_bug.cgi?id=418


web@pilot.org.ua changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |CLOSED
Resolution| |FIXED




------- Additional Comments From web@pilot.org.ua 2007-11-12 14:44 -------
A proper fix for this issue also required fixing
lib/linklist.c:listnode_add_after() to increment list item counter. Going to
commit everything soon.



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
Quagga-bugs mailing list
Quagga-bugs@lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-bugs
[Bug 418] changing address on an existing interface doesn't cause existing static routes to be revalidated [ In reply to ]
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug
report.

http://bugzilla.quagga.net/show_bug.cgi?id=418





------- Additional Comments From web@pilot.org.ua 2007-11-12 14:58 -------
Created an attachment (id=256)
--> (http://bugzilla.quagga.net/attachment.cgi?id=256&action=view)
fixing patch rev 2




------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
Quagga-bugs mailing list
Quagga-bugs@lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-bugs