Ignore our own prefixes from our own routers, and say why a route for a network of this machine is held
Two routers of an AS that both originate a prefix (anycast) each announce it to the other over their internal session. Each took the other's route, could not install it in the kernel, since the prefix is on one of its own interfaces, and so held it, counted as rejected with "next hop unreachable": a permanent rejection on a healthy session, for a next hop that was in fact fine. A route from a peer in our own AS for a prefix this router originates is now ignored: not taken, not held, not counted. Only that prefix itself; what is inside it is judged as usual. From other networks such routes are refused as our own prefixes, as before. A route that is held because its prefix is a network of this machine, or inside one (an exchange's LAN prefix, say), is now counted as "prefix is a network of this router", apart from routes whose next hop cannot be reached. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
52593bb2c2
commit
3609451bdc
8 files changed
+131
-16
No files matched your search
@@ -48,6 +48,12 @@ For IBGP neighbors (where `remote_asn` equals `local_asn`), Ferrix applies
|
||||
only the checks on the prefix. The AS path checks do not apply, and the
|
||||
next hop can be any usable address.
|
||||
|
||||
An IBGP neighbor can advertise a prefix that the local router also
|
||||
originates, for example an anycast prefix that both routers originate.
|
||||
Ferrix ignores such a route: it does not accept the route, and does not
|
||||
count it as rejected. This applies only to the originated prefix itself,
|
||||
not to more specific prefixes within it.
|
||||
|
||||
Ferrix always rejects the routes in Table 2. These checks cannot be
|
||||
disabled.
|
||||
|
||||
|
||||
@@ -78,7 +78,9 @@ kernel reaches these destinations directly. Without this rule, a neighbor
|
||||
on a shared LAN that advertises part of the LAN could attract the traffic
|
||||
for other hosts on the LAN, including the BGP sessions with them.
|
||||
|
||||
The status page counts such routes as "inside a network of this machine".
|
||||
Ferrix holds such a route, and counts it as rejected with the reason
|
||||
`prefix is a network of this router`. If the subnet is removed from the
|
||||
interface, Ferrix accepts the route.
|
||||
|
||||
## Route Ownership
|
||||
|
||||
|
||||
Reference in new issue
Block a user