junipernetworks.junos.junos_ospf_interfaces 模块 – OSPF 接口资源模块。
注意
此模块是 junipernetworks.junos 集合(版本 9.1.0)的一部分。
如果您使用的是 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install junipernetworks.junos
。您需要进一步的要求才能使用此模块,请参阅 要求 以了解详细信息。
要在 playbook 中使用它,请指定:junipernetworks.junos.junos_ospf_interfaces
。
junipernetworks.junos 1.3.0 中的新功能
概要
此模块管理运行 Juniper JUNOS 的设备上的接口的 OSPF(v2/v3) 配置。
要求
执行此模块的主机需要满足以下要求。
ncclient (>=v0.6.4)
xmltodict (>=0.12.0)
参数
参数 |
注释 |
---|---|
接口的 OSPF 配置列表。 |
|
在地址族上下文中接口上的 OSPF 设置。 |
|
接口上 OSPF 设置的地址族标识符 (AFI)。 选项
|
|
OSPF 进程的接口配置。 |
|
指定区域 ID |
|
指定区域 ID。 |
|
指定身份验证类型 |
|
指定基于 md5 的身份验证。 |
|
指定 md5 密钥 ID |
|
指定密钥值 |
|
指定密钥传输的开始时间 |
|
指定身份验证的密码。 |
|
指定基于带宽的指标列表 |
|
应用指标的带宽。 选项
|
|
指定指标 |
|
死亡间隔(秒)。 |
|
接口用作按需电路。 选项
|
|
启用泛洪减少。 选项
|
|
Hello 间隔(秒)。 |
|
指定接口类型 选项
|
|
IPSec 安全关联名称 |
|
应用于接口的指标。 |
|
最大 OSPF 数据包大小 |
|
不为该接口通告邻接段。 选项
|
|
不符合从受保护接口备份流量的条件。 选项
|
|
不符合从受保护接口备份远程 LFA 流量的条件。 选项
|
|
不发送接口状态更改陷阱。 选项
|
|
不通知其他协议邻居断开事件。 选项
|
|
保护接口免受链路和节点故障的影响。 选项
|
|
不运行 OSPF,但通告它。 选项
|
|
轮询间隔(秒)。 |
|
接口的优先级。 |
|
重传间隔(秒)。 |
|
将接口视为辅助接口 选项
|
|
应用于接口的流量工程指标。 |
|
传输延迟(秒)。 |
|
接口的名称/标识符。 |
|
OSPF 路由器 ID。 |
|
此选项仅在状态为“parsed”时使用。 此选项的值应是通过执行命令 show protocols ospf 从 Junos 设备收到的输出。 状态“parsed”从 |
|
配置应保留的状态。 选项
|
说明
注意
此模块要求在被管理的设备上启用 netconf 系统服务。
此模块使用连接
netconf
。请参阅Junos OS 平台选项。已针对 JunOS v18.4R1 进行测试
示例
# Using merged
#
# Before state
# ------------
#
# admin# show protocols ospf
- name: Merge Junos OSPF interfaces config
junipernetworks.junos.junos_ospf_interfaces:
config:
- name: 'ge-0/0/2.0'
address_family:
- afi: 'ipv4'
processes:
area:
area_id: '0.0.0.2'
priority: 3
metric: 5
state: merged
# After state
# -----------
#
# admin# show protocols ospf
# area 0.0.0.2 {
# interface ge-0/0/2.0 {
# metric 5;
# priority 3;
# }
# }
# Using replaced
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.2 {
# interface ge-0/0/2.0 {
# metric 5;
# priority 3;
# }
# }
- name: Replace Junos OSPF interfaces config
junipernetworks.junos.junos_ospf_interfaces:
config:
- name: 'ge-0/0/2.0'
address_family:
- afi: 'ipv4'
processes:
area:
area_id: '0.0.0.1'
priority: 6
metric: 6
state: replaced
# After state
# -----------
#
# admin# show protocols ospf
# area 0.0.0.1 {
# interface ge-0/0/2.0 {
# metric 6;
# priority 6;
# }
# }
# Using overridden
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.3 {
# interface ge-0/0/3.0 {
# metric 5;
# priority 3;
# }
# }
# area 0.0.0.2 {
# interface ge-0/0/2.0 {
# metric 5;
# priority 3;
# }
# }
- name: Override Junos OSPF interfaces config
junipernetworks.junos.junos_ospf_interfaces:
config:
- name: 'ge-0/0/1.0'
address_family:
- afi: 'ipv4'
processes:
area:
area_id: '0.0.0.1'
priority: 3
metric: 5
state: overridden
# After state
# -----------
#
# admin# show protocols ospf
# area 0.0.0.1 {
# interface ge-0/0/1.0 {
# metric 5;
# priority 3;
# }
# }
#
# Using deleted
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.1 {
# interface ge-0/0/1.0 {
# metric 5;
# priority 3;
# }
# }
- name: Delete Junos OSPF interfaces config
junipernetworks.junos.junos_ospf_interfaces:
config:
- name: 'ge-0/0/1.0'
state: deleted
# After state
# -----------
#
# admin# show protocols ospf
# Using gathered
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.3 {
# interface ge-0/0/3.0 {
# metric 5;
# priority 3;
# }
# }
# area 0.0.0.2 {
# interface ge-0/0/2.0 {
# metric 5;
# priority 3;
# }
# }
- name: Gather Junos OSPF interfaces config
junipernetworks.junos.junos_ospf_interfaces:
config:
state: gathered
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
# "gathered": [
# {
# "address_family": [
# {
# "afi": "ipv4",
# "processes": {
# "area": {
# "area_id": "0.0.0.3"
# },
# "metric": 5,
# "priority": 3
# }
# }
# ],
# "name": "ge-0/0/3.0",
# },
# {
# "address_family": [
# {
# "afi": "ipv4",
# "processes": {
# "area": {
# "area_id": "0.0.0.2"
# },
# "metric": 5,
# "priority": 3
# }
# }
# ],
# "name": "ge-0/0/2.0",
# }
# ]
#
# Using rendered
#
#
- name: Render the commands for provided configuration
junipernetworks.junos.junos_ospf_interfaces:
config:
- name: 'ge-0/0/2.0'
address_family:
- afi: 'ipv4'
processes:
area:
area_id: '0.0.0.2'
priority: 3
metric: 5
state: rendered
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
#
# "rendered": "
# <nc:protocols
# xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
# <nc:ospf>
# <nc:area>
# <nc:name>0.0.0.2</nc:name>
# <nc:interface>
# <nc:name>ge-0/0/2.0</nc:name>
# <nc:priority>3</nc:priority>
# <nc:metric>5</nc:metric>
# </nc:interface>
# </nc:area>
# </nc:ospf>
# </nc:protocols>"
#
# Using parsed
# parsed.cfg
# ------------
# <?xml version="1.0" encoding="UTF-8"?>
# <rpc-reply message-id="urn:uuid:0cadb4e8-5bba-47f4-986e-72906227007f">
# <configuration changed-seconds="1590139550" changed-localtime="2020-05-22 09:25:50 UTC">
# <protocols>
# <ospf>
# <area>
# <name>0.0.0.2</name>
# <stub>
# <default-metric>200</default-metric>
# </stub>
# <interface>
# <name>ge-0/0/2.0</name>
# <metric>5</metric>
# <priority>3</priority>
# </interface>
# </area>
# </ospf>
# </protocols>
# <routing-options>
# <router-id>10.200.16.75</router-id>
# </routing-options>
# </configuration>
# </rpc-reply>
- name: Parsed the device configuration to get output commands
junipernetworks.junos.junos_ospf_interfaces:
running_config: "{{ lookup('file', './parsed.cfg') }}"
state: parsed
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
#
# "parsed": [
# {
# "address_family": [
# {
# "afi": "ipv4",
# "processes": {
# "area": {
# "area_id": "0.0.0.2"
# },
# "metric": 5,
# "priority": 3
# }
# }
# ],
# "name": "ge-0/0/2.0",
# }
# ]
#
返回值
常见返回值记录在此处,以下是此模块独有的字段
键 |
描述 |
---|---|
生成的配置模型调用。 返回: 当发生更改时 示例: |
|
模型调用之前的配置。 返回: 始终 示例: |
|
推送到远程设备的命令集。 返回: 始终 示例: |