W3cubDocs

/Ansible

community.network.ce_static_route – Manages static route configuration on HUAWEI CloudEngine switches.

Note

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

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

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

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

Synopsis

  • Manages the static routes on HUAWEI CloudEngine switches.

Parameters

Parameter Choices/Defaults Comments
aftype
string / required
    Choices:
  • v4
  • v6
Destination ip address family type of static route.
description
string
Name of the route. Used with the name parameter on the CLI.
destvrf
string
VPN instance of next hop ip address.
mask
string / required
Destination ip mask of static route.
next_hop
string
Next hop address of static route.
nhp_interface
string
Next hop interface full name of static route.
pref
string
Preference or administrative difference of route (range 1-255).
prefix
string / required
Destination ip address of static route.
state
string
    Choices:
  • present
  • absent
Specify desired state of the resource.
tag
string
Route tag value (numeric).
vrf
string
VPN instance of destination ip address.

Notes

Note

  • If no vrf is supplied, vrf is set to default.
  • If state=absent, the route will be removed, regardless of the non-required parameters.
  • 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: Static route module 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 a ipv4 static route, next hop is an address and that it has the proper description
    community.network.ce_static_route:
      prefix: 2.1.1.2
      mask: 24
      next_hop: 3.1.1.2
      description: 'Configured by Ansible'
      aftype: v4
      provider: "{{ cli }}"
  - name: Config a ipv4 static route ,next hop is an interface and that it has the proper description
    community.network.ce_static_route:
      prefix: 2.1.1.2
      mask: 24
      next_hop: 10GE1/0/1
      description: 'Configured by Ansible'
      aftype: v4
      provider: "{{ cli }}"
  - name: Config a ipv6 static route, next hop is an address and that it has the proper description
    community.network.ce_static_route:
      prefix: fc00:0:0:2001::1
      mask: 64
      next_hop: fc00:0:0:2004::1
      description: 'Configured by Ansible'
      aftype: v6
      provider: "{{ cli }}"
  - name: Config a ipv4 static route, next hop is an interface and that it has the proper description
    community.network.ce_static_route:
      prefix: fc00:0:0:2001::1
      mask: 64
      next_hop: 10GE1/0/1
      description: 'Configured by Ansible'
      aftype: v6
      provider: "{{ cli }}"
  - name: Config a VRF and set ipv4 static route, next hop is an address and that it has the proper description
    community.network.ce_static_route:
      vrf: vpna
      prefix: 2.1.1.2
      mask: 24
      next_hop: 3.1.1.2
      description: 'Configured by Ansible'
      aftype: v4
      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 switchport after module execution

Sample:
{'description': 'testing', 'mask': '24', 'next_hop': '3.3.3.3', 'pref': '100', 'prefix': '192.168.20.0', 'tag': 'null'}
existing
dictionary
always
k/v pairs of existing switchport

proposed
dictionary
always
k/v pairs of parameters passed into module

Sample:
{'description': 'testing', 'mask': '24', 'next_hop': '3.3.3.3', 'pref': '100', 'prefix': '192.168.20.642', 'vrf': '_public_'}
updates
list / elements=string
always
command list sent to the device

Sample:
['ip route-static 192.168.20.0 255.255.255.0 3.3.3.3 preference 100 description testing']


Authors

  • Yang yang (@QijunPan)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/network/ce_static_route_module.html