This role generates Junos configurations for EBGP underlay connectivity.
The role will automatically:
- Discover the links connecting the devices in the underlay group,
- Generate the underlay IP address configurations,
- Assign a unique ASN to each device and generate the EBGP configurations to establish BGP peering over the physical interfaces and redistribute the loopback interface addresses.
roles:
ebgp_underlay_config_dir
(default"{{ inventory_dir }}/_ebgp_underlay_configs"
): The path to the directory in which configuration files will be saved. If the folder specified does not exist, it will be automatically created.underlay_group
(default"ip_underlay"
): A group name that should also be defined in the inventory file. Only devices that are members of this group will be discovered and configured.asn_start
(default"4200000100"
): the first Autonomous System Number (ASN) that will be assigned to the first device. Further ASNs will be picked incrementally from this value. The default value represents a 32-bits ASN. However, the variable is just a string, therefore it can be also used to represent a 16-bit ASN e.g."65000"
enable_load_balancing
(default yes): If yes, it will generate the configuration to enable load balancing on control and forwarding plane. This includes a load balancing policy applied to the PFE along with multi-path multiple AS option in the BGP configuration.ebgp_config_group_name
(default"ebgp-underlay"
): the name that will be given to the BGP group in the configuration;
# my_playbook.yml
- name: Generate IP and EBGP underlay configuration
hosts: ip_underlay
connection: local
gather_facts: no
tasks:
- name: Generate IP and EBGP underlay configuration
include_role:
name: dana_junos_ebgp_underlay
public: yes
# Apply tags required to make role's tasks inherit the desired tags
apply:
tags:
- always
tags:
- always
BSD
Luigi Stammati