junipernetworks.junos.junos_bgp_global 模块 – 管理运行 Juniper JUNOS 设备的 BGP 全局配置。

注意

此模块是 junipernetworks.junos 集合(版本 9.1.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install junipernetworks.junos。您需要满足其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定:junipernetworks.junos.junos_bgp_global

junipernetworks.junos 1.3.0 中的新增功能

概要

  • 此模块管理运行 Juniper JUNOS 设备的全局 BGP 配置。

要求

在执行此模块的主机上需要以下要求。

  • ncclient (>=v0.6.4)

  • xmltodict (>=0.12.0)

参数

参数

注释

config

字典

BGP 进程配置的列表。

accept_remote_nexthop

布尔值

允许导入策略指定非直接连接的下一跳。

选择

  • false

  • true

add_path_display_ipv4_address

布尔值

以 IPv4 地址格式显示 add-path 路径 ID。

选择

  • false

  • true

advertise_bgp_static

字典

通告 BGP 静态路由。

policy

字符串

指定静态路由通告策略。

set

布尔值

设置通告 BGP 静态路由。

选择

  • false

  • true

advertise_external

字典

通告最佳外部路由。

conditional

布尔值

路由匹配到 MED 比较规则的活动路由。

选择

  • false

  • true

set

布尔值

设置通告最佳外部路由。

选择

  • false

  • true

advertise_from_main_vpn_tables

布尔值

在主实例中从 bgp.Xvpn.0 表通告 VPN 路由。

选择

  • false

  • true

advertise_inactive

布尔值

通告非活动路由。

选择

  • false

  • true

advertise_peer_as

布尔值

通告从同一自治系统接收的路由。

选择

  • false

  • true

as_number

字符串

指定自治系统编号。

asdot_notation

布尔值

启用 AS-Dot 表示法以显示真实的 4 字节 AS 编号。

选择

  • false

  • true

authentication_algorithm

字符串

指定身份验证算法名称。

选择

  • "aes-128-cmac-96"

  • "hmac-sha-1-96"

  • "md5"

authentication_key

字符串

指定 MD5 身份验证密钥。

authentication_key_chain

字符串

指定身份验证密钥链名称。

bfd_liveness_detection

字典

双向转发检测 (BFD) 选项。

authentication

字典

身份验证选项。

algorithm

字符串

指定算法名称。

选择

  • "keyed-md5"

  • "keyed-sha-1"

  • "meticulous-keyed-md5"

  • "meticulous-keyed-sha-1"

  • "simple-password"

key_chain

字符串

指定密钥链名称。

loose_check

布尔值

仅当协商身份验证时才验证身份验证。

选择

  • false

  • true

detection_time

字典

指定检测时间选项。

threshold

整数

指定触发陷阱的高检测时间(毫秒)。

holddown_interval

整数

指定将会话 UP 通知保持到客户端的时间。

minimum_interval

整数

指定最小发送和接收间隔。

minimum_receive_interval

整数

指定最小接收间隔。

multiplier

整数

指定检测时间乘数。

no_adaptation

布尔值

禁用自适应。

选择

  • false

  • true

session_mode

字符串

BFD 单跳或多跳会话模式。

选择

  • "automatic"

  • "multihop"

  • "single-hop"

transmit_interval

字典

发送间隔选项。

minimum_interval

整数

指定最小发送间隔。

threshold

整数

指定触发陷阱的高发送间隔。

version

字符串

指定 BFD 协议版本号。

选择

  • "0"

  • "1"

  • "automatic"

bgp_error_tolerance

字典

柔和地处理 BGP 格式错误的更新。

malformed_route_limit

整数

来自对等方的格式错误路由的最大数量。

malformed_update_log_interval

整数

记录格式错误更新时使用的时间。

no_malformed_route_limit

布尔值

指定无格式错误路由限制。

选择

  • false

  • true

set

布尔值

柔和地设置 BGP 格式错误的更新。

选择

  • false

  • true

bmp

字典

覆盖路由选项设置的特定设置。

monitor

布尔值

启用/禁用监控。

选择

  • false

  • true

route_monitoring

字典

控制路由监控设置。

none

布尔值

不发送路由监控消息。

选择

  • false

  • true

post_policy

布尔值

发送策略后路由监控消息。

选择

  • false

  • true

post_policy_exclude_non_eligible

布尔值

发送策略后路由监控消息,并排除未解析的路由等。

选择

  • false

  • true

post_policy_exclude_non_feasible

布尔值

发送策略前路由监控消息,并排除循环路由等。

选择

  • false

  • true

pre_policy

布尔值

发送策略前路由监控消息。

选择

  • false

  • true

cluster_id

字符串

指定集群标识符。

damping

布尔值

启用路由抖动抑制。

选择

  • false

  • true

description

字符串

指定文本描述。

disable

布尔值

禁用 BGP。

选择

  • false

  • true

egress_te

字典

使用出口对等流量工程。

backup_path

字符串

用于此对等方的“出口-TE-备份路径模板”。

set

布尔值

设置属性。

选择

  • false

  • true

egress_te_backup_paths

字典

出口-TE 对等接口故障的备份路径。

templates

列表 / 元素=字典

指定备份路径模板。

ip_forward

字典

将 IP 转发备份路径用于出口 TE。

rti_name

字符串

用作 IP 转发备份路径的路由实例。

set

布尔值

设置将 IP 转发备份路径用于出口 TE。

选择

  • false

  • true

path_name

字符串 / 必需

出口-TE 备份路径的名称。

peers

列表 / 元素=字符串

指定用作备份下一跳的 BGP 对等体的地址。

remote_nexthop

字符串

指定用作备份路径的远程下一跳地址。

egress_te_set_segment

列表 / 元素=字典

配置 BGP 对等集段。

egress_te_backup_segment_label

整数

来自静态标签池的 BGP 对等集 SID 标签值。

label

整数

来自静态标签池的备份段标签值。

name

字符串 / 必需

BGP 对等集段的名称。

egress_te_sid_stats

布尔值

创建 BGP 对等 SID 传感器。

选择

  • false

  • true

enforce_first_as

布尔值

强制邻居 AS 是 AS 路径属性中的第一个 AS (EBGP)。

选择

  • false

  • true

export

字符串

指定导出策略。

forwarding_context

字符串

指定用于数据转发和传输会话的路由实例。

graceful_restart

字典

BGP 平滑重启选项。

disable

布尔值

禁用平滑重启。

选择

  • false

  • true

dont_help_shared_fate_bfd_down

布尔值

如果 GR 重启未进行中,则遵守 BFD-Down (C=0)。

选择

  • false

  • true

forwarding_state_bit

字典

控制转发状态标志协商。

as_rr_client

布尔值

作为路由反射器客户端。

选择

  • false

  • true

from_fib

布尔值

始终使用关联的 FIB 的状态。

选择

  • false

  • true

long_lived

字典

长期平滑重启选项。

advertise_to_non_llgr_neighbor

字典

向非 LLGR 邻居通告过时路由。

omit_no_export

布尔值

设置向非 LLGR 邻居通告过时路由。

选择

  • false

  • true

set

布尔值

设置向非 LLGR 邻居通告过时路由。

选择

  • false

  • true

receiver_disable

布尔值

禁用接收器(辅助)功能。

选择

  • false

  • true

restart_time

整数

与对等体协商时使用的重启时间。

set

布尔值

设置 BGP 平滑重启选项。

选择

  • false

  • true

stale_routes_time

整数

保持过时路由的最长时间。

groups

列表 / 元素=字典

指定组的名称。

accept_remote_nexthop

布尔值

允许导入策略指定非直接连接的下一跳。

选择

  • false

  • true

add_path_display_ipv4_address

布尔值

以 IPv4 地址格式显示 add-path 路径 ID。

选择

  • false

  • true

advertise_bgp_static

字典

通告 BGP 静态路由。

policy

字符串

指定静态路由通告策略。

set

布尔值

设置通告 BGP 静态路由。

选择

  • false

  • true

advertise_external

字典

通告最佳外部路由。

conditional

布尔值

路由匹配到 MED 比较规则的活动路由。

选择

  • false

  • true

set

布尔值

设置通告最佳外部路由。

选择

  • false

  • true

advertise_inactive

布尔值

通告非活动路由。

选择

  • false

  • true

advertise_peer_as

布尔值

通告从同一自治系统接收的路由。

选择

  • false

  • true

allow

列表 / 元素=字符串

为特定网络配置对等连接。

as_override

布尔值

将邻居 AS 号替换为我们的 AS 号

选择

  • false

  • true

authentication_algorithm

字符串

指定身份验证算法名称。

选择

  • "aes-128-cmac-96"

  • "hmac-sha-1-96"

  • "md5"

authentication_key

字符串

指定 MD5 身份验证密钥。

authentication_key_chain

字符串

指定身份验证密钥链名称。

bfd_liveness_detection

字典

双向转发检测 (BFD) 选项。

authentication

字典

身份验证选项。

algorithm

字符串

指定算法名称。

选择

  • "keyed-md5"

  • "keyed-sha-1"

  • "meticulous-keyed-md5"

  • "meticulous-keyed-sha-1"

  • "simple-password"

key_chain

字符串

指定密钥链名称。

loose_check

布尔值

仅当协商身份验证时才验证身份验证。

选择

  • false

  • true

detection_time

字典

指定检测时间选项。

threshold

整数

指定触发陷阱的高检测时间(毫秒)。

holddown_interval

整数

指定将会话 UP 通知保持到客户端的时间。

minimum_interval

整数

指定最小发送和接收间隔。

minimum_receive_interval

整数

指定最小接收间隔。

multiplier

整数

指定检测时间乘数。

no_adaptation

布尔值

禁用自适应。

选择

  • false

  • true

session_mode

字符串

BFD 单跳或多跳会话模式。

选择

  • "automatic"

  • "multihop"

  • "single-hop"

transmit_interval

字典

发送间隔选项。

minimum_interval

整数

指定最小发送间隔。

threshold

整数

指定触发陷阱的高发送间隔。

version

字符串

指定 BFD 协议版本号。

选择

  • "0"

  • "1"

  • "automatic"

bgp_error_tolerance

字典

柔和地处理 BGP 格式错误的更新。

malformed_route_limit

整数

来自对等方的格式错误路由的最大数量。

malformed_update_log_interval

整数

记录格式错误更新时使用的时间。

no_malformed_route_limit

布尔值

指定无格式错误路由限制。

选择

  • false

  • true

set

布尔值

柔和地设置 BGP 格式错误的更新。

选择

  • false

  • true

bmp

字典

覆盖路由选项设置的特定设置。

monitor

布尔值

启用/禁用监控。

选择

  • false

  • true

route_monitoring

字典

控制路由监控设置。

none

布尔值

不发送路由监控消息。

选择

  • false

  • true

post_policy

布尔值

发送策略后路由监控消息。

选择

  • false

  • true

post_policy_exclude_non_eligible

布尔值

发送策略后路由监控消息,并排除未解析的路由等。

选择

  • false

  • true

post_policy_exclude_non_feasible

布尔值

发送策略前路由监控消息,并排除循环路由等。

选择

  • false

  • true

pre_policy

布尔值

发送策略前路由监控消息。

选择

  • false

  • true

cluster_id

字符串

指定集群标识符。

damping

布尔值

启用路由抖动抑制。

选择

  • false

  • true

description

字符串

指定文本描述。

egress_te

字典

使用出口对等流量工程。

backup_path

字符串

用于此对等方的“出口-TE-备份路径模板”。

set

布尔值

设置属性。

选择

  • false

  • true

enforce_first_as

布尔值

强制邻居 AS 是 AS 路径属性中的第一个 AS (EBGP)。

选择

  • false

  • true

export

字符串

指定导出策略。

forwarding_context

字符串

指定用于数据转发和传输会话的路由实例。

graceful_restart

字典

BGP 平滑重启选项。

disable

布尔值

禁用平滑重启。

选择

  • false

  • true

dont_help_shared_fate_bfd_down

布尔值

如果 GR 重启未进行中,则遵守 BFD-Down (C=0)。

选择

  • false

  • true

forwarding_state_bit

字典

控制转发状态标志协商。

as_rr_client

布尔值

作为路由反射器客户端。

选择

  • false

  • true

from_fib

布尔值

始终使用关联的 FIB 的状态。

选择

  • false

  • true

long_lived

字典

长期平滑重启选项。

advertise_to_non_llgr_neighbor

字典

向非 LLGR 邻居通告过时路由。

omit_no_export

布尔值

设置向非 LLGR 邻居通告过时路由。

选择

  • false

  • true

set

布尔值

设置向非 LLGR 邻居通告过时路由。

选择

  • false

  • true

receiver_disable

布尔值

禁用接收器(辅助)功能。

选择

  • false

  • true

restart_time

整数

与对等体协商时使用的重启时间。

set

布尔值

设置 BGP 平滑重启选项。

选择

  • false

  • true

stale_routes_time

整数

保持过时路由的最长时间。

hold_time

整数

指定与对等体协商时使用的保持时间。

idle_after_switch_over

字典

在不间断路由切换后阻止对等会话启动。

forever

布尔值

使对等体保持空闲状态,直到用户干预。

选择

  • false

  • true

timeout

整数

指定切换后启动对等体的超时值(以秒为单位)。

import

列表 / 元素=字符串

指定导入策略。

include_mp_next_hop

布尔值

在多协议更新中包含 NEXT-HOP 属性。

选择

  • false

  • true

ipsec_sa

字符串

指定 IPSec SA 名称。

keep

字符串

指定如何在路由表中保留路由。

选择

  • "all"

  • "none"

local_address

字符串

指定 BGP 会话本地端的地址。

local_as

字典

本地自治系统号。

alias

布尔值

将此 AS 视为系统 AS 的别名。

选择

  • false

  • true

as_num

字符串 / 必需

以纯数字或(asdot 表示法)格式表示的自治系统号。

loops

整数

此 AS 在 AS 路径中出现的最大次数。

no_prepend_global_as

布尔值

此 AS 在 AS 路径中出现的最大次数。

选择

  • false

  • true

private

布尔值

隐藏从此对等体学习的路径中的此本地 AS。

选择

  • false

  • true

local_interface

字符串

为 IPv6 链路本地 EBGP 对等指定本地接口。

local_preference

字符串

指定 LOCAL_PREF 路径属性的值。

log_updown

布尔值

为对等体状态转换启用日志消息。

选择

  • false

  • true

metric_out

字典

指定在 MED 中发送的路由指标。

igp

字典

跟踪 IGP 指标。

delay_med_update

布尔值

在 IGP 指标增加时延迟更新 MED。

选择

  • false

  • true

metric_offset

整数

指定 MED 的指标偏移量。

set

布尔值

设置跟踪 IGP 指标。

选择

  • false

  • true

metric_value

整数

指定指标值。

minimum_igp

字典

跟踪最小 IGP 指标。

metric_offset

整数

指定 MED 的指标偏移量。

set

布尔值

设置跟踪最小 IGP 指标。

选择

  • false

  • true

mtu_discovery

布尔值

启用 TCP 路径 MTU 发现。

选择

  • false

  • true

multihop

字典

配置 EBGP 多跳会话。

no_nexthop_change

布尔值

不要在通告中将下一跳更改为自身。

选择

  • false

  • true

set

布尔值

设置 EBGP 多跳会话。

选择

  • false

  • true

ttl

整数

会话的 TTL 值。

multipath

字典

允许在多个 BGP 路径之间进行负载共享。

disable

布尔值

禁用多路径。

选择

  • false

  • true

multiple_as

布尔值

使用从不同 AS 接收的路径。

选择

  • false

  • true

multiple_as_disable

布尔值

禁用多路径。

选择

  • false

  • true

set

布尔值

设置允许在多个 BGP 路径之间进行负载共享。

选择

  • false

  • true

name

字符串

指定组的名称

neighbors

列表 / 元素=字典

指定邻居列表。

accept_remote_nexthop

布尔值

允许导入策略指定非直接连接的下一跳。

选择

  • false

  • true

add_path_display_ipv4_address

布尔值

以 IPv4 地址格式显示 add-path 路径 ID。

选择

  • false

  • true

advertise_bgp_static

字典

通告 BGP 静态路由。

policy

字符串

指定静态路由通告策略。

set

布尔值

设置通告 BGP 静态路由。

选择

  • false

  • true

advertise_external

字典

通告最佳外部路由。

conditional

布尔值

路由匹配到 MED 比较规则的活动路由。

选择

  • false

  • true

set

布尔值

设置通告最佳外部路由。

选择

  • false

  • true

advertise_inactive

布尔值

通告非活动路由。

选择

  • false

  • true

advertise_peer_as

布尔值

通告从同一自治系统接收的路由。

选择

  • false

  • true

as_override

布尔值

将邻居 AS 号替换为我们的 AS 号

选择

  • false

  • true

authentication_algorithm

字符串

指定身份验证算法名称。

选择

  • "aes-128-cmac-96"

  • "hmac-sha-1-96"

  • "md5"

authentication_key

字符串

指定 MD5 身份验证密钥。

authentication_key_chain

字符串

指定身份验证密钥链名称。

bfd_liveness_detection

字典

双向转发检测 (BFD) 选项。

authentication

字典

身份验证选项。

algorithm

字符串

指定算法名称。

选择

  • "keyed-md5"

  • "keyed-sha-1"

  • "meticulous-keyed-md5"

  • "meticulous-keyed-sha-1"

  • "simple-password"

key_chain

字符串

指定密钥链名称。

loose_check

布尔值

仅当协商身份验证时才验证身份验证。

选择

  • false

  • true

detection_time

字典

指定检测时间选项。

threshold

整数

指定触发陷阱的高检测时间(毫秒)。

holddown_interval

整数

指定将会话 UP 通知保持到客户端的时间。

minimum_interval

整数

指定最小发送和接收间隔。

minimum_receive_interval

整数

指定最小接收间隔。

multiplier

整数

指定检测时间乘数。

no_adaptation

布尔值

禁用自适应。

选择

  • false

  • true

session_mode

字符串

BFD 单跳或多跳会话模式。

选择

  • "automatic"

  • "multihop"

  • "single-hop"

transmit_interval

字典

发送间隔选项。

minimum_interval

整数

指定最小发送间隔。

threshold

整数

指定触发陷阱的高发送间隔。

version

字符串

指定 BFD 协议版本号。

选择

  • "0"

  • "1"

  • "automatic"

bgp_error_tolerance

字典

柔和地处理 BGP 格式错误的更新。

malformed_route_limit

整数

来自对等方的格式错误路由的最大数量。

malformed_update_log_interval

整数

记录格式错误更新时使用的时间。

no_malformed_route_limit

布尔值

指定无格式错误路由限制。

选择

  • false

  • true

set

布尔值

柔和地设置 BGP 格式错误的更新。

选择

  • false

  • true

bmp

字典

覆盖路由选项设置的特定设置。

monitor

布尔值

启用/禁用监控。

选择

  • false

  • true

route_monitoring

字典

控制路由监控设置。

none

布尔值

不发送路由监控消息。

选择

  • false

  • true

post_policy

布尔值

发送策略后路由监控消息。

选择

  • false

  • true

post_policy_exclude_non_eligible

布尔值

发送策略后路由监控消息,并排除未解析的路由等。

选择

  • false

  • true

post_policy_exclude_non_feasible

布尔值

发送策略前路由监控消息,并排除循环路由等。

选择

  • false

  • true

pre_policy

布尔值

发送策略前路由监控消息。

选择

  • false

  • true

cluster_id

字符串

指定集群标识符。

damping

布尔值

启用路由抖动抑制。

选择

  • false

  • true

description

字符串

指定邻居描述。

egress_te

字典

使用出口对等流量工程。

backup_path

字符串

用于此对等方的“出口-TE-备份路径模板”。

set

布尔值

设置属性。

选择

  • false

  • true

enforce_first_as

布尔值

强制邻居 AS 是 AS 路径属性中的第一个 AS (EBGP)。

选择

  • false

  • true

export

字符串

指定导出策略。

forwarding_context

字符串

指定用于数据转发和传输会话的路由实例。

graceful_restart

字典

BGP 平滑重启选项。

disable

布尔值

禁用平滑重启。

选择

  • false

  • true

dont_help_shared_fate_bfd_down

布尔值

如果 GR 重启未进行中,则遵守 BFD-Down (C=0)。

选择

  • false

  • true

forwarding_state_bit

字典

控制转发状态标志协商。

as_rr_client

布尔值

作为路由反射器客户端。

选择

  • false

  • true

from_fib

布尔值

始终使用关联的 FIB 的状态。

选择

  • false

  • true

long_lived

字典

长期平滑重启选项。

advertise_to_non_llgr_neighbor

字典

向非 LLGR 邻居通告过时路由。

omit_no_export

布尔值

设置向非 LLGR 邻居通告过时路由。

选择

  • false

  • true

set

布尔值

设置向非 LLGR 邻居通告过时路由。

选择

  • false

  • true

receiver_disable

布尔值

禁用接收器(辅助)功能。

选择

  • false

  • true

restart_time

整数

与对等体协商时使用的重启时间。

set

布尔值

设置 BGP 平滑重启选项。

选择

  • false

  • true

stale_routes_time

整数

保持过时路由的最长时间。

hold_time

整数

指定与对等体协商时使用的保持时间。

idle_after_switch_over

字典

在不间断路由切换后阻止对等会话启动。

forever

布尔值

使对等体保持空闲状态,直到用户干预。

选择

  • false

  • true

timeout

整数

指定切换后启动对等体的超时值(以秒为单位)。

import

列表 / 元素=字符串

指定导入策略。

include_mp_next_hop

布尔值

在多协议更新中包含 NEXT-HOP 属性。

选择

  • false

  • true

ipsec_sa

字符串

指定 IPSec SA 名称。

keep

字符串

指定如何在路由表中保留路由。

选择

  • "all"

  • "none"

local_address

字符串

指定 BGP 会话本地端的地址。

local_as

字典

本地自治系统号。

alias

布尔值

将此 AS 视为系统 AS 的别名。

选择

  • false

  • true

as_num

字符串 / 必需

以纯数字或(asdot 表示法)格式表示的自治系统号。

loops

整数

此 AS 在 AS 路径中出现的最大次数。

no_prepend_global_as

布尔值

此 AS 在 AS 路径中出现的最大次数。

选择

  • false

  • true

private

布尔值

隐藏从此对等体学习的路径中的此本地 AS。

选择

  • false

  • true

local_interface

字符串

为 IPv6 链路本地 EBGP 对等指定本地接口。

local_preference

字符串

指定 LOCAL_PREF 路径属性的值。

log_updown

布尔值

为对等体状态转换启用日志消息。

选择

  • false

  • true

metric_out

字典

指定在 MED 中发送的路由指标。

igp

字典

跟踪 IGP 指标。

delay_med_update

布尔值

在 IGP 指标增加时延迟更新 MED。

选择

  • false

  • true

metric_offset

整数

指定 MED 的指标偏移量。

set

布尔值

设置跟踪 IGP 指标。

选择

  • false

  • true

metric_value

整数

指定指标值。

minimum_igp

字典

跟踪最小 IGP 指标。

metric_offset

整数

指定 MED 的指标偏移量。

set

布尔值

设置跟踪最小 IGP 指标。

选择

  • false

  • true

mtu_discovery

布尔值

启用 TCP 路径 MTU 发现。

选择

  • false

  • true

multihop

字典

配置 EBGP 多跳会话。

no_nexthop_change

布尔值

不要在通告中将下一跳更改为自身。

选择

  • false

  • true

set

布尔值

设置 EBGP 多跳会话。

选择

  • false

  • true

ttl

整数

会话的 TTL 值。

multipath

字典

允许在多个 BGP 路径之间进行负载共享。

disable

布尔值

禁用多路径。

选择

  • false

  • true

multiple_as

布尔值

使用从不同 AS 接收的路径。

选择

  • false

  • true

multiple_as_disable

布尔值

禁用多路径。

选择

  • false

  • true

set

布尔值

设置允许在多个 BGP 路径之间进行负载共享。

选择

  • false

  • true

neighbor_address

字符串

指定邻居地址。

no_advertise_peer_as

布尔值

允许不通告从同一自治系统接收的路由。

选择

  • false

  • true

no_aggregator_id

布尔值

将聚合器路径属性中的路由器 ID 设置为 0。

选择

  • false

  • true

no_client_reflect

布尔值

禁用集群内路由重分发。

选择

  • false

  • true

out_delay

整数

指定从路由表导出路由之前等待的时间。

outbound_route_filter

字典

动态协商的协作路由过滤。

bgp_orf_cisco_mode

布尔值

使用 BGP ORF 功能代码 130 和前缀 ORF 类型 128。

选择

  • false

  • true

prefix_based

字典

基于前缀的出站路由过滤。

accept

字典

遵守来自远程对等体的基于前缀的 ORF。

inet

布尔值

遵守 IPv4 前缀过滤器。

选择

  • false

  • true

inet6

布尔值

遵守 IPv6 前缀过滤器。

选择

  • false

  • true

set

布尔值

设置遵守来自远程对等体的基于前缀的 ORF。

选择

  • false

  • true

set

布尔值

设置基于前缀的出站路由过滤。

选择

  • false

  • true

passive

布尔值

指定不向对等体发送打开消息。

选择

  • false

  • true

peer_as

字符串

指定以纯数字或“高 16 位”.”低 16 位”格式表示的自治系统号。

preference

字符串

指定首选项值。

remove_private

字典

删除众所周知的私有 AS 号。

all

布尔值

删除所有私有 AS 号,并且不停止在第一个公共 AS 号处。

选择

  • false

  • true

all_replace

布尔值

指定私有 AS 替换。

选择

  • false

  • true

all_replace_nearest

布尔值

使用最近的公共 AS 号替换私有 AS 号。

选择

  • false

  • true

no_peer_loop_check

布尔值

删除对等体环路检查。

选择

  • false

  • true

set

布尔值

删除众所周知的私有 AS 号。

选择

  • false

  • true

rfc6514_compliant_safi129

布尔值

指定符合 RFC6514 SAFI129 格式。

选择

  • false

  • true

route_server_client

布尔值

启用路由服务器客户端行为。

选择

  • false

  • true

tcp_aggressive_transmission

布尔值

启用纯 TCP ACK 和重传的积极传输。

选择

  • false

  • true

tcp_mss

整数

指定最大 TCP 段大小。

traceoptions

字典

配置 BGP 的跟踪选项。

file

字典

指定跟踪文件选项。

filename

字符串 / 必需

指定用于写入跟踪信息的文件名称。

files

整数

指定跟踪文件的最大数量。

no_world_readable

布尔值

不允许任何用户读取日志文件。

选择

  • false

  • true

size

整数

指定最大跟踪文件大小。

world_readable

布尔值

允许任何用户读取日志文件。

选择

  • false

  • true

flag

列表 / 元素=字典

指定跟踪参数。

detail

布尔值

跟踪详细信息。

选择

  • false

  • true

disable

布尔值

禁用此跟踪标志。

选择

  • false

  • true

filter

字典

应用于此标志的过滤器。

match_on_prefix

布尔值

指定基于前缀的过滤器。

选择

  • false

  • true

policy

字符串

指定过滤器策略。

set

布尔值

设置应用于此标志的过滤器。

选择

  • false

  • true

name

字符串 / 必需

指定事件名称

选择

  • "4byte-as"

  • "add-path"

  • "all"

  • "bfd"

  • "damping"

  • "egress-te"

  • "general"

  • "graceful-restart"

  • "keepalive"

  • "normal"

  • "nsr-synchronization"

  • "open"

  • "packets"

  • "policy"

  • "refresh"

  • "route"

  • "state"

  • "task"

  • "thread-io"

  • "thread-update-io"

  • "timer"

  • "update"

receive

布尔值

跟踪接收的数据包。

选择

  • false

  • true

send

布尔值

跟踪发送的数据包。

选择

  • false

  • true

ttl

整数

指定单跳对等体的 TTL 值。

unconfigured_peer_graceful_restart

布尔值

指定 BGP 未配置的对等体平滑重启选项。

选择

  • false

  • true

vpn_apply_export

布尔值

在导出 VPN 路由时应用 BGP 导出策略。

选择

  • false

  • true

no_advertise_peer_as

布尔值

允许不通告从同一自治系统接收的路由。

选择

  • false

  • true

no_aggregator_id

布尔值

将聚合器路径属性中的路由器 ID 设置为 0。

选择

  • false

  • true

no_client_reflect

布尔值

禁用集群内路由重分发。

选择

  • false

  • true

optimal_route_reflection

字典

为此客户端组启用最佳路由反射。

igp_backup

字符串

此客户端组的备份节点标识符。

igp_primary

字符串

此客户端组的主节点标识符。

out_delay

整数

指定从路由表导出路由之前等待的时间。

outbound_route_filter

字典

动态协商的协作路由过滤。

bgp_orf_cisco_mode

布尔值

使用 BGP ORF 功能代码 130 和前缀 ORF 类型 128。

选择

  • false

  • true

prefix_based

字典

基于前缀的出站路由过滤。

accept

字典

遵守来自远程对等体的基于前缀的 ORF。

inet

布尔值

遵守 IPv4 前缀过滤器。

选择

  • false

  • true

inet6

布尔值

遵守 IPv6 前缀过滤器。

选择

  • false

  • true

set

布尔值

设置遵守来自远程对等体的基于前缀的 ORF。

选择

  • false

  • true

set

布尔值

设置基于前缀的出站路由过滤。

选择

  • false

  • true

passive

布尔值

指定不向对等体发送打开消息。

选择

  • false

  • true

peer_as

字符串

指定以纯数字或“高 16 位”.”低 16 位”格式表示的自治系统号。

preference

字符串

指定首选项值。

remove_private

字典

删除众所周知的私有 AS 号。

all

布尔值

删除所有私有 AS 号,并且不停止在第一个公共 AS 号处。

选择

  • false

  • true

all_replace

布尔值

指定私有 AS 替换。

选择

  • false

  • true

all_replace_nearest

布尔值

使用最近的公共 AS 号替换私有 AS 号。

选择

  • false

  • true

no_peer_loop_check

布尔值

删除对等体环路检查。

选择

  • false

  • true

set

布尔值

删除众所周知的私有 AS 号。

选择

  • false

  • true

rfc6514_compliant_safi129

布尔值

指定符合 RFC6514 SAFI129 格式。

选择

  • false

  • true

route_server_client

布尔值

启用路由服务器客户端行为。

选择

  • false

  • true

tcp_aggressive_transmission

布尔值

启用纯 TCP ACK 和重传的积极传输。

选择

  • false

  • true

tcp_mss

整数

指定最大 TCP 段大小。

traceoptions

字典

配置 BGP 的跟踪选项。

file

字典

指定跟踪文件选项。

filename

字符串 / 必需

指定用于写入跟踪信息的文件名称。

files

整数

指定跟踪文件的最大数量。

no_world_readable

布尔值

不允许任何用户读取日志文件。

选择

  • false

  • true

size

整数

指定最大跟踪文件大小。

world_readable

布尔值

允许任何用户读取日志文件。

选择

  • false

  • true

flag

列表 / 元素=字典

指定跟踪参数。

detail

布尔值

跟踪详细信息。

选择

  • false

  • true

disable

布尔值

禁用此跟踪标志。

选择

  • false

  • true

filter

字典

应用于此标志的过滤器。

match_on_prefix

布尔值

指定基于前缀的过滤器。

选择

  • false

  • true

policy

字符串

指定过滤器策略。

set

布尔值

设置应用于此标志的过滤器。

选择

  • false

  • true

name

字符串 / 必需

指定事件名称

选择

  • "4byte-as"

  • "add-path"

  • "all"

  • "bfd"

  • "damping"

  • "egress-te"

  • "general"

  • "graceful-restart"

  • "keepalive"

  • "normal"

  • "nsr-synchronization"

  • "open"

  • "packets"

  • "policy"

  • "refresh"

  • "route"

  • "state"

  • "task"

  • "thread-io"

  • "thread-update-io"

  • "timer"

  • "update"

receive

布尔值

跟踪接收的数据包。

选择

  • false

  • true

send

布尔值

跟踪发送的数据包。

选择

  • false

  • true

ttl

整数

指定单跳对等体的 TTL 值。

type

字符串

指定 BGP 组类型。

选择

  • "external"

  • "internal"

unconfigured_peer_graceful_restart

布尔值

指定 BGP 未配置的对等体平滑重启选项。

选择

  • false

  • true

vpn_apply_export

布尔值

在导出 VPN 路由时应用 BGP 导出策略。

选择

  • false

  • true

hold_time

整数

指定与对等体协商时使用的保持时间。

holddown_all_stale_labels

布尔值

保持所有 BGP 过时标签,以便为新标签通告提供先建后拆的功能。

选择

  • false

  • true

idle_after_switch_over

字典

在不间断路由切换后阻止对等会话启动。

forever

布尔值

使对等体保持空闲状态,直到用户干预。

选择

  • false

  • true

timeout

整数

指定切换后启动对等体的超时值(以秒为单位)。

import

列表 / 元素=字符串

指定导入策略。

include_mp_next_hop

布尔值

在多协议更新中包含 NEXT-HOP 属性。

选择

  • false

  • true

ipsec_sa

字符串

指定 IPSec SA 名称。

keep

字符串

指定如何在路由表中保留路由。

选择

  • "all"

  • "none"

local_address

字符串

指定 BGP 会话本地端的地址。

local_as

字典

本地自治系统号。

alias

布尔值

将此 AS 视为系统 AS 的别名。

选择

  • false

  • true

as_num

字符串 / 必需

以纯数字或(asdot 表示法)格式表示的自治系统号。

loops

整数

此 AS 在 AS 路径中出现的最大次数。

no_prepend_global_as

布尔值

此 AS 在 AS 路径中出现的最大次数。

选择

  • false

  • true

private

布尔值

隐藏从此对等体学习的路径中的此本地 AS。

选择

  • false

  • true

local_interface

字符串

为 IPv6 链路本地 EBGP 对等指定本地接口。

local_preference

字符串

指定 LOCAL_PREF 路径属性的值。

log_updown

布尔值

为对等体状态转换启用日志消息。

选择

  • false

  • true

loops

整数

指定此 AS 在 AS 路径中出现的最大次数。

metric_out

字典

指定在 MED 中发送的路由指标。

igp

字典

跟踪 IGP 指标。

delay_med_update

布尔值

在 IGP 指标增加时延迟更新 MED。

选择

  • false

  • true

metric_offset

整数

指定 MED 的指标偏移量。

set

布尔值

设置跟踪 IGP 指标。

选择

  • false

  • true

metric_value

整数

指定指标值。

minimum_igp

字典

跟踪最小 IGP 指标。

metric_offset

整数

指定 MED 的指标偏移量。

set

布尔值

设置跟踪最小 IGP 指标。

选择

  • false

  • true

mtu_discovery

布尔值

启用 TCP 路径 MTU 发现。

选择

  • false

  • true

multihop

字典

配置 EBGP 多跳会话。

no_nexthop_change

布尔值

不要在通告中将下一跳更改为自身。

选择

  • false

  • true

set

布尔值

设置 EBGP 多跳会话。

选择

  • false

  • true

ttl

整数

会话的 TTL 值。

multipath

字典

允许在多个 BGP 路径之间进行负载共享。

disable

布尔值

禁用多路径。

选择

  • false

  • true

multiple_as

布尔值

使用从不同 AS 接收的路径。

选择

  • false

  • true

multiple_as_disable

布尔值

禁用多路径。

选择

  • false

  • true

set

布尔值

设置允许在多个 BGP 路径之间进行负载共享。

选择

  • false

  • true

multipath_build_priority

字符串

配置多路径构建优先级。

选择

  • "low"

  • "medium"

no_advertise_peer_as

布尔值

允许不通告从同一自治系统接收的路由。

选择

  • false

  • true

no_aggregator_id

布尔值

将聚合器路径属性中的路由器 ID 设置为 0。

选择

  • false

  • true

no_client_reflect

布尔值

禁用集群内路由重分发。

选择

  • false

  • true

no_precision_timers

布尔值

指定不使用精确计时器来调度保持活动。

选择

  • false

  • true

out_delay

整数

指定从路由表导出路由之前等待的时间。

outbound_route_filter

字典

动态协商的协作路由过滤。

bgp_orf_cisco_mode

布尔值

使用 BGP ORF 功能代码 130 和前缀 ORF 类型 128。

选择

  • false

  • true

prefix_based

字典

基于前缀的出站路由过滤。

accept

字典

遵守来自远程对等体的基于前缀的 ORF。

inet

布尔值

遵守 IPv4 前缀过滤器。

选择

  • false

  • true

inet6

布尔值

遵守 IPv6 前缀过滤器。

选择

  • false

  • true

set

布尔值

设置遵守来自远程对等体的基于前缀的 ORF。

选择

  • false

  • true

set

布尔值

设置基于前缀的出站路由过滤。

选择

  • false

  • true

output_queue_priority

字典

用于更新的 BGP 输出队列优先级调度程序。

defaults

字典

映射策略的优先级类和 BGP 输出队列。

high

字典

将“高”优先级类分配给此输出队列。

expedited

布尔值

加急队列;最高优先级。

选择

  • false

  • true

priority

整数

指定输出队列优先级。

low

字典

将“低”优先级类分配给此输出队列。

expedited

布尔值

加急队列;最高优先级。

选择

  • false

  • true

priority

整数

指定输出队列优先级。

medium

字典

将“中”优先级类分配给此输出队列。

expedited

布尔值

加急队列;最高优先级。

选择

  • false

  • true

priority

整数

指定输出队列优先级。

expedited_update_tokens

整数

加急队列;最高优先级,用于令牌数量。

priority_update_tokens

列表 / 元素=字典

输出队列优先级;越高越好。

priority

integer / required

指定优先级。

update_tokens

integer / required

指定 update_tokens。

passive

布尔值

指定不向对等体发送打开消息。

选择

  • false

  • true

path_selection

字典

配置路径选择策略。

always_compare_med

布尔值

比较来自不同 AS 的路径上的 MED。

选择

  • false

  • true

as_path_ignore

布尔值

在路径选择期间忽略 AS 路径比较。

选择

  • false

  • true

cisco_non_deterministic

布尔值

使用 Cisco IOS 非确定性路径选择算法。

选择

  • false

  • true

external_router_id

布尔值

比较 BGP 外部项上的路由器 ID。

选择

  • false

  • true

l2vpn_use_bgp_rules

布尔值

在 L2VPN 路径选择期间使用标准 BGP 规则。

选择

  • false

  • true

med_plus_igp

字典

在比较 MED 值之前,将下一跳的 IGP 开销添加到 MED。

igp_multiplier

整数

指定下一跳的 IGP 开销的乘数。

med_multiplier

整数

指定 MED 的乘数。

set

布尔值

设置 med-plus-igp 属性。

选择

  • false

  • true

peer_as

字符串

指定以纯数字或“高 16 位”.”低 16 位”格式表示的自治系统号。

precision_timers

布尔值

使用精确计时器来调度保持活动。

选择

  • false

  • true

preference

字符串

指定首选项值。

remove_private

字典

删除众所周知的私有 AS 号。

all

布尔值

删除所有私有 AS 号,并且不停止在第一个公共 AS 号处。

选择

  • false

  • true

all_replace

布尔值

指定私有 AS 替换。

选择

  • false

  • true

all_replace_nearest

布尔值

使用最近的公共 AS 号替换私有 AS 号。

选择

  • false

  • true

no_peer_loop_check

布尔值

删除对等体环路检查。

选择

  • false

  • true

set

布尔值

删除众所周知的私有 AS 号。

选择

  • false

  • true

rfc6514_compliant_safi129

布尔值

指定符合 RFC6514 SAFI129 格式。

选择

  • false

  • true

route_server_client

布尔值

启用路由服务器客户端行为。

选择

  • false

  • true

send_addpath_optimization

布尔值

启用 BGP 添加路径通告优化。

选择

  • false

  • true

snmp_options

字典

专门为 BGP MIB 自定义 SNMP 行为。

backward_traps_only_from_established

布尔值

将向后转换的陷阱限制为仅从“已建立”状态移动的陷阱。

选择

  • false

  • true

emit_inet_address_length_in_oid

布尔值

在 InetAddress MIB 类型的 OID 中发出长度。

选择

  • false

  • true

sr_preference_override

字符串

将接收到的分段路由流量工程首选项值替换为覆盖值。

stale_labels_holddown_period

整数

指定 BGP 分配的 MPLS 标签在过期后保留的持续时间(秒)。

tcp_aggressive_transmission

布尔值

启用纯 TCP ACK 和重传的积极传输。

选择

  • false

  • true

tcp_mss

整数

指定最大 TCP 段大小。

traceoptions

字典

配置 BGP 的跟踪选项。

file

字典

指定跟踪文件选项。

filename

字符串 / 必需

指定用于写入跟踪信息的文件名称。

files

整数

指定跟踪文件的最大数量。

no_world_readable

布尔值

不允许任何用户读取日志文件。

选择

  • false

  • true

size

整数

指定最大跟踪文件大小。

world_readable

布尔值

允许任何用户读取日志文件。

选择

  • false

  • true

flag

列表 / 元素=字典

指定跟踪参数。

detail

布尔值

跟踪详细信息。

选择

  • false

  • true

disable

布尔值

禁用此跟踪标志。

选择

  • false

  • true

filter

字典

应用于此标志的过滤器。

match_on_prefix

布尔值

指定基于前缀的过滤器。

选择

  • false

  • true

policy

字符串

指定过滤器策略。

set

布尔值

设置应用于此标志的过滤器。

选择

  • false

  • true

name

字符串 / 必需

指定事件名称

选择

  • "4byte-as"

  • "add-path"

  • "all"

  • "bfd"

  • "damping"

  • "egress-te"

  • "general"

  • "graceful-restart"

  • "keepalive"

  • "normal"

  • "nsr-synchronization"

  • "open"

  • "packets"

  • "policy"

  • "refresh"

  • "route"

  • "state"

  • "task"

  • "thread-io"

  • "thread-update-io"

  • "timer"

  • "update"

receive

布尔值

跟踪接收的数据包。

选择

  • false

  • true

send

布尔值

跟踪发送的数据包。

选择

  • false

  • true

traffic_statistics_labeled_path

字典

为 BGP 标签交换路径收集定期入口标签统计信息。

file

字典

指定统计信息文件选项。

filename

字符串

指定用于写入跟踪信息的文件名称。

files

整数

指定跟踪文件的最大数量。

no_world_readable

布尔值

不允许任何用户读取日志文件。

选择

  • false

  • true

size

整数

指定最大跟踪文件大小。

world_readable

布尔值

允许任何用户读取日志文件。

选择

  • false

  • true

interval

整数

指定收集统计信息的时间间隔。

ttl

整数

指定单跳对等体的 TTL 值。

unconfigured_peer_graceful_restart

布尔值

指定 BGP 未配置的对等体平滑重启选项。

选择

  • false

  • true

vpn_apply_export

布尔值

在导出 VPN 路由时应用 BGP 导出策略。

选择

  • false

  • true

running_config

字符串

此选项仅与状态 *parsed* 一起使用。

此选项的值应是从 Junos 设备执行命令 show protocols bgp 收到的输出。

状态 *parsed* 从 running_config 选项读取配置,并根据资源模块的参数规范将其转换为 Ansible 结构化数据,然后该值将返回到结果内的 *parsed* 键中

state

字符串

配置应保留的状态。

状态 *purged* 从目标设备中删除所有(routing-options autonomous-system、bgp global、bgp groups、bgp neighbors、bgp family 和 bgp group 和 neighbor family)BGP 配置。使用此状态时请务必小心。

状态 *deleted* 仅删除此模块管理的 BGP 属性,而不完全否定 BGP 进程。因此,保留 BGP 上下文下的地址系列相关配置。

如果邻居下存在地址系列配置行,则运行状态 *deleted* 和 *replaced* 将导致错误。请使用 junipernetworks.junos.junos_bgp_address_family 模块进行先前清理。

有关更多详细信息,请参阅示例。

选择

  • "purged"

  • "merged" ← (默认)

  • "replaced"

  • "overridden"

  • "deleted"

  • "gathered"

  • "parsed"

  • "rendered"

Notes

注意

  • 此模块需要在被管理的设备上启用 netconf 系统服务。

  • 此模块使用 netconf 连接。请参阅Junos OS 平台选项

  • 已在 JunOS v18.4R1 上测试。

示例

# Using merged
#
# Before state:
# -------------
#
# vsrx# show bgp summary
# BGP is not running

# vsrx# show routing-options autonomous-system

- name: Merge provided bgp config with device configuration
  junipernetworks.junos.junos_bgp_global:
    config:
      as_number: "65534"
      loops: 3
      asdot_notation: true
      accept_remote_nexthop: true
      add_path_display_ipv4_address: true
      advertise_from_main_vpn_tables: true
      advertise_inactive: true
      authentication_algorithm: "md5"
      bgp_error_tolerance:
        malformed_route_limit: 20000000
      bmp:
        monitor: true
      damping: true
      description: "This is configured with Junos_bgp resource module"
      egress_te_sid_stats: true
      hold_time: 5
      holddown_all_stale_labels: true
      include_mp_next_hop: true
      log_updown: true
      no_advertise_peer_as: true
      no_aggregator_id: true
      no_client_reflect: true
      out_delay: 10
      precision_timers: true
      preference: 2
    state: merged

# Task Output:
# ------------
# before: {}
#
# commands:
# - <nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:bgp><nc:accept-remote-nexthop/>
#   <nc:add-path-display-ipv4-address/><nc:advertise-from-main-vpn-tables/><nc:advertise->
# - <nc:routing-options xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
#   <nc:autonomous-system>65534<nc:loops>3</nc:loops><nc:asdot-notation/></nc:autonomous-system></nc:routing-options>
#
# after:
#   accept_remote_nexthop: true
#   add_path_display_ipv4_address: true
#   advertise_from_main_vpn_tables: true
#   advertise_inactive: true
#   as_number: '65534'
#   asdot_notation: true
#   authentication_algorithm: md5
#   bgp_error_tolerance:
#     malformed_route_limit: 20000000
#   bmp:
#     monitor: true
#   damping: true
#   description: This is configured with Junos_bgp resource module
#   egress_te_sid_stats: true
#   hold_time: 5
#   holddown_all_stale_labels: true
#   include_mp_next_hop: true
#   log_updown: true
#   loops: 3
#   no_advertise_peer_as: true
#   no_aggregator_id: true
#   no_client_reflect: true
#   out_delay: 10
#   precision_timers: true
#   preference: '2'

# After state:
# ------------
#
# vsrx# show routing-options autonomous-system
# 65534 loops 3 asdot-notation;

# vsrx# show protocols bgp
# precision-timers;
# advertise-from-main-vpn-tables;
# holddown-all-stale-labels;
# description "This is configured with Junos_bgp resource module";
# accept-remote-nexthop;
# preference 2;
# hold-time 5;
# advertise-inactive;
# no-advertise-peer-as;
# no-aggregator-id;
# out-delay 10;
# log-updown;
# damping;
# bgp-error-tolerance {
#     malformed-route-limit 20000000;
# }
# authentication-algorithm md5;
# no-client-reflect;
# include-mp-next-hop;
# bmp {
#     monitor enable;
# }
# add-path-display-ipv4-address;
# egress-te-sid-stats;

# Using replaced
#
# Before state:
# -------------
#
# vsrx# show routing-options autonomous-system
# [edit]
# vsrx# show protocols bgp
# precision-timers;
# advertise-from-main-vpn-tables;
# holddown-all-stale-labels;
# description "This is configured with Junos_bgp resource module";
# accept-remote-nexthop;
# preference 2;
# hold-time 5;
# advertise-inactive;
# no-advertise-peer-as;
# no-aggregator-id;
# out-delay 10;
# log-updown;
# damping;
# bgp-error-tolerance {
#     malformed-route-limit 20000000;
# }
# authentication-algorithm md5;
# no-client-reflect;
# include-mp-next-hop;
# bmp {
#     monitor enable;
# }
# add-path-display-ipv4-address;
# egress-te-sid-stats;

- name: Replace running config with provided config
  junipernetworks.junos.junos_bgp_global:
    config:
      advertise_inactive: true
      authentication_algorithm: "md5"
      bfd_liveness_detection:
        minimum_receive_interval: 8
        multiplier: 30
        no_adaptation: true
        transmit_interval:
          minimum_interval: 4
        version: "automatic"
      bgp_error_tolerance:
        malformed_route_limit: 40000000
      description: "Replace running bgp config"
      egress_te_sid_stats: true
      hold_time: 5
      out_delay: 10
      preference: "2"
    state: replaced

# Task Output:
# ------------
#
# before:
#   accept_remote_nexthop: true
#   add_path_display_ipv4_address: true
#   advertise_from_main_vpn_tables: true
#   advertise_inactive: true
#   as_number: '65534'
#   asdot_notation: true
#   authentication_algorithm: md5
#   bgp_error_tolerance:
#     malformed_route_limit: 20000000
#   bmp:
#     monitor: true
#   damping: true
#   description: This is configured with Junos_bgp resource module
#   egress_te_sid_stats: true
#   hold_time: 5
#   holddown_all_stale_labels: true
#   include_mp_next_hop: true
#   log_updown: true
#   loops: 3
#   no_advertise_peer_as: true
#   no_aggregator_id: true
#   no_client_reflect: true
#   out_delay: 10
#   precision_timers: true
#   preference: '2'

# commands:
# - <nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:bgp>
#   <nc:accept-remote-nexthop delete="delete"/><nc:add-path-display-ipv4-address delete="delete"/><nc:advertise-bgp-t
#   delete="delete"/><nc:include-mp-next-hop delete="delete"/><nc:ipsec-sa delete="delete"/><nc:keep delete="delete"/>
#   <nc:local-address delete="delete"/><nc:local-interface delete="delete"/t
#   delete="delete"/></nc:bgp><nc:bgp><nc:advertise-inactive/><nc:egress-te-sid-stats/>
#   <nc:authentication-algorithm>md5</nc:authentication-algorithm><nc:description>Replace running bgp conf>
# - <nc:routing-options xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:autonomous-system delete="delete"/></nc:routing-options>

#
# after:
#   advertise_inactive: true
#   authentication_algorithm: md5
#   bfd_liveness_detection:
#     minimum_receive_interval: 8
#     multiplier: 30
#     no_adaptation: true
#     transmit_interval:
#       minimum_interval: 4
#     version: automatic
#   bgp_error_tolerance:
#     malformed_route_limit: 40000000
#   description: Replace running bgp config
#   egress_te_sid_stats: true
#   hold_time: 5
#   out_delay: 10
#   preference: '2'

# After state:
# ------------
#
# varx# show protocols bgp
# description "Replace running bgp config";
# preference 2;
# hold-time 5;
# advertise-inactive;
# out-delay 10;
# bgp-error-tolerance {
#     malformed-route-limit 40000000;
# }
# authentication-algorithm md5;
# bfd-liveness-detection {
#     version automatic;
#     minimum-receive-interval 8;
#     multiplier 30;
#     no-adaptation;
#     transmit-interval {
#         minimum-interval 4;
#     }
# }
# egress-te-sid-stats;

# vsrx# show routing-options autonomous-system

# Using overridden
# "(NOTE: This will work same as replaced operation)"
#
# Before state:
# -------------
#
# vsrx# show routing-options autonomous-system
# [edit]
# vsrx# show protocols bgp
# precision-timers;
# advertise-from-main-vpn-tables;
# holddown-all-stale-labels;
# description "This is configured with Junos_bgp resource module";
# accept-remote-nexthop;
# preference 2;
# hold-time 5;
# advertise-inactive;
# no-advertise-peer-as;
# no-aggregator-id;
# out-delay 10;
# log-updown;
# damping;
# bgp-error-tolerance {
#     malformed-route-limit 20000000;
# }
# authentication-algorithm md5;
# no-client-reflect;
# include-mp-next-hop;
# bmp {
#     monitor enable;
# }
# add-path-display-ipv4-address;
# egress-te-sid-stats;

- name: Override running config with provided config
  junipernetworks.junos.junos_bgp_global:
    config:
      advertise_inactive: true
      authentication_algorithm: "md5"
      bfd_liveness_detection:
        minimum_receive_interval: 8
        multiplier: 30
        no_adaptation: true
        transmit_interval:
          minimum_interval: 4
        version: "automatic"
      bgp_error_tolerance:
        malformed_route_limit: 40000000
      description: "Replace running bgp config"
      egress_te_sid_stats: true
      hold_time: 5
      out_delay: 10
      preference: "2"
    state: overridden

# Task Output:
# ------------
#
# before:
#   accept_remote_nexthop: true
#   add_path_display_ipv4_address: true
#   advertise_from_main_vpn_tables: true
#   advertise_inactive: true
#   as_number: '65534'
#   asdot_notation: true
#   authentication_algorithm: md5
#   bgp_error_tolerance:
#     malformed_route_limit: 20000000
#   bmp:
#     monitor: true
#   damping: true
#   description: This is configured with Junos_bgp resource module
#   egress_te_sid_stats: true
#   hold_time: 5
#   holddown_all_stale_labels: true
#   include_mp_next_hop: true
#   log_updown: true
#   loops: 3
#   no_advertise_peer_as: true
#   no_aggregator_id: true
#   no_client_reflect: true
#   out_delay: 10
#   precision_timers: true
#   preference: '2'

# commands:
# - <nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:bgp>
#   <nc:accept-remote-nexthop delete="delete"/><nc:add-path-display-ipv4-address delete="delete"/><nc:advertise-bgp-t
#   delete="delete"/><nc:include-mp-next-hop delete="delete"/><nc:ipsec-sa delete="delete"/><nc:keep delete="delete"/>
#   <nc:local-address delete="delete"/><nc:local-interface delete="delete"/t
#   delete="delete"/></nc:bgp><nc:bgp><nc:advertise-inactive/><nc:egress-te-sid-stats/>
#   <nc:authentication-algorithm>md5</nc:authentication-algorithm><nc:description>Replace running bgp conf>
# - <nc:routing-options xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:autonomous-system delete="delete"/></nc:routing-options>

#
# after:
#   advertise_inactive: true
#   authentication_algorithm: md5
#   bfd_liveness_detection:
#     minimum_receive_interval: 8
#     multiplier: 30
#     no_adaptation: true
#     transmit_interval:
#       minimum_interval: 4
#     version: automatic
#   bgp_error_tolerance:
#     malformed_route_limit: 40000000
#   description: Replace running bgp config
#   egress_te_sid_stats: true
#   hold_time: 5
#   out_delay: 10
#   preference: '2'

# After state:
# ------------
#
# varx# show protocols bgp
# description "Replace running bgp config";
# preference 2;
# hold-time 5;
# advertise-inactive;
# out-delay 10;
# bgp-error-tolerance {
#     malformed-route-limit 40000000;
# }
# authentication-algorithm md5;
# bfd-liveness-detection {
#     version automatic;
#     minimum-receive-interval 8;
#     multiplier 30;
#     no-adaptation;
#     transmit-interval {
#         minimum-interval 4;
#     }
# }
# egress-te-sid-stats;

# vsrx# show routing-options autonomous-system

# Using deleted
# "(NOTE: This WILL delete the bgp global attributes)"
# Before state
# ------------
#
# vsrx# show protocols bgp
# description "Replace running bgp config";
# preference 2;
# hold-time 5;
# advertise-inactive;
# out-delay 10;
# bgp-error-tolerance {
#     malformed-route-limit 40000000;
# }
# authentication-algorithm md5;
# bfd-liveness-detection {
#     version automatic;
#     minimum-receive-interval 8;
#     multiplier 30;
#     no-adaptation;
#     transmit-interval {
#         minimum-interval 4;
#     }
# }
# egress-te-sid-stats;

- name: Delete bgp section of running config
  junipernetworks.junos.junos_bgp_global:
    config:
    state: deleted

# Task Output:
# ------------

# before:
#   advertise_inactive: true
#   authentication_algorithm: md5
#   bfd_liveness_detection:
#     minimum_receive_interval: 8
#     multiplier: 30
#     no_adaptation: true
#     transmit_interval:
#       minimum_interval: 4
#     version: automatic
#   bgp_error_tolerance:
#     malformed_route_limit: 40000000
#   description: Replace running bgp config
#   egress_te_sid_stats: true
#   hold_time: 5
#   out_delay: 10
#   preference: '2'

# commands:
# - <nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:bgp><nc:accept-remote-nexthop delete="delete"/>
#   <nc:add-path-display-ipv4-address delete="delete"/><nc:advertise-bgp-t
#   delete="delete"/><nc:include-mp-next-hop delete="delete"/><nc:ipsec-sa delete="delete"/><nc:keep delete="delete"/>
#   <nc:local-address delete="delete"/><nc:local-interface delete="delete"/t
#   delete="delete"/></nc:bgp></nc:protocols>
# - <nc:routing-options xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"/>

# after: {}

# After state:
# ------------
# vsrx# show protocols bgp

# vsrx# show routing-options autonomous-system

# Using gathered
#
# Before state:
# -------------
#
# vsrx# show protocols bgp
# precision-timers;
# advertise-from-main-vpn-tables;
# holddown-all-stale-labels;
# description "This is configured with Junos_bgp resource module";
# accept-remote-nexthop;
# preference 2;
# hold-time 5;
# advertise-inactive;
# no-advertise-peer-as;
# no-aggregator-id;
# out-delay 10;
# log-updown;
# damping;
# bgp-error-tolerance {
#     malformed-route-limit 20000000;
# }
# authentication-algorithm md5;
# no-client-reflect;
# include-mp-next-hop;
# bmp {
#     monitor enable;
# }
# add-path-display-ipv4-address;
# egress-te-sid-stats;

- name: Gather BGP facts from running config
  junipernetworks.junos.junos_bgp_global:
    config:
    state: gathered

# Task Output:
# ------------

# gathered:
#   accept_remote_nexthop: true
#   add_path_display_ipv4_address: true
#   advertise_from_main_vpn_tables: true
#   advertise_inactive: true
#   as_number: '65534'
#   asdot_notation: true
#   authentication_algorithm: md5
#   bgp_error_tolerance:
#     malformed_route_limit: 20000000
#   bmp:
#     monitor: true
#   damping: true
#   description: This is configured with Junos_bgp resource module
#   egress_te_sid_stats: true
#   hold_time: 5
#   holddown_all_stale_labels: true
#   include_mp_next_hop: true
#   log_updown: true
#   loops: 3
#   no_advertise_peer_as: true
#   no_aggregator_id: true
#   no_client_reflect: true
#   out_delay: 10
#   precision_timers: true
#   preference: '2'

# Using purged
# "(NOTE: This WILL delete the configured global BGP, and BGP address family config)"

# Before state:
# -------------
#
# vsrx# show protocols bgp
# precision-timers;
# advertise-from-main-vpn-tables;
# holddown-all-stale-labels;
# description "This is configured with Junos_bgp resource module";
# accept-remote-nexthop;
# preference 2;
# hold-time 5;
# advertise-inactive;
# no-advertise-peer-as;
# no-aggregator-id;
# out-delay 10;
# log-updown;
# damping;
# bgp-error-tolerance {
#     malformed-route-limit 20000000;
# }
# authentication-algorithm md5;
# no-client-reflect;
# include-mp-next-hop;
# bmp {
#     monitor enable;
# }
# add-path-display-ipv4-address;
# egress-te-sid-stats;

- name: Purge BGP config from running config
  junipernetworks.junos.junos_bgp_global:
    config:
    state: purged

# Task Output:
# ------------

# before:
#   accept_remote_nexthop: true
#   add_path_display_ipv4_address: true
#   advertise_from_main_vpn_tables: true
#   advertise_inactive: true
#   as_number: '65534'
#   asdot_notation: true
#   authentication_algorithm: md5
#   bgp_error_tolerance:
#     malformed_route_limit: 20000000
#   bmp:
#     monitor: true
#   damping: true
#   description: This is configured with Junos_bgp resource module
#   egress_te_sid_stats: true
#   hold_time: 5
#   holddown_all_stale_labels: true
#   include_mp_next_hop: true
#   log_updown: true
#   loops: 3
#   no_advertise_peer_as: true
#   no_aggregator_id: true
#   no_client_reflect: true
#   out_delay: 10
#   precision_timers: true
#   preference: '2'

# commands:
# - <nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"><nc:bgp delete="delete"/></nc:protocols>
# - <nc:routing-options xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
#   <nc:autonomous-system delete="delete"/></nc:routing-options>

# after: {}

# After state:
# ------------
# vsrx# show protocols bgp

# vsrx# show routing-options autonomous-system

# Using rendered

- name: Render the commands for provided configuration
  junipernetworks.junos.junos_bgp_global:
    config:
      as_number: "65534"
      loops: 3
      asdot_notation: true
      accept_remote_nexthop: true
      add_path_display_ipv4_address: true
      advertise_from_main_vpn_tables: true
      advertise_inactive: true
      authentication_algorithm: "md5"
      bgp_error_tolerance:
        malformed_route_limit: 20000000
      bmp:
        monitor: true
      damping: true
      description: "This is configured with Junos_bgp resource module"
      egress_te_sid_stats: true
      hold_time: 5
      holddown_all_stale_labels: true
      include_mp_next_hop: true
      log_updown: true
      no_advertise_peer_as: true
      no_aggregator_id: true
      no_client_reflect: true
      out_delay: 10
      precision_timers: true
      preference: 2
    state: rendered

# Task Output:
# ------------

# rendered:
# <nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
# <nc:bgp><nc:accept-remote-nexthop/><nc:add-path-display-ipv4-address/>
# <nc:advertise-from-main-vpn-tables/><nc:ad>

#
# 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">
#       <version>18.4R1-S2.4</version>
#       <protocols>
#          <bgp>
#             <precision-timers />
#             <advertise-from-main-vpn-tables />
#             <holddown-all-stale-labels />
#             <description>This is configured with Junos_bgp resource module</description>
#             <accept-remote-nexthop />
#             <preference>2</preference>
#             <hold-time>5</hold-time>
#             <advertise-inactive />
#             <no-advertise-peer-as />
#             <no-aggregator-id />
#             <out-delay>10</out-delay>
#             <log-updown />
#             <damping />
#             <bgp-error-tolerance>
#                <malformed-route-limit>20000000</malformed-route-limit>
#             </bgp-error-tolerance>
#             <authentication-algorithm>md5</authentication-algorithm>
#             <remove-private />
#             <no-client-reflect />
#             <include-mp-next-hop />
#             <bmp>
#                <monitor>disable</monitor>
#                <route-monitoring>
#                   <none />
#                </route-monitoring>
#             </bmp>
#             <advertise-bgp-static>
#                <policy>static-to-bgp</policy>
#             </advertise-bgp-static>
#             <add-path-display-ipv4-address />
#             <bfd-liveness-detection>
#                <version>automatic</version>
#                <minimum-receive-interval>4</minimum-receive-interval>
#                <multiplier>10</multiplier>
#                <no-adaptation />
#                <transmit-interval>
#                   <minimum-interval>2</minimum-interval>
#                </transmit-interval>
#                <detection-time>
#                   <threshold>300000</threshold>
#                </detection-time>
#             </bfd-liveness-detection>
#             <egress-te-sid-stats />
#             <group>
#                <name>internal</name>
#                <out-delay>8</out-delay>
#             </group>
#             <group>
#                <name>external</name>
#                <out-delay>9</out-delay>
#             </group>
#             <group>
#                <name>inboun</name>
#                <type>internal</type>
#             </group>
#             <group>
#                <name>ibgp</name>
#                <type>internal</type>
#                <local-address>10.2.2.2</local-address>
#                <export>static-to-bgp</export>
#                <neighbor>
#                   <name>10.1.1.1</name>
#                </neighbor>
#             </group>
#          </bgp>
#          <ospf3>
#             <area>
#                <name>0.0.0.100</name>
#                <stub>
#                   <default-metric>200</default-metric>
#                </stub>
#                <interface>
#                   <name>so-0/0/0.0</name>
#                   <metric>5</metric>
#                   <priority>3</priority>
#                </interface>
#             </area>
#          </ospf3>
#       </protocols>
#       <routing-options>
#          <static>
#             <route>
#                <name>172.16.17.0/24</name>
#                <discard />
#             </route>
#          </static>
#          <router-id>10.200.16.75</router-id>
#          <autonomous-system>
#             <as-number>65432</as-number>
#          </autonomous-system>
#       </routing-options>
#    </configuration>
# </rpc-reply>


- name: Parsed the device configuration to get ansible facts
  junipernetworks.junos.junos_bgp_global:
    running_config: "{{ lookup('file', './parsed.cfg') }}"
    state: parsed

# Task Output:
# ------------

# parsed:
#   accept_remote_nexthop: true
#   add_path_display_ipv4_address: true
#   advertise_bgp_static:
#     policy: static-to-bgp
#   advertise_from_main_vpn_tables: true
#   advertise_inactive: true
#   as_number: '65432'
#   authentication_algorithm: md5
#   bfd_liveness_detection:
#     detection_time:
#       threshold: 300000
#     minimum_receive_interval: 4
#     multiplier: 10
#     no_adaptation: true
#     transmit_interval:
#       minimum_interval: 2
#     version: automatic
#   bgp_error_tolerance:
#     malformed_route_limit: 20000000
#   bmp:
#     monitor: false
#     route_monitoring:
#       none: true
#   damping: true
#   description: This is configured with Junos_bgp resource module
#   egress_te_sid_stats: true
#   groups:
#   - name: internal
#     out_delay: 8
#   - name: external
#     out_delay: 9
#   - name: inboun
#     type: internal
#   - export: static-to-bgp
#     local_address: 10.2.2.2
#     name: ibgp
#     neighbors:
#     - neighbor_address: 10.1.1.1
#     type: internal
#   hold_time: 5
#   holddown_all_stale_labels: true
#   include_mp_next_hop: true
#   log_updown: true
#   no_advertise_peer_as: true
#   no_aggregator_id: true
#   no_client_reflect: true
#   out_delay: 10
#   precision_timers: true
#   preference: '2'
#   remove_private:
#     set: true

返回值

常见的返回值记录在此处,以下是此模块特有的字段

描述

after

字典

生成的配置模型调用。

返回值: 当发生更改时

示例: "返回的配置将始终与上面参数的格式相同。\n"

before

字典

模型调用之前的配置。

返回值: 始终

示例: "返回的配置将始终与上面参数的格式相同。\n"

commands

列表 / 元素=字符串

推送到远程设备的命令集。

返回值: 始终

示例: ["<nc:protocols xmlns:nc=\"urn:ietf:params:xml:ns:netconf:base:1.0\"> <nc:bgp> <nc:damping/> <nc:egress-te-sid-stats/> <nc:authentication-algorithm>md5</nc:authentication-algorithm> <nc:description>这是使用 Junos_bgp 资源模块配置的</nc:description> <nc:hold-time>5</nc:hold-time> <nc:bfd-liveness-detection> <nc:transmit-interval> <nc:minimum-interval>2</nc:minimum-interval> </nc:transmit-interval> <nc:minimum-receive-interval>4</nc:minimum-receive-interval> <nc:multiplier>10</nc:multiplier> <nc:no-adaptation/> <nc:version>automatic</nc:version> </nc:bfd-liveness-detection> <nc:bgp-error-tolerance> <nc:malformed-route-limit>20000000</nc:malformed-route-limit> </nc:bgp-error-tolerance> <nc:bmp> <nc:monitor>enable</nc:monitor> </nc:bmp> </nc:bgp> </nc:protocols>", "xml 2", "xml 3"]

gathered

列表 / 元素=字符串

从远程设备收集的有关网络资源的结构化数据的事实。

返回值:stategathered

示例: ["此输出将始终与模块 argspec 的格式相同。\n"]

parsed

列表 / 元素=字符串

根据模块 argspec,将 running_config 选项中提供的设备原生配置解析为结构化数据。

返回值:stateparsed

示例: ["此输出将始终与模块 argspec 的格式相同。\n"]

rendered

列表 / 元素=字符串

以设备原生格式(离线)呈现任务中提供的配置。

返回值:staterendered

示例: ["<nc:protocols xmlns:nc=\"urn:ietf:params:xml:ns:netconf:base:1.0\">"]

作者

  • Rohit Thakur (@rohitthakur2590)