Ondrej Zajicek
57c574d82a
Multipath support for OSPF
2010-12-07 23:35:39 +01:00
Ondrej Zajicek
391931d456
Minor finalizations of link state checks.
2010-11-19 13:46:21 +01:00
Ondrej Zajicek
d9e7e1b13d
Adds support for iface link detection to OSPF.
2010-11-13 14:19:23 +01:00
Ondrej Zajicek
5cdf264f93
Fixes a bug related to implicit backbone on ABR.
2010-11-10 16:43:11 +01:00
Ondrej Zajicek
faf58cec4d
Fixes a bug in NBMA on an iface with multiple IP addresses.
2010-08-22 14:43:53 +02:00
Ondrej Zajicek
ba5e5940aa
Adds igp_metric attribute.
2010-08-02 13:11:53 +02:00
Ondrej Zajicek
824de84d48
Do not start with huge OSPF FIBs.
...
Most OSPF instances don't need 64k FIB fields. This change halves
resident memory usage on small OSPF networks.
2010-06-02 22:25:39 +02:00
Ondrej Zajicek
6384c7d7aa
OSPF: most of summary LSA orig./flush logic rewritten.
...
Fixes many bugs in the old code and makes it much cleaner.
2010-05-02 19:58:34 +02:00
Ondrej Zajicek
0ea8fb4abe
Fixes and enhancements in 'show ospf state' command.
...
Now it shows a distance, option to change showing reachable/all network
nodes and better handling of AS-external LSAs in multiple areas. The
command 'show ospf topology' was changed to not show stubnets in both
OSPFv2 and OSPFv3 (previously it displayed stubnets in OSPFv2).
2010-04-24 15:18:21 +02:00
Ondrej Zajicek
b8113a5e92
Implements BGP 'show protocols' info details.
2010-04-07 00:19:23 +02:00
Ondrej Zajicek
126683feed
Filter language updates; new route attributes and datatype.
...
- Adds bgp_originator_id and bgp_cluster_list route attributes.
- Adds dotted quad filter datatype (for router IDs, used by
bgp_originator_id and ospf_router_id route attributes).
- Fixes pair ~ pair set matching.
- Documentation updates.
2010-03-29 19:29:03 +02:00
Ondrej Zajicek
48cff379a7
Added some comments.
2010-03-26 16:21:29 +01:00
Ondrej Zajicek
af157fa3db
Disable multiple OSPF pseudointerfaces on BSD.
2010-03-26 14:48:01 +01:00
Ondrej Zajicek
0aad2b9292
Temporary OSPF commit - sockets.
2010-03-14 16:36:59 +01:00
Ondrej Zajicek
54305181f6
Merge branch 'new' into socket2
2010-03-11 18:55:59 +01:00
Ondrej Zajicek
ff2857b03d
Many changes in (mainly) kernel syncers.
...
- BSD kernel syncer is now self-conscious and can learn alien routes
- important bugfix in BSD kernel syncer (crash after protocol restart)
- many minor changes and bugfixes in kernel syncers and neighbor cache
- direct protocol does not generate host and link local routes
- min_scope check is removed, all routes have SCOPE_UNIVERSE by default
- also fixes some remaining compiler warnings
2010-02-26 10:55:58 +01:00
Ondrej Zajicek
e81b440f68
Fix configure to enable warnings and fix most of them.
2010-02-21 14:34:53 +01:00
Ondrej Zajicek
dca75fd7c2
Removes phantom protocol from the pipe design.
...
It seems that by adding one pipe-specific exception to route
announcement code and by adding one argument to rt_notify() callback i
could completely eliminate the need for the phantom protocol instance
and therefore make the code more straightforward. It will also fix some
minor bugs (like ignoring debug flag changes from the command line).
2010-02-13 12:26:26 +01:00
Ondrej Zajicek
353729f513
Temporary OSPF commit - socket changes.
2010-02-11 10:23:35 +01:00
Ondrej Zajicek
c27b2449d1
Shows source (Router ID) for OSPF routes and adds such attribute.
...
A sad thing is that we does not have a 'router_id' filter type,
so it must be given as decimal number in filters.
2010-02-08 16:01:03 +01:00
Ondrej Zajicek
cf31112f0d
Implements MRTdump feature.
2010-01-03 12:17:52 +01:00
Ondrej Zajicek
610bb3cff0
Show command cleanups.
2009-12-22 10:49:39 +01:00
Ondrej Zajicek
f75747073e
Implements route reload for OSPF.
2009-12-14 21:17:15 +01:00
Ondrej Zajicek
34a877ccac
Minor updates.
2009-12-14 17:29:33 +01:00
Ondrej Zajicek
be2d38b7e9
Temporary OSPFv3 commit.
2009-12-11 00:31:56 +01:00
Ondrej Zajicek
9895502392
Fixes OSPFv2 build.
2009-12-03 23:20:02 +01:00
Ondrej Zajicek
988992446d
Implement command to show LSA db.
2009-10-15 11:57:25 +02:00
Ondrej Zajicek
b66abe8ef9
Reimplements 'show ospf state' for OSPFv3 and fixes some bugs.
2009-10-15 00:28:04 +02:00
Ondrej Zajicek
d82fc18d75
Implement proper LSA ID generation.
2009-10-07 21:10:29 +01:00
Ondrej Zajicek
be86240662
Temporary OSPFv3 development commit.
...
Finally, it is working.
2009-09-08 13:45:02 +02:00
Ondrej Zajicek
b49e6f5a65
Temporary OSPFv3 development commit
2009-08-25 16:42:14 +02:00
Ondrej Zajicek
c3226991a0
Temporary OSPFv3 development commit
2009-08-21 09:27:52 +02:00
Ondrej Zajicek
3aab39f589
Use %R in OSPF when appropriate.
2009-07-23 16:51:28 +02:00
Ondrej Zajicek
f9bdcad469
Fixes type mismatch in OSPF printf statements.
...
Mixing ip_addr and u32 does bad things on Ultrasparc.
Although both have the same size. Fascinating.
It was not catched by compiler because of varargs.
2009-07-05 19:01:54 +02:00
Ondrej Zajicek
3867520281
Implements an option that allows to change a set of stub networks.
2009-06-11 17:25:38 +02:00
Ondrej Zajicek
3d15dcdb1c
Changes OSPF to generate stub networks for non-primary addresses.
...
Also does some reorganization in RT LSA announcement.
2009-06-10 23:45:08 +02:00
Ondrej Zajicek
23ac9e9a9e
Changes pipes to transfer all routes between routing table, not just optimal routes.
2009-05-31 15:24:27 +02:00
Ondrej Zajicek
20e94fb85b
A change in OSPF and RIP interface patterns.
...
Allows to add more interface patterns to one common 'options'
section like:
interface "eth3", "eth4" { options common to eth3 and eth4 };
Also removes undocumented and unnecessary ability to specify
more interface patterns with different 'options' sections:
interface "eth3" { options ... }, "eth4" { options ... };
2009-05-06 22:02:45 +02:00
Ondrej Zajicek
aebe06b40c
Proper format functions for ORIGINATOR_ID, CLUSTER_LIST
2008-11-08 23:33:22 +01:00
Ondrej Zajicek
f0ad56f441
Fixes some sloppiness of commit a3b70dc499
.
2008-10-28 16:10:42 +01:00
Ondrej Zajicek
a3b70dc499
Two new informative CLI commands for OSPF.
...
Two new CLI commands for OSPF giving nice informative (and still machine
parsable) representation of OSPF network graph (based on datas from the
LSA database).
The first command (show ospf topology) shows routers, networks and stub
networks, The second command (show ospf state) shows also external
routes and area-external networks and routers propagated by given area
boundary router.
2008-10-27 00:03:30 +01:00
Ondrej Filip
94c42054ea
Added new parametr 'rx buffer <num>'. BIRD is able to receive
...
very large packets (if configured).
2005-03-15 22:06:36 +00:00
Ondrej Filip
63ca37f313
Cleanup - all unused variables deleted.
2005-02-20 18:56:06 +00:00
Ondrej Filip
52d61a8498
Intelligent reconfiguration should work again.
2005-02-20 16:54:09 +00:00
Ondrej Filip
d8c7d9e884
Since now I can also use 'dead interval', not just 'dead counter'.
2005-02-20 04:27:56 +00:00
Ondrej Filip
b181f444a6
Small changes to reduce number of warnings.
2005-02-14 11:54:16 +00:00
Ondrej Filip
5d3f555234
Many bugfixes in routing table calculation and summary LSA origination.
2005-02-13 23:36:31 +00:00
Ondrej Filip
86c84d76b7
Huge OSPF database redesign. Since now, all LSAs of all areas
...
are in single database. This avoids duplication of external LSAs and
fixes bug in external LSA distribution.
2004-07-15 16:37:52 +00:00
Ondrej Filip
3b16080c97
Multiple OSPF areas can be attached.
...
Origination of summary LSA works.
Routing table calculation works.
Virtual links works.
Well, I hope, OSPF is fully compatible with RFC2328!!!!
2004-07-14 21:46:20 +00:00
Ondrej Filip
621ccdfe5a
Bugfix - options bits were not included in LSAs
...
Bugfix - E bit was not unset on stub areas.
2004-07-13 11:58:50 +00:00
Ondrej Filip
3e2bd0f17a
Md5 authentification added (unsested).
...
Packet receiving clean up.
2004-06-26 20:15:34 +00:00
Ondrej Filip
98ac61766d
A lot of changes:
...
- metric is 3 byte long now
- summary lsa originating
- more OSPF areas possible
- virtual links
- better E1/E2 routes handling
- some bug fixes..
I have to do:
- md5 auth (last mandatory item from rfc2328)
- !!!!DEBUG!!!!! (mainly virtual link system has probably a lot of bugs)
- 2328 appendig E
2004-06-25 16:39:53 +00:00
Ondrej Filip
1a61882d37
Better routing table calculation. We are ready to work with
...
multiple OSPF areas.
2004-06-11 09:36:50 +00:00
Ondrej Filip
d5d9693ce9
Deleted unused parameters.
2004-06-06 18:45:08 +00:00
Ondrej Filip
b8f17cf192
Small cleanup, indentation and preparation for multiple areas routing table calculation.
2004-06-06 16:00:09 +00:00
Ondrej Filip
2e10a170fe
Indentation.
2004-06-06 09:37:54 +00:00
Ondrej Filip
66261211a9
Struct area_net changed.
2004-06-06 09:13:37 +00:00
Ondrej Filip
b9ed99f738
Cleanup in iface.c
2004-06-06 08:55:33 +00:00
Martin Mares
598b984d1f
One less unused variable.
2004-06-05 09:58:06 +00:00
Martin Mares
1512813e95
... and a whole bunch of unused parameters and variables in ospf.
2004-06-05 09:28:17 +00:00
Ondrej Filip
6f3203fabf
cleanup in lsupd.c, indenting, "struct proto" removed...
2004-06-04 21:05:43 +00:00
Ondrej Filip
3df1e80464
Don't repeat "Sheduling rt calc....."
2004-06-04 14:21:08 +00:00
Ondrej Filip
39e517d47c
hello.c and hello.h cleaned up. No design changes.
2004-06-04 12:53:10 +00:00
Ondrej Filip
035f6acbfe
Patch from Andreas Steinmetz <ast@domdv.de>
2004-06-01 13:12:10 +00:00
Martin Mares
d83faf8dc4
static declarations don't belong to includes. (And most of them were
...
redundant anyway.)
2004-05-31 20:53:22 +00:00
Martin Mares
0077aab4f9
The code was broken for external /29 to /32 routes. Assuming that you
...
have one machine publishing a route to 10.1.1.3/32 and another one
publishing a route to 10.1.1.4/32. If the first machine went down the
route to 10.1.1.4/32 was wrongly killed by the old code, leading either
to missing routes or worse to bug()s like "Router parent does not have
next hop" or just segfaults. The patch fixes this but in the long term a
redesign is required here. Note that the patch doesn't worse the
situation, instead it prevents the problems stated. The redesign is
required to handle multiple routes to small subnets properly.
(by Andreas)
Feela, I think that this is at least a good temporary fix, but it's
of course up to you to decide.
2004-05-31 18:16:42 +00:00
Ondrej Filip
baa5dd6ccc
Many spelling mistakes fixed.
...
Thanks you Harry Moyes.
2003-08-23 10:42:41 +00:00
Ondrej Filip
e59e310e64
Age LSA DB after LSA origination and before routing table calculation.
2002-03-04 15:54:39 +00:00
Martin Mares
e43ae6330e
Fix %<something>I format strings.
2001-08-19 11:15:24 +00:00
Ondrej Filip
c926eee724
Area networks added into configuration.
2001-08-12 00:04:42 +00:00
Ondrej Filip
78e2c6ccf1
I will not originate the same lsa before MINLSINTERVAL.
2001-08-11 14:01:54 +00:00
Ondrej Filip
52fa3e3869
Fixed many bugs in rt calculation and interface adding. Now it seems to be
...
OK, I'm going to advertise 1.0.4.
2000-09-04 21:21:34 +00:00
Ondrej Filip
b02e40111e
I allocate struct ifa before unlocking. So route exported to OSPF are correct.
...
I work also with interfaces that have some problems with socket opening.
I declare them as stub.
2000-09-04 19:42:17 +00:00
Ondrej Filip
fdb1998202
Serious bug in ext lsa origination found. Going for 1.0.4.
2000-09-03 22:18:40 +00:00
Ondrej Filip
e3bc10fdc4
Added stub interface. (Interface which is propagated to OSPF but
...
it does not sends nor listens packets.)
I added some new options, please look at it and look into doc if it's OK.
2000-09-02 08:54:40 +00:00
Ondrej Filip
5ddec4e6cf
Reconfigure poll interval.
2000-09-02 07:58:05 +00:00
Ondrej Filip
7cedbf217e
Reconfiguration for new options.
2000-09-02 00:15:07 +00:00
Ondrej Filip
1eec760778
Typo in rte_better.
2000-08-16 20:18:19 +00:00
Ondrej Filip
d6a7e2fb85
Bug in rte_better.
2000-08-16 19:03:06 +00:00
Martin Mares
6567e6cf50
Missing parameters...
2000-06-08 12:42:34 +00:00
Martin Mares
725270cb1d
Fixes for the programmer's manual.
2000-06-08 12:37:21 +00:00
Ondrej Filip
17e29574bc
Better algoritmus of LSA aging.
2000-06-07 23:48:33 +00:00
Ondrej Filip
37c3e558ab
Simple explanation, how LSA are kept in database.
2000-06-07 23:05:32 +00:00
Ondrej Filip
d5e4b51865
Doc
2000-06-07 22:10:46 +00:00
Ondrej Filip
7ab3ff6a28
Doc in neighbor.c and some tiny changes related to.
2000-06-07 21:46:22 +00:00
Ondrej Filip
6f58dc64c9
Doc
2000-06-07 20:50:08 +00:00
Ondrej Filip
89755a8623
Introdution into OSPF.
2000-06-07 20:30:27 +00:00
Ondrej Filip
fa6c2405e2
Now I can change cost of interface without OSPF restart.
2000-06-07 13:46:13 +00:00
Ondrej Filip
8cd5c52fcb
Removed useless trace.
2000-06-07 01:19:16 +00:00
Ondrej Filip
edc34dc912
Reconfiguration hook.
...
It will survive many timer and constat changes.
2000-06-07 00:56:11 +00:00
Ondrej Filip
ee4880c82f
Some '\n' deleted.
2000-06-06 02:54:41 +00:00
Ondrej Filip
992705f65a
Tracing in topology
2000-06-06 02:27:08 +00:00
Ondrej Filip
f14032efdd
First part of tracing.
2000-06-06 02:09:58 +00:00
Ondrej Filip
51cff78b25
Allocate OSPF areas before interfaces.
2000-06-06 01:46:32 +00:00
Ondrej Filip
80787d418b
Dummy reconfigure added.
2000-06-06 00:52:35 +00:00
Ondrej Filip
3b580a23ad
Bugfix in NET LSA flushing.
...
Configuration now works! :-)
Better "show ospf"
Some minor bugfixes.
2000-06-05 20:57:53 +00:00
Martin Mares
8441f17925
Unless a filter specifies otherwise, all external routes have type 2
...
metric 10000.
2000-06-05 18:40:25 +00:00
Ondrej Filip
273fd2c164
Many bugfixes (I don't remember all of them):
...
Added link ID calculation for external routes with same prefix but
different mask.
Bugfix in NET lsa origination.
Bugfix in NET hashing.
Bugfix in LSA installing.
2000-06-05 02:23:20 +00:00
Ondrej Filip
89d6782dd1
interface {} added.
2000-06-03 01:29:00 +00:00
Ondrej Filip
b36a0a799c
area {} added to config.
2000-06-02 19:55:55 +00:00
Ondrej Filip
3fa5722def
First option into config added. :-)
2000-06-02 15:05:41 +00:00
Ondrej Filip
ece612e128
sh interface "iface" dumpped all.
2000-06-02 11:24:38 +00:00
Ondrej Filip
3488634cba
Handle "show ospf *" even if protocol is down.
2000-06-02 10:21:02 +00:00
Ondrej Filip
a489f0ce8b
Silly bug in sh interface. Now I test ALL interfaces. :-)
2000-06-02 09:57:22 +00:00
Ondrej Filip
c4f0f01408
Added show ospf interface.
...
show ospf neighbors now knows "<interface>".
2000-06-01 17:52:21 +00:00
Ondrej Filip
4ab4e9778f
show ospf implemented.
2000-06-01 16:26:59 +00:00
Ondrej Filip
a783e259d8
Cisco-like "show ospf neighbors" implemented.
2000-06-01 15:53:06 +00:00
Martin Mares
23df5e4cf3
Print route tag in hexadecimal and omit it if it's zero.
2000-06-01 13:00:39 +00:00
Ondrej Filip
df968040f6
Print tag unsigned rather then signed.
2000-06-01 12:17:08 +00:00
Ondrej Filip
d1660fd3f3
Sort cleanup in aging.
2000-05-31 14:21:56 +00:00
Ondrej Filip
70a383198a
LSArt origination and routing table calculation is now not doing so
...
often. Instead of calculation I just schedule it latter.
2000-05-31 14:06:33 +00:00
Ondrej Filip
a7a3a0a383
Added tagging of external LSA.
2000-05-31 12:07:09 +00:00
Martin Mares
5919c66e8f
Route attributes for OSPF.
2000-05-30 21:25:32 +00:00
Ondrej Filip
1b128de364
Better shutdown.
2000-05-30 16:13:59 +00:00
Ondrej Filip
04c3a83c60
Better inicialisation.
2000-05-30 11:07:31 +00:00
Ondrej Filip
5970fcda8c
Some exchange between init() and start().
2000-05-30 10:53:48 +00:00
Ondrej Filip
73232f6b18
Better rt dumping.
2000-05-30 10:36:57 +00:00
Ondrej Filip
05dbc97b13
Bug in rt_notify.
2000-05-30 10:20:14 +00:00
Ondrej Filip
f7c0525edc
get_route_info() added.
2000-05-28 19:16:04 +00:00
Ondrej Filip
4414d9a57a
get_status() implemented.
2000-05-28 18:49:33 +00:00
Ondrej Filip
d5f029df48
Just added some debug().
2000-05-28 18:34:20 +00:00
Ondrej Filip
4bd28fb68e
Better shutdown. (Flush my own router LSA and send 1WAY to every neighbor.)
...
Ext LSA originating and flushing added.
2000-05-27 15:36:02 +00:00
Ondrej Filip
e8085abaa7
Originating of external LSA.
2000-05-27 14:17:35 +00:00
Ondrej Filip
2d5b999236
Import control implemented.
2000-05-26 19:04:18 +00:00
Ondrej Filip
00c1f79a79
rte_same implemented.
2000-05-17 20:01:25 +00:00
Ondrej Filip
bbd76b421a
rte_better implemented.
2000-05-17 19:27:51 +00:00
Ondrej Filip
aa1e082c67
Calculation of external routes.
2000-05-10 10:47:17 +00:00
Ondrej Filip
432996f40f
Better dumping.
2000-05-09 12:03:57 +00:00
Martin Mares
9a220cabbc
#ifdef out lots of debugging information.
...
The long resource/routing table dump printed upon startup is gone now
and if you wish to see it, just send bird SIGUSR1 or use the `debug'
commands.
2000-05-04 20:52:28 +00:00
Ondrej Filip
c6c5626436
Sync with nest's rt table and some minor improvements.
2000-04-30 11:31:05 +00:00
Ondrej Filip
79f036ef6e
Dump changes.
2000-04-18 19:22:49 +00:00
Ondrej Filip
8496b2e41a
Minor change in area list. Now I use MJ's lists.
2000-04-03 22:31:07 +00:00
Ondrej Filip
de30342f97
Router LSA & area adding.
2000-02-25 19:19:41 +00:00
Ondrej Filip
b786df7035
Memory allocation in ospf_area changed.
2000-02-25 14:26:54 +00:00
Ondrej Filip
ab56f6b16f
Area work and router LSA starts when interface goes up.
2000-02-24 00:26:10 +00:00
Ondrej Filip
c7b915d68c
Malloc() changed to cfg_alloc().
2000-02-08 19:12:42 +00:00
Martin Mares
d272fe22dd
Separated `official protocol names' used in status dumps from name templates
...
used for automatic generation of instance names.
protocol->name is the official name
protocol->template is the name template (usually "name%d"),
should be all lowercase.
Updated all protocols to define the templates, checked that their configuration
grammar includes proto_name which generates the name and interns it in the
symbol table.
2000-01-17 11:52:50 +00:00
Ondrej Filip
1508757478
Preparing for building LS databaze. Huh, why is it so complicated? :-(
...
Adding definition of some constants.
2000-01-05 00:03:47 +00:00
Ondrej Filip
163b207346
Inicialisation of Topology Graph (TG).
1999-11-30 10:35:26 +00:00
Ondrej Filip
4364b47e48
ospf.c and ospc.h splitted into various files.
1999-11-17 15:50:41 +00:00
Ondrej Filip
2af2636a69
Another bugfix. (In EXCHANGE state.)
1999-11-17 13:28:51 +00:00
Ondrej Filip
e17baa3108
Fixed bug receiving dbdes packets in EXSTART state.
1999-11-17 13:15:01 +00:00
Ondrej Filip
986e34131d
Sending DBDES packet in EXSTART done.
1999-11-10 16:06:12 +00:00
Martin Mares
6ba36f06ae
Added LSA hashing table (parts of code stolen from rt-fib.c, but
...
heavily simplified since we don't need asynchronous walking).
1999-11-10 12:27:01 +00:00
Ondrej Filip
ecc3cf6f50
Working on db des receiving.
...
Preparing for building LDA database.
1999-11-03 12:59:38 +00:00
Ondrej Filip
c2250f91c7
Minor changes and bug fixes. Preparing for Exchange and higher states.
1999-10-19 16:13:06 +00:00
Ondrej Filip
96f1b8ba10
Huge changes. Neighbor and interface state machines rewritten.
...
It should be cleaner now, I'm preparing for file splitting.
Maybe I added some minor bugs. :-(
1999-10-18 21:48:51 +00:00
Ondrej Filip
2c1d1cc765
DD packet receiving in ExStart.
1999-08-25 18:44:50 +00:00
Ondrej Filip
1af664158d
A structure for receiving DD seq packets added.
1999-08-24 18:32:26 +00:00
Ondrej Filip
e3121112ab
Preparing to send DD packets.
1999-08-24 14:42:51 +00:00