OSPF6 Server ConfigurationΒΆ

To configure the OSPF6 server, start in config-frr-ospf6 mode and run the server vrf default command:

tnsr(config)# route dynamic ospf6
tnsr(config-frr-ospf6)# server vrf default
tnsr(config-ospf6)#

Note

OSPF6 only supports a single instance on the default VRF.

This changes into config-ospf6 mode, which contains the following commands:

area <area-id>:

Configures area-specific settings in OSPF6 Area Configuration mode.

auto-cost reference-bandwidth <bw>:

A base value, in Mbit/s, which is used when OSPF6 automatically calculates cost values. The default value is 100 which means that an interface with 100Mbit/s of bandwidth or greater will have a cost of 1, with lower bandwidth values incurring higher cost values.

All routers in the same area should use the same value, otherwise automatic cost calculations would fail to accurately represent total path costs between routers.

default-information originate [(always|metric <val>|metric-type (1|2)|route-map <map>)]:

Enables origination of a Type 5 AS-External LSA containing default route information into all areas capable of external routing.

always:

Always advertise a default route, even when a default route is not present in the local routing table.

metric <0..16777214>:

Advertise the default route as having the given metric.

metric-type (1|2):

The type of metric, either 1 or 2. See Metric Types for details about each type operates.

route-map <map>:

Apply the given route map to the outbound route advertisement.

distance [(external|inter-area|intra-area)] <dist>:

Sets an administrative distance for routes obtained via OSPF6. This can be configured globally as well as for specific types of OSPF6 routes.

external <dist>:

Sets the administrative distance for external OSPF6 routes.

inter-area <dist>:

Sets the administrative distance for OSPF6 routes between areas.

intra-area <dist>:

Sets the administrative distance for OSPF6 routes inside an area.

interface <if-name> area <area-id>:

This command defines an interface as a member of the given OSPF6 area. This is required to activate an interface for use by OSPF6.

log-adjacency-changes [detail]:

Instructs the OSPF6 daemon to log changes in neighbor adjacencies. This is useful for tracking changes to neighbor relationships, especially during initial configuration.

The optional detail parameter increases the verbosity of the resulting log messages.

See also

See Dynamic Routing Logging for information on dynamic routing logging.

ospf6 router-id <router-id>:

Sets the router ID for the OSPF6 daemon. This is typically set to an IPv4 address unique to this router, and commonly is set to a local private address.

Note

Even though OSPF6 handles IPv6 routing, router IDs are still specified using IPv4 addresses in dotted quad notation.

redistribute <route-source> [route-map <map>]:

Enables redistribution of routes from another source. Available route sources are listed in Dynamic Routing Protocol Lists.

route-map <map>:

Apply the given route map to the redistributed route advertisements.

stub-router administrative:

Administratively declares this router as a stub router, having no external connections.

timers lsa min-arrival <min>:

The minimum time allowed between advertisements by neighbors, from 0-600000, in milliseconds. Default is 1000.

timers throttle spf (delay|initial-hold|maximum-hold) <val>:

Controls timers that determine when the router will make SPF routing decisions.

delay <val>:

Minimum time after an event occurs before allowing SPF calculation. Lower values will react faster to changes, but can be less stable. Specified in milliseconds from 0-600000, with a default value of 0.

initial-hold <val>:

Lowest time allowed between SPF calculations. Specified in milliseconds from 0-600000, with a default value of 50.

maximum-hold <val>:

Highest time allowed between SPF calculations. Specified in milliseconds from 0-600000, with a default value of 5000.

SPF calculations are adaptive, and if a new event occurs which would otherwise trigger a calculation before the hold timer expires, then the hold is increased by the initial-hold value, up to the specified maximum-hold. This avoids excessive consecutive recalculations.