community.network.ce_bgp_neighbor_af – Manages BGP neighbor Address-family configuration on HUAWEI CloudEngine switches.

Note

This plugin is part of the community.network collection (version 2.1.1).

To install it use: ansible-galaxy collection install community.network.

To use it in a playbook, specify: community.network.ce_bgp_neighbor_af.

Synopsis

  • Manages BGP neighbor Address-family configurations on HUAWEI CloudEngine switches.

Parameters

Parameter Choices/Defaults Comments
add_path_mode
string
    Choices:
  • null
  • receive
  • send
  • both
null, Null. receive, Support receiving Add-Path routes. send, Support sending Add-Path routes. both, Support receiving and sending Add-Path routes.
adv_add_path_num
string
The number of addPath advertise route. The value is an integer ranging from 2 to 64.
advertise_arp
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, advertised ARP routes are distinguished. If the value is false, advertised ARP routes are not distinguished.
advertise_community
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the community attribute is advertised to peers. If the value is false, the community attribute is not advertised to peers.
advertise_ext_community
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the extended community attribute is advertised to peers. If the value is false, the extended community attribute is not advertised to peers.
advertise_irb
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, advertised IRB routes are distinguished. If the value is false, advertised IRB routes are not distinguished.
advertise_remote_nexthop
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the remote next-hop attribute is advertised to peers. If the value is false, the remote next-hop attribute is not advertised to any peers.
af_type
string / required
    Choices:
  • ipv4uni
  • ipv4multi
  • ipv4vpn
  • ipv6uni
  • ipv6vpn
  • evpn
Address family type of a BGP instance.
allow_as_loop_enable
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, repetitive local AS numbers are allowed. If the value is false, repetitive local AS numbers are not allowed.
allow_as_loop_limit
string
Set the maximum number of repetitive local AS number. The value is an integer ranging from 1 to 10.
default_rt_adv_enable
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the function to advertise default routes to peers is enabled. If the value is false, the function to advertise default routes to peers is disabled.
default_rt_adv_policy
string
Specify the name of a used policy. The value is a string. The value is a string of 1 to 40 characters.
default_rt_match_mode
string
    Choices:
  • null
  • matchall
  • matchany
null, Null. matchall, Advertise the default route if all matching conditions are met. matchany, Advertise the default route if any matching condition is met.
discard_ext_community
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the extended community attribute in the peer route information is discarded. If the value is false, the extended community attribute in the peer route information is not discarded.
export_acl_name_or_num
string
Apply an IPv4 ACL-based filtering policy to the routes to be advertised to a specified peer. The value is a string of 1 to 32 characters.
export_as_path_filter
string
Apply an AS_Path-based filtering policy to the routes to be advertised to a specified peer. The value is an integer ranging from 1 to 256.
export_as_path_name_or_num
string
Application of a AS path list based filtering policy to the routing of a specified peer.
export_pref_filt_name
string
Specify the IPv4 filtering policy applied to the routes to be advertised to a specified peer. The value is a string of 1 to 169 characters.
export_rt_policy_name
string
Specify the filtering policy applied to the routes to be advertised to a peer. The value is a string of 1 to 40 characters.
import_acl_name_or_num
string
Apply an IPv4 ACL-based filtering policy to the routes received from a specified peer. The value is a string of 1 to 32 characters.
import_as_path_filter
string
Apply an AS_Path-based filtering policy to the routes received from a specified peer. The value is an integer ranging from 1 to 256.
import_as_path_name_or_num
string
A routing strategy based on the AS path list for routing received by a designated peer.
import_pref_filt_name
string
Specify the IPv4 filtering policy applied to the routes received from a specified peer. The value is a string of 1 to 169 characters.
import_rt_policy_name
string
Specify the filtering policy applied to the routes learned from a peer. The value is a string of 1 to 40 characters.
ipprefix_orf_enable
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the address prefix-based Outbound Route Filter (ORF) capability is enabled for peers. If the value is false, the address prefix-based Outbound Route Filter (ORF) capability is disabled for peers.
is_nonstd_ipprefix_mod
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, Non-standard capability codes are used during capability negotiation. If the value is false, RFC-defined standard ORF capability codes are used during capability negotiation.
keep_all_routes
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the system stores all route update messages received from all peers (groups) after BGP connection setup. If the value is false, the system stores only BGP update messages that are received from peers and pass the configured import policy.
nexthop_configure
string
    Choices:
  • null
  • local
  • invariable
null, The next hop is not changed. local, The next hop is changed to the local IP address. invariable, Prevent the device from changing the next hop of each imported IGP route when advertising it to its BGP peers.
orf_mode
string
    Choices:
  • null
  • receive
  • send
  • both
ORF mode. null, Default value. receive, ORF for incoming packets. send, ORF for outgoing packets. both, ORF for incoming and outgoing packets.
orftype
string
ORF Type. The value is an integer ranging from 0 to 65535.
origin_as_valid
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, Application results of route announcement. If the value is false, Routing application results are not notified.
preferred_value
string
Assign a preferred value for the routes learned from a specified peer. The value is an integer ranging from 0 to 65535.
public_as_only
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, sent BGP update messages carry only the public AS number but do not carry private AS numbers. If the value is false, sent BGP update messages can carry private AS numbers.
public_as_only_force
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, sent BGP update messages carry only the public AS number but do not carry private AS numbers. If the value is false, sent BGP update messages can carry private AS numbers.
public_as_only_limited
string
    Choices:
  • no_use ←
  • true
  • false
Limited use public as number.
public_as_only_replace
string
    Choices:
  • no_use ←
  • true
  • false
Private as replaced by public as number.
public_as_only_skip_peer_as
string
    Choices:
  • no_use ←
  • true
  • false
Public as only skip peer as.
redirect_ip
string
    Choices:
  • no_use ←
  • true
  • false
Redirect ip.
redirect_ip_validation
string
    Choices:
  • no_use ←
  • true
  • false
Redirect ip validation.

aliases: redirect_ip_vaildation
reflect_client
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the local device functions as the route reflector and a peer functions as a client of the route reflector. If the value is false, the route reflector and client functions are not configured.
remote_address
string / required
IPv4 or IPv6 peer connection address.
route_limit
string
Configure the maximum number of routes that can be accepted from a peer. The value is an integer ranging from 1 to 4294967295.
route_limit_idle_timeout
string
Specify the value of the idle-timeout timer to automatically reestablish the connections after they are cut off when the number of routes exceeds the set threshold. The value is an integer ranging from 1 to 1200.
route_limit_percent
string
Specify the percentage of routes when a router starts to generate an alarm. The value is an integer ranging from 1 to 100.
route_limit_type
string
    Choices:
  • noparameter
  • alertOnly
  • idleForever
  • idleTimeout
Noparameter, After the number of received routes exceeds the threshold and the timeout timer expires,no action. AlertOnly, An alarm is generated and no additional routes will be accepted if the maximum number of routes allowed have been received. IdleForever, The connection that is interrupted is not automatically re-established if the maximum number of routes allowed have been received. IdleTimeout, After the number of received routes exceeds the threshold and the timeout timer expires, the connection that is interrupted is automatically re-established.
rt_updt_interval
string
Specify the minimum interval at which Update packets are sent. The value is an integer, in seconds. The value is an integer ranging from 0 to 600.
soostring
string
Configure the Site-of-Origin (SoO) extended community attribute. The value is a string of 3 to 21 characters.
substitute_as_enable
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, the function to replace a specified peer's AS number in the AS-Path attribute with the local AS number is enabled. If the value is false, the function to replace a specified peer's AS number in the AS-Path attribute with the local AS number is disabled.
update_pkt_standard_compatible
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, When the vpnv4 multicast neighbor receives and updates the message, the message has no label. If the value is false, When the vpnv4 multicast neighbor receives and updates the message, the message has label.
vpls_ad_disable
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, enable vpls-ad. If the value is false, disable vpls-ad.
vpls_enable
string
    Choices:
  • no_use ←
  • true
  • false
If the value is true, vpls enable. If the value is false, vpls disable.
vrf_name
string / required
Name of a BGP instance. The name is a case-sensitive string of characters. The BGP instance can be used only after the corresponding VPN instance is created.

Notes

Note

  • This module requires the netconf system service be enabled on the remote device being managed.

  • Recommended connection is netconf.

  • This module also works with local connections for legacy playbooks.

Examples

- name: CloudEngine BGP neighbor address family test
  hosts: cloudengine
  connection: local
  gather_facts: no
  vars:
    cli:
      host: "{{ inventory_hostname }}"
      port: "{{ ansible_ssh_port }}"
      username: "{{ username }}"
      password: "{{ password }}"
      transport: cli

  tasks:

  - name: "Config BGP peer Address_Family"
    community.network.ce_bgp_neighbor_af:
      state: present
      vrf_name: js
      af_type: ipv4uni
      remote_address: 192.168.10.10
      nexthop_configure: local
      provider: "{{ cli }}"

  - name: "Undo BGP peer Address_Family"
    community.network.ce_bgp_neighbor_af:
      state: absent
      vrf_name: js
      af_type: ipv4uni
      remote_address: 192.168.10.10
      nexthop_configure: local
      provider: "{{ cli }}"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
changed
boolean
always
check to see if a change was made on the device

Sample:
True
end_state
dictionary
always
k/v pairs of aaa params after module execution

Sample:
{'bgp neighbor af': {'af_type': 'ipv4uni', 'remote_address': '192.168.10.10', 'vrf_name': 'js'}, 'bgp neighbor af other': {'af_type': 'ipv4uni', 'nexthop_configure': 'local', 'vrf_name': 'js'}}
existing
dictionary
always
k/v pairs of existing aaa server

Sample:
{'bgp neighbor af': {'af_type': 'ipv4uni', 'remote_address': '192.168.10.10', 'vrf_name': 'js'}, 'bgp neighbor af other': {'af_type': 'ipv4uni', 'nexthop_configure': 'null', 'vrf_name': 'js'}}
proposed
dictionary
always
k/v pairs of parameters passed into module

Sample:
{'af_type': 'ipv4uni', 'nexthop_configure': 'local', 'remote_address': '192.168.10.10', 'state': 'present', 'vrf_name': 'js'}
updates
list / elements=string
always
command sent to the device

Sample:
['peer 192.168.10.10 next-hop-local']


Authors

  • wangdezhuang (@QijunPan)