OSPFv3
OSPFv3 is the IPv6-capable version of OSPF that provides link-state routing for IPv6 networks, supporting VRF-aware multi-instance deployments with per-VRF router ID, BFD, and area-based hierarchical design on NX-OS. It includes configurable area types (stub, NSSA) with translator role control, address-family-specific settings for IPv6 unicast including administrative distance, default metric, and ECMP path limits. OSPFv3 interface-level configuration controls process association, area membership, cost, network type, priority, and passive interface behavior across loopback, VLAN, Ethernet, and port-channel interfaces.
Diagram
Section titled “Diagram”Classes
Section titled “Classes”routing (nxos.devices.configuration)
Section titled “routing (nxos.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ospfv3_processes | List | [ospfv3_processes] | No |
loopbacks (nxos.devices.configuration.interfaces)
Section titled “loopbacks (nxos.devices.configuration.interfaces)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ospfv3 | Class | [ospfv3] | No |
vlans (nxos.devices.configuration.interfaces)
Section titled “vlans (nxos.devices.configuration.interfaces)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ospfv3 | Class | [ospfv3] | No |
ethernets (nxos.devices.configuration.interfaces)
Section titled “ethernets (nxos.devices.configuration.interfaces)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ospfv3 | Class | [ospfv3] | No |
port_channels (nxos.devices.configuration.interfaces)
Section titled “port_channels (nxos.devices.configuration.interfaces)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ospfv3 | Class | [ospfv3] | No |
ospfv3_processes (nxos.devices.configuration.routing)
Section titled “ospfv3_processes (nxos.devices.configuration.routing)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| flush_routes | Boolean | true, false | No | |
| isolate | Boolean | true, false | No | |
| shutdown | Boolean | true, false | No | |
| auto_cost_reference_bandwidth | Integer | min: 0, max: 4294967295 | No | |
| auto_cost_reference_bandwidth_unit | Choice | mbps, gbps | No | |
| router_id | String | No | ||
| bfd | Boolean | true, false | No | |
| log_adjacency_changes | Choice | none, brief, detail | No | |
| discard_route_external | Boolean | true, false | No | |
| discard_route_internal | Boolean | true, false | No | |
| name_lookup | Boolean | true, false | No | |
| passive_interface_default | Boolean | true, false | No | |
| areas | List | [areas] | No | |
| address_families | List | [address_families] | No | |
| vrfs | List | [vrfs] | No |
ospfv3 (nxos.devices.configuration.interfaces.loopbacks)
Section titled “ospfv3 (nxos.devices.configuration.interfaces.loopbacks)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| process | String | Yes | ||
| advertise_secondaries | Boolean | true, false | No | |
| area | String | No | ||
| bfd | Boolean | true, false | No | |
| cost | Integer | min: 0, max: 65535 | No | |
| dead_interval | Integer | min: 0, max: 65535 | No | |
| hello_interval | Integer | min: 1, max: 65535 | No | |
| network | Choice | none, p2p, bcast | No | |
| passive_interface | Boolean | true, false | No | |
| priority | Integer | min: 0, max: 255 | No | |
| instance_id | Integer | min: 0, max: 255 | No | |
| mtu_ignore | Boolean | true, false | No | |
| retransmit_interval | Integer | min: 1, max: 65535 | No | |
| transmit_delay | Integer | min: 1, max: 450 | No |
areas (nxos.devices.configuration.routing.ospfv3_processes)
Section titled “areas (nxos.devices.configuration.routing.ospfv3_processes)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| id | String | Yes | ||
| type | Choice | regular, stub, nssa | No | |
| redistribute | Boolean | true, false | No | |
| nssa_translate_type7 | Choice | always, candidate, never | No | |
| summary | Boolean | true, false | No | |
| nssa_translate_type7_suppress_fa | Boolean | true, false | No |
address_families (nxos.devices.configuration.routing.ospfv3_processes)
Section titled “address_families (nxos.devices.configuration.routing.ospfv3_processes)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address_family | Choice | ipv6-unicast | Yes | |
| distance | Integer | min: 1, max: 255 | No | |
| default_metric | Integer | min: 0, max: 16777214 | No | |
| default_route_nssa_abr_pbit_clear | Boolean | true, false | No | |
| maximum_paths | Integer | min: 1, max: 64 | No |
vrfs (nxos.devices.configuration.routing.ospfv3_processes)
Section titled “vrfs (nxos.devices.configuration.routing.ospfv3_processes)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| vrf | String | Yes | ||
| shutdown | Boolean | true, false | No | |
| auto_cost_reference_bandwidth | Integer | min: 0, max: 4294967295 | No | |
| auto_cost_reference_bandwidth_unit | Choice | mbps, gbps | No | |
| router_id | String | No | ||
| bfd | Boolean | true, false | No | |
| log_adjacency_changes | Choice | none, brief, detail | No | |
| discard_route_external | Boolean | true, false | No | |
| discard_route_internal | Boolean | true, false | No | |
| name_lookup | Boolean | true, false | No | |
| passive_interface_default | Boolean | true, false | No | |
| areas | List | [areas] | No | |
| address_families | List | [address_families] | No |
Examples
Section titled “Examples”Example 1: Basic OSPFv3 underlay for IPv6 fabric routing
nxos: devices: - name: LEAF1 configuration: routing: ospfv3_processes: - name: "1" router_id: 10.1.100.3 bfd: true log_adjacency_changes: detail areas: - id: 0.0.0.0 interfaces: loopbacks: - id: 0 ospfv3: process: "1" area: 0.0.0.0 ethernets: - id: 1/1 ospfv3: process: "1" area: 0.0.0.0 network: p2p - id: 1/2 ospfv3: process: "1" area: 0.0.0.0 network: p2pExample 2: OSPFv3 with address-family settings, NSSA area, and tuned timers
nxos: devices: - name: BORDER-LEAF1 configuration: routing: ospfv3_processes: - name: "1" router_id: 10.1.100.3 log_adjacency_changes: brief auto_cost_reference_bandwidth: 100 auto_cost_reference_bandwidth_unit: gbps address_families: - address_family: ipv6-unicast maximum_paths: 8 default_metric: 100 areas: - id: 0.0.0.0 - id: 0.0.0.10 type: nssa nssa_translate_type7: always interfaces: ethernets: - id: 1/1 ospfv3: process: "1" area: 0.0.0.0 network: p2p hello_interval: 3 dead_interval: 12 - id: 1/10 ospfv3: process: "1" area: 0.0.0.10 cost: 100Example 3: OSPFv3 in a tenant VRF with passive interfaces
nxos: devices: - name: LEAF2 configuration: routing: ospfv3_processes: - name: "1" router_id: 10.1.100.4 areas: - id: 0.0.0.0 - name: "100" vrfs: - vrf: BLUE router_id: 10.1.100.4 passive_interface_default: true areas: - id: 0.0.0.0 address_families: - address_family: ipv6-unicast maximum_paths: 4 interfaces: vlans: - id: 1010 vrf: BLUE ospfv3: process: "100" area: 0.0.0.0 passive_interface: disabled