Manual:Routing/OSPF
Summary
MikroTik RouterOS implements OSPF Version 2 (RFC 2328). The OSPF protocol is the link-state protocol that takes care of the routes in the dynamic network structure that can employ different paths to its subnetworks. It always chooses shortest path to the subnetwork first.
General
Sub-menu: /routing ospf
Properties
Property | Description |
---|---|
distribute-default (never | if-installed-as-type-1 | if-installed-as-type-2 | always-as-type-1 | always-as-type-2; Default: never) | specifies how to distribute default route. Should be used for ABR (Area Border router) or ASBR (Autonomous System boundary router)
|
metric-bgp (integer; Default: 20) | the cost of the routes learned from BGP protocol |
metric-connected (integer; Default: 20) | the cost of the routes to directly connected networks |
metric-default (integer; Default: 1) | the cost of the default route |
metric-rip (integer; Default: 20) | the cost of the routes learned from RIP protocol |
metric-static (integer; Default: 20) | the cost of the static routes |
redistribute-bgp (as-type-1 | as-type-2 | no; Default: no) | redistribute all routes learned by the BGP protocol |
redistribute-connected (as-type-1 | as-type-2 | no; Default: no) | redistribute all connected routes, i.e., routes to directly reachable networks |
redistribute-rip (as-type-1 | as-type-2 | no; Default: no) | redistribute all routes learned by the RIP protocol |
redistribute-static (as-type-1 | as-type-2 | no; Default: no) | if enabled, the router will redistribute the information about static routes added to its routing database, i.e., routes that have been created using the '/ip route add' command on the router |
router-id (IP address; Default: 0.0.0.0) | the OSPF Router ID. If not specified, OSPF use one of router's IP addresses. |
Notes
OSPF protocol supports two types of metrics:
- type1 - external metrics are expressed in the same units as OSPF interface cost. In other words the router expects the cost of a link to a network which is external to AS to be the same order of magnitude as the cost of the internal links.
- type2 - external metrics are an order of magnitude larger; any type2 metric is considered greater than the cost of any path internal to the AS. Use of type2 external metric assumes that routing between AS is the major cost of routing a packet, and eliminates the need conversion of external costs to internal link state metrics.
Monitor
Command /routing ospf monitor
will display current OSPF status.
Available read only properties:
Property | Description |
---|---|
state (down | running) | |
router-id (IP address) | |
dijkstras (integer) | |
db-exchanges (integer) | |
external-imports (integer) |
Area
Sub-menu: /routing ospf area
Description
OSPF allows collections of routers to be grouped together. Such a group is called an area. Each area runs a separate copy of the basic link-state routing algorithm. This means that each area has its own link-state database and corresponding shortest path tree.
The structure of an area is invisible from other areas. This isolation of knowledge makes the protocol more scalable if multiple areas are used; routing table calculation takes less CPU resources and routing traffic is reduced.
However, multi-area setups create additional complexity. It is not recommended separate areas with fewer than 50 routers. The maximum number of routers in one area is mostly dependent on CPU power you have for routing table calculation.
Properties
Property | Description |
---|---|
area-id (IP address; Default: 0.0.0.0) | OSPF area identifier. An area with area-id=0.0.0.0 (the backbone) must always be present. The backbone always contains all area border routers. The backbone is responsible for distributing routing information between non-backbone areas. The backbone must be contiguous, i.e. there must be no disconnected segments. However, area border routers do not need to be physically connected to the backbone - connection to it may be simulated using a virtual link. |
default-cost (integer; Default: 1) | specifies the cost for the default route originated by this stub area ABR. Applicable only for stub areas on ABRs |
inject-summary-lsas (yes | no; Default: yes) | specifies whether to flood summary LSAs in this stub area. Applicable only for stub areas on ABRs |
name (string; Default: ) | the name of the area |
translator-role (integer; Default: ) | lalala |
type (default | nssa | stub; Default: default) | area type |
Status
Area Range
Sub-menu: /routing ospf area range
Description
Prefix ranges are used to aggregate routing information on area boundaries. By default, ABR creates a summary LSA for each route in specific area, and advertises it in adjacent areas. Using 'ranges' allows to create only one summary LSA for multiple routes and send only single advertisement into adjacent areas, or to suppress advertisements altogether. If a range is configured as 'advertise=yes', a single summary LSA is advertised for each range if there are any routes under the range is the specific area. Else ('advertise=no') no summary LSAs area created and advertised outside area boundaries at all.
Properties
Property | Description |
---|---|
advertise (yes | no; Default: yes) | whether to create summary LSA and advertise it to adjacent areas |
area (string; Default: ) | the OSPF area associated with this range |
cost (integer | default; Default: default) | the cost of the summary LSA this range will create
|
range (IP prefix; Default: ) | the network prefix of this range |
Note
For an active range (i.e. one that has at least one OSPF route from the specified area falling under it), 'unreachable' route is created and installed in the routing table.
Network
Sub-menu: /routing ospf network
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
Interface
Sub-menu: /routing ospf interface
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
NBMA Neighbor
Sub-menu: /routing ospf nbma-neighbor
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
Virtual Link
Sub-menu: /routing ospf virtual-link
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
LSA
Sub-menu: /routing ospf lsa
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
Neighbor
Sub-menu: /routing ospf Neighbor
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
OSPF Router
Sub-menu: /routing ospf ospf-router
Property | Description |
---|---|
lala (integer; Default: ) | lalala |
Route
Sub-menu: /routing ospf route
Property | Description |
---|---|
lala (integer; Default: ) | lalala |