OSPFD(8)                OpenBSD System Manager's Manual               OSPFD(8)

NAME
     ospfd - Open Shortest Path First daemon

SYNOPSIS
     ospfd [-dnv] [-D macro=value] [-f file]

DESCRIPTION
     ospfd is an Open Shortest Path First (OSPF) daemon which manages routing
     tables.  This implementation supports OSPF version 2, thus it is only ca-
     pable of maintaining IPv4 routing tables.

     OSPF is an interior gateway protocol designed to supersede RIP.  The OSPF
     daemon maintains a Link State Database (LSDB) consisting of routers and
     networks.

     Dijkstra's shortest path first algorithm is used to compute the Route In-
     formation Base using the LSDB as input.  The Forwarding Information Base
     a.k.a. the kernel route table is updated with information from the RIB.

     OSPF routers communicate via two multicast groups: 224.0.0.5 all Shortest
     Path First routers and 224.0.0.6 all Designated Routers.  The IP protocol
     number 89 is reserved for OSPF, furthermore OSPF packets omit the use of
     TCP and UDP.

     OSPF has several advantages over RIP.  For example every router has a
     complete network topology.  Response to changes in the network are
     faster.  Furthermore fail detection is much improved.

     All routers in an OSPF network spend most of their time keeping each oth-
     ers LSDBs in sync.  All routers must have the same information in the LS-
     DB at all times.  Every time the LSDB is updated the RIB is updated; if
     needed the FIB is also updated.

     OSPF aware routers discover each other via OSPF hello packets.

     In a multiaccess network such as Ethernet it is unfeasible for all
     routers to synchronize with all other routers in the network.  In such
     networks a Designated Router (DR) and a Backup Designated Router (BDR) is
     elected.  The DR's responsibility is to synchronize with all routers; the
     BDR will not do much until the DR fails.  The first router in a network
     is automatically elected DR, the second router BDR.  All routers have a
     FULL adjacency with the DR and the BDR.  A router not elected either DR
     or BDR will have 2-WAY adjacency with all routers but the DR and BDR.
     Routers that form 2-WAY adjacency recognize that they know each other.
     In case a DR or BDR should fail another router is elected and all routers
     change state on the newly elected router and synchronize to it.

     When routers are connected via point to point links, the DR and BDR elec-
     tion is skipped since only two routers are connected.

     To limit the impact changes in the network have on the LSDB it is possi-
     ble to segment an OSPF network into areas.  Area 0.0.0.0 a.k.a. the back-
     bone area must always be present.  Routers can be configured as Area Bor-
     der Router (ABR), being part of multiple areas.  Every area must have di-
     rect access to the backbone area.  ABRs not directly connected to the
     backbone area need to establish a virtual link to a router in the back-
     bone area.  Virtual links are currently not available in ospfd.

     AS Border Routers (ASBR) are connected to an OSPF network and other ex-
     ternal networks, BGP, RIP, or statically routed.

     ospfd is usually started at boot time, and can be enabled by setting the
     following in /etc/rc.conf.local:

           ospfd_flags=""

     See rc(8) and rc.conf(8) for more information on the boot process and en-
     abling daemons.

     A running ospfd can be controlled with the ospfctl(8) utility.

     The options are as follows:

     -D macro=value
             Define macro to be set to value on the command line.  Overrides
             the definition of macro in the configuration file.

     -d      Do not daemonize.  If this option is specified, ospfd will run in
             the foreground and log to stderr.

     -f file
             Specify an alternative configuration file.

     -n      Configtest mode.  Only check the configuration file for validity.

     -v      Produce more verbose output.

FILES
     /etc/ospfd.conf        Default ospfd configuration file.
     /var/run/ospfd.sock    Unix-domain socket used for communication with
                            ospfctl(8).

SEE ALSO
     ospfd.conf(5), ospfctl(8)

     OSPF Version 2, RFC 2328, April 1998.

     OSPF Stub Router Advertisement, RFC 3137, June 2001.

HISTORY
     The ospfd program first appeared in OpenBSD 3.7.

OpenBSD 4.4                    October 25, 2007                              2
