dellemc.enterprise_sonic.sonic_ospfv2 模块 – 在 SONiC 上配置全局 OSPFv2 协议设置。
注意
此模块是 dellemc.enterprise_sonic 集合 (版本 2.5.1) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install dellemc.enterprise_sonic
。
要在 playbook 中使用它,请指定: dellemc.enterprise_sonic.sonic_ospfv2
。
dellemc.enterprise_sonic 2.5.0 中的新增功能
概要
此模块提供对运行 SONiC 的设备上的全局 OSPFv2 参数的配置管理。
在 VRF 中配置 OSPF 之前,请先配置 VRF 实例。
参数
参数 |
注释 |
---|---|
指定 OSPFv2 相关的配置。 非被动接口 和 被动接口 是互斥的。 当 default_passive=True 时,无法配置 passive_interfaces。 当 default_passive=False 时,无法配置 non_passive_interfaces。 |
|
配置路由器 ABR 类型。
选项
|
|
配置接口自动成本参考带宽 (1 到 4294967)。 |
|
配置重新分配路由的度量值 (0 到 16777214)。 |
|
抑制所有接口上的 OSPFv2 路由更新。 选项
|
|
配置路由管理距离。 |
|
所有类型路由的距离值 (1 到 255)。 |
|
外部路由的距离值 (1 到 255)。 |
|
区域间路由的距离值 (1 到 255)。 |
|
区域内路由的距离值 (1 到 255)。 |
|
OSPF 非停止转发 (NSF),也称为 OSPF Graceful Restart。 |
|
启用优雅重启。 选项
|
|
宽限期的最大长度,以秒为单位 (1 到 1800)。 |
|
OSPF GR 助手。 |
|
通告路由器 ID。 |
|
启用助手支持。 选项
|
|
仅支持计划重启。 选项
|
|
启用严格的 LSA 检查。 选项
|
|
支持的宽限间隔,以秒为单位 (10 到 1800)。 |
|
启用 OSPFv2 邻接状态日志。 选项
|
|
在 OSPFv2 LSA 中启用无限度量值通告。 |
|
启用管理类型的无限度量值通告。 选项
|
|
配置外部 LSA 所有前缀最大度量值通告。 配置最大度量值 (1 到 16777215)。 |
|
配置外部 LSA 连接前缀最大度量值通告。 配置最大度量值 (1 到 16777215)。 |
|
在 OSPFv2 路由器启动时启用无限度量值通告 (5 到 86400)。 |
|
配置路由器 LSA 所有链路最大度量值通告。 配置最大度量值 (1 到 16777215)。 |
|
配置路由器 LSA 存根链路最大度量值通告。 配置最大度量值 (1 到 16777215)。 |
|
配置 ECMP 支持的多个路径的最大数量 (1 到 256)。 |
|
配置非被动接口类型。 |
|
配置接口 IPv4 地址。 |
|
第 3 层接口的全名,例如 Eth1/1。 |
|
启用不透明 LSA 功能。 选项
|
|
配置被动接口类型。 |
|
配置接口 IPv4 地址。 |
|
第 3 层接口的全名,例如 Eth1/1。 |
|
将路由重新分配到 OSPFv2 路由器。 |
|
始终启用将默认路由重新分配到 OSPF。 仅适用于 protocol=default_route。 选项
|
|
重新分配路由的度量值 (0 到 16777214)。 |
|
重新分配路由的度量类型。 选项
|
|
配置要重新分配到 OSPF 的协议类型。 单独删除 protocol 也会删除 redistribute 下的所有其他配置。
选项
|
|
用于过滤重新分配路由的路由映射。 预先配置路由映射。 |
|
配置 LSA 刷新间隔,以秒为单位 (10 到 1800)。 |
|
启用 OSPFv2 RFC 兼容性。 选项
|
|
配置 OSPFv2 路由器标识符 (A.B.C.D)。 |
|
配置路由器计时器。 |
|
LSA 最小到达计时器,以毫秒为单位 (0 到 600000)。 |
|
LSA 传输之间的延迟,以毫秒为单位 (0 到 5000)。 |
|
OSPFv2 SPF 计时器。 delay_time、initial_hold_time 和 maximum_hold_time 必须一起使用。 |
|
SPF 延迟时间,以毫秒为单位 (0 到 600000)。 |
|
SPF 初始保持时间,以毫秒为单位 (0 到 600000)。 |
|
SPF 最大保持时间,以毫秒为单位 (0 到 600000)。 |
|
指定 VRF 名称。 默认值: |
|
指定每次写入最多服务多少个接口 (1 到 100) |
|
指定要在设备上配置的 OSPFv2 进程上执行的操作。 如果选择合并 (merged),输入配置将与设备上现有的 OSPFv2 配置合并。 如果选择删除 (deleted),将从设备中移除现有的 OSPFv2 配置。 如果选择覆盖 (overridden),将删除所有现有的 OSPFv2 配置,并安装指定的输入配置。 如果选择替换 (replaced),设备上现有的 OSPFv2 配置将被剧本中为每个 VRF 组配置的配置替换。 选项
|
注释
注意
支持
check_mode
。
示例
# Using deleted
# Before state:
# -------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# default-metric 100
# max-metric router-lsa external-lsa all 2
# passive-interface default
# timers throttle spf 50 20 10
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# ospf router-id 20.20.20.20
# distance 30
# distance ospf external 20
# refresh timer 300
# write-multiplier 20
# maximum-paths 200
# passive-interface Eth1/2 3.3.3.3
# passive-interface Eth1/3
#!
#sonic#
#sonic# show running-configuration vrf Vrf_1
#!
#ip vrf Vrf_1
#sonic# show running-configuration ip prefix-list
#!
#ip prefix-list PRF_LIST seq 1 permit 1.1.1.1/24
#ip prefix-list PRF_LIST2 seq 1 permit 1.1.1.1/24
#sonic# show running-configuration route-map
#!
#route-map RMAP permit 1
#sonic#
- name: Delete the OSPFv2 configurations
sonic_ospf:
config:
- vrf_name: 'default'
router_id: "20.20.20.20"
distance:
external: 20
default_passive: false
maximum_paths: 200
passive_interfaces:
interfaces:
- interface: 'Eth1/3'
redistribute:
- protocol: "bgp"
metric: 15
metric_type: 2
route_map: "RMAP"
refresh_timer: 300
- vrf_name: "Vrf_1"
timers:
throttle_spf:
delay_time: 50
initial_hold_time: 20
maximum_hold_time: 10
default_metric: 100
max_metric:
external_lsa_all: 2
non_passive_interfaces:
interfaces:
- interface: "Eth1/2"
addresses:
- "2.2.2.2"
state: deleted
# After state:
# ------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# passive-interface default
# timers throttle lsa all 300
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# distance 30
# write-multiplier 20
# passive-interface Eth1/2 3.3.3.3
#!
#sonic#
# Using deleted
# Before state:
# -------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# passive-interface default
# timers throttle lsa all 300
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# distance 30
# write-multiplier 20
# passive-interface Eth1/2 3.3.3.3
#!
#sonic#
#sonic# show running-configuration vrf Vrf_1
#!
#ip vrf Vrf_1
#sonic# show running-configuration ip prefix-list
#!
#ip prefix-list PRF_LIST seq 1 permit 1.1.1.1/24
#ip prefix-list PRF_LIST2 seq 1 permit 1.1.1.1/24
#sonic# show running-configuration route-map
#!
#route-map RMAP permit 1
#sonic#
- name: Delete the OSPFv2 configurations
sonic_ospf:
config:
- vrf_name: "Vrf_1"
state: deleted
# After state:
# ------------
#
#sonic# show running-configuration ospf
#router ospf
# distance 30
# write-multiplier 20
# passive-interface Eth1/2 3.3.3.3
#!
#sonic#
# Using merged
# Before state:
# -------------
#
# sonic# show running-configuration ospf
# (No ospf configuration present)
#sonic# show running-configuration vrf Vrf_1
#!
#ip vrf Vrf_1
#sonic# show running-configuration ip prefix-list
#!
#ip prefix-list PRF_LIST seq 1 permit 1.1.1.1/24
#ip prefix-list PRF_LIST2 seq 1 permit 1.1.1.1/24
#sonic# show running-configuration route-map
#!
#route-map RMAP permit 1
#sonic#
- name: Add the OSPFv2 configurations
sonic_ospf:
config:
- vrf_name: 'default'
router_id: "10.10.10.10"
distance:
external: 20
auto_cost_reference_bandwidth: 100
- vrf_name: "Vrf_1"
timers:
throttle_lsa_all: 300
throttle_spf:
delay_time: 10
initial_hold_time: 20
maximum_hold_time: 50
redistribute:
- protocol: "bgp"
metric: 15
metric_type: 2
route_map: "RMAP"
default_passive: true
non_passive_interfaces:
interfaces:
- interface: "Eth1/1"
addresses:
- "2.2.2.2"
state: merged
# After state:
# ------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# passive-interface default
# timers throttle spf 10 20 50
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
#!
#router ospf
# auto-cost reference-bandwidth 100
# ospf router-id 10.10.10.10
# distance ospf external 20
#!
#sonic#
# Using merged
# Before state:
# -------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# passive-interface default
# timers throttle spf 10 20 50
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
#!
#router ospf
# ospf router-id 10.10.10.10
# distance ospf external 20
#!
#sonic#
#sonic# show running-configuration vrf Vrf_1
#!
#ip vrf Vrf_1
#sonic# show running-configuration ip prefix-list
#!
#ip prefix-list PRF_LIST seq 1 permit 1.1.1.1/24
#ip prefix-list PRF_LIST2 seq 1 permit 1.1.1.1/24
#sonic# show running-configuration route-map
#!
#route-map RMAP permit 1
#sonic#
- name: Add the OSPFv2 configurations
sonic_ospf:
config:
- vrf_name: 'default'
write_multiplier: 20
router_id: "20.20.20.20"
distance:
all: 30
default_passive: false
graceful_restart:
enable: true
grace_period: 100
helper:
enable: true
planned_only: true
advertise_router_id:
- '1.1.1.1'
- '2.2.2.2'
passive_interfaces:
interfaces:
- interface: 'Eth1/2'
addresses:
- '3.3.3.3'
- interface: 'Eth1/3'
log_adjacency_changes: 'detail'
- vrf_name: "Vrf_1"
timers:
throttle_spf:
delay_time: 50
initial_hold_time: 20
maximum_hold_time: 10
max_metric:
external_lsa_all: 30
log_adjacency_changes: 'brief'
default_passive: true
non_passive_interfaces:
interfaces:
- interface: "Eth1/2"
addresses:
- "2.2.2.2"
state: merged
# After state:
# ------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# log-adjacency-changes
# max-metric router-lsa external-lsa all 30
# passive-interface default
# timers throttle spf 50 20 10
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# ospf router-id 20.20.20.20
# distance 30
# distance ospf external 20
# log-adjacency-changes detail
# graceful-restart grace-period 100
# graceful-restart helper enable
# graceful-restart helper planned-only
# graceful-restart helper enable 1.1.1.1
# graceful-restart helper enable 2.2.2.2
# write-multiplier 20
# passive-interface Eth1/2 3.3.3.3
# passive-interface Eth1/3
#!
#sonic#
# Using replaced
# Before state:
# -------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# max-metric router-lsa external-lsa all 2
# passive-interface default
# timers throttle spf 50 20 10
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# ospf router-id 20.20.20.20
# distance 30
# distance ospf external 20
# write-multiplier 20
# passive-interface Eth1/2 3.3.3.3
# passive-interface Eth1/3
#!
#sonic#
#sonic# show running-configuration vrf Vrf_1
#!
#ip vrf Vrf_1
#sonic# show running-configuration ip prefix-list
#!
#ip prefix-list PRF_LIST seq 1 permit 1.1.1.1/24
#ip prefix-list PRF_LIST2 seq 1 permit 1.1.1.1/24
#sonic# show running-configuration route-map
#!
#route-map RMAP permit 1
#route-map RMAP2 permit 2
#sonic#
- name: Replace the OSPFv2 vrf default configurations
sonic_ospf:
config:
- vrf_name: 'default'
router_id: "20.20.20.20"
redistribute:
- protocol: "connected"
metric: 15
metric_type: 2
route_map: "RMAP2"
- protocol: "default_route"
always: true
route_map: "RMAP"
distance:
all: 20
abr_type: cisco
opaque_lsa_capability: true
state: replaced
# After state:
# ------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# max-metric router-lsa external-lsa all 2
# passive-interface default
# timers throttle spf 50 20 10
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# capability opaque
# ospf router-id 20.20.20.20
# default-information originate always route-map RMAP
# distance 20
# ospf abr-type cisco
# redistribute connected metric 15 metric-type 2 route-map RMAP2
#!
# Using overridden
# Before state:
# -------------
#
#sonic# show running-configuration ospf
#router ospf vrf Vrf_1
# max-metric router-lsa external-lsa all 2
# passive-interface default
# timers throttle spf 50 20 10
# timers throttle lsa all 300
# redistribute bgp metric 15 metric-type 2 route-map RMAP
# no passive-interface Eth1/1 2.2.2.2
# no passive-interface Eth1/2 2.2.2.2
#!
#router ospf
# ospf router-id 20.20.20.20
# distance 30
# distance ospf external 20
# write-multiplier 20
# passive-interface Eth1/2 3.3.3.3
# passive-interface Eth1/3
#!
#sonic#
#sonic# show running-configuration vrf Vrf_1
#!
#ip vrf Vrf_1
#sonic# show running-configuration ip prefix-list
#!
#ip prefix-list PRF_LIST seq 1 permit 1.1.1.1/24
#ip prefix-list PRF_LIST2 seq 1 permit 1.1.1.1/24
#sonic# show running-configuration route-map
#!
#route-map RMAP permit 1
#route-map RMAP2 permit 2
#sonic#
- name: Override the OSPFv2 configurations
sonic_ospf:
config:
- vrf_name: 'default'
router_id: "20.20.20.20"
redistribute:
- protocol: "connected"
metric: 15
metric_type: 2
route_map: "RMAP2"
distance:
all: 20
rfc1583_compatible: true
state: overridden
# After state:
# ------------
#
#sonic# show running-configuration ospf
#router ospf
# compatible rfc1583
# ospf router-id 20.20.20.20
# distance 20
# redistribute connected metric 15 metric-type 2 route-map RMAP2
#!
返回值
常用返回值已在 此处 记录,以下是此模块特有的字段:
键 |
描述 |
---|---|
模块调用后的最终配置。 返回:发生更改时 示例: |
|
生成的模块调用配置。 返回:当使用 示例: |
|
模块调用前的配置。 返回:始终返回 示例: |
|
推送到远程设备的命令集。 返回:始终返回 示例: |