Age | Commit message (Collapse) | Author |
|
summary LSA into stub areas so that these routers are able to reach the
outside of the area.
OK norby@
|
|
makes to code simpler. While the routing table is somewhat simpler the
redistribution code does not allow a much more radical approach. With some
additional help of Mr. Kernel and his rtsock it should be possible to rip
even more code out of kroute.c.
Tested and OK sthen@, gollo@
|
|
of the default summary net lsa on ABRs but that is comming. OK norby@
|
|
flag that we set). So introduce a area_ospf_options() function that will
return the correct flags for each area. This makes stub area support a lot
easier.
OK norby@
|
|
Send all possible nexthops to the parent process and correctly sync
the RIB, FIB and kernel routing table. Based on initial work by pyr@.
OK pyr@ norby@
PS: don't forget that you need to enable multipath support via a sysctl
|
|
|
|
manpage bits from jmc@
ok norby@ claudio@
|
|
interfaces and areas. With this carp setups using ospfd are more reliable
because we can fail over if the OSPF connectivity is (partially) lost.
OK norby@
|
|
This allows ospfd to announce networks without the need to transit traffic.
stub router is enabled if the fib is not coupled, net.inet.ip.forwarding is
not 1 or if the stub router global config option is set to yes.
OK norby@
|
|
after fixing many use-after-free errors a couple of days ago.
Most cases -- adding/removing of interfaces, adding/removing of areas --
seem to work. Still merge_config() is a behemoth of a function and some
edge cases may not be covered correctly (yet).
OK norby@ pyr@
|
|
takes care that redistribution is correct after reload. OK norby@ pyr@
|
|
the default route as well. OK norby@, michele@
|
|
Mostly based on a diff by Pierre-Yves Ritschard (I just simplified the parser
code). OK norby@
|
|
address of a interface could be used. Now it is possible to specify a
interface more than once if multiple networks are configured. An alternative
network can be specified via e.g. interface em0:10.0.5.1. The old interface
syntax without the IP still works and uses the main/first configured IP
address.
ospfd now needs to include the IP header on outgoing messages as it is not
possible to specifiy the source address in sendto(2). Additionally all
multicast joins and leaves have to be tracked.
OK norby@
|
|
It is possible to read the uptime of the daemon with the "ospfctl show"
command.
ok claudio@
|
|
routes via "no redistribute rtlabel admin". Redistribute rules are parsed
in order and the first match is used. Only exception is "redistribute default"
Which is independent of the other rules and can't be negated.
|
|
define which routes should be redistributed via OSPF. So now you can
define the export list on a fine graded basis. More to come... OK norby@
|
|
passed size is not bigger than 2^16 (limit of the used algorithm).
This removes some more lint warnings and makes sense.
|
|
global and per area defaults. With this it is now possible to define one
set of auth-md keys and use them in every defined interface. OK norby@
|
|
auth-type et al. to the main and area blocks. OK norby@
|
|
This makes it much easier to grep in the output.
The original format of "show interface" can be seen with
"show interface detail".
help and ok claudio@
|
|
the code and makes config reloads easier. OK norby@
|
|
c string with a lenght <= 8 with a buffer of size 8. Now in some cases
there can be trailing garbage after the c-string and so the bcmp() fails.
Found by Sergey Matveychuk who provided a similar patch.
OK norby@
|
|
ok claudio@
|
|
Stuff that is only used in ospfd debug messages is simplified.
OK norby@
|
|
unsigned. Found by lint.
|
|
|
|
is known via kernel and ospf. If the kernel route is removed the ospf one
was not added to the FIB. This is an uncommon event so it is OK to request
an update from the RIB in this case.
Additionally ospfd treated bgpd inserted routes like static routes. This
is wrong because IGP routes habe a higher preference over EGP routes. In
this case a bgpd route needs to be overridden by a ospfd one.
With these to fixes bgpd and ospfd start to play nicely together.
OK norby@
|
|
It is now possible to see the uptime of the individual entries in the RIB.
The uptime can be displayed with "ospfctl show rib"
ok claudio@
|
|
Displayed in "ospfctl show neighbor".
ok claudio@
|
|
and remove other unneeded functions that are only used in bgpd.
|
|
only calculate the dirty ones.
ok claudio@
|
|
ok claudio@
|
|
resulted in a major bottleneck if bgpd was used on the same box -- not clever
to do linear searches over 175k entries :(. This now moves the redistribute
code back into kroute duty and kills the linear list. Also default routes are
now redistributed without the need for a kernel default route.
OK norby@
|
|
not be used to connect to a OSPF cloud and forced to be passive. With this
ospfd will only announce the carp interface route if the interface is master.
So you can connect a LAN in a redundant way to your ospf backbone. OK norby@
|
|
just use ev for the spf_timer -- ev is unused in the RDE.
|
|
function prototypes too.
|
|
- have ospfctl tell us when we are using authentication with 'show interface'
ok claudio@ norby@
|
|
- remove rtr_id from struct iface we don't need to keep a copy of this value
per interface
- replace all references to iface->rtr_id.s_addr with calls to ospfe_rtr_id()
ok claudio@ norby@
|
|
are e.g. created by the PMTU code and are removed after some time.
OK norby@
|
|
ok claudio@
|
|
This makes it possible to have ospfd(8) parse a configuration file and
display the parsed result.
ok claudio@
|
|
ok claudio@
|
|
up and running. This makes redistribution of carp(4)-ed networks magically
work. OK norby@
|
|
ospfctl show rib detail.
ok claudio@
|
|
to ospfctl.
Show detailed information about the LSAs in the Link State Database.
ok claudio@
|
|
router LSA. To do that correctly we need to track the number of active
neighbors for each area. If the routers ABR status changes all router LSA
need to be updated via orig_rtr_lsa_all().
OK norby@
|
|
|
|
With "redistribute (static|connected|default|none)" it is possible to
tell ospfd which external routes should be announced.
Connected routes will be announced only if there is no corresponding
interface configured, in that case the prefix is not external.
Adding and removing of announced prefixes are done automaticaly.
OK norby@
|
|
OK norby@
|