我正在寻求一些帮助来配置路由器之间的子网
- 请参考图1
图表:
路由器标识来自主机变量文件
例如。
ansible_host: 10.10.10.1
ID: 1
和
ansible_host: 10.10.10.2
ID: 2
我想在路由器 1 和 2 之间构建一个子网,如下所示 172.16.{12}.1/30 和 172.16.{12}.2/30,如果连接困难,那么 10.{1}.{2}.1 和 10.{1}.{2}.2/30 也可以
我一直在关注这个很棒的博客作为指导
https://nwmichl.net/2020/07/05/fix-your-interface-description-with-ansible-and-cdp-lldp/
所以这个想法是
- 找到网上邻居(根据事实)
{
"net_neighbors": {
"GigabitEthernet2": [
{
"host": "CSR-2.example.com",
"port": "GigabitEthernet2"
}
],
"GigabitEthernet3": [
{
"host": "CSR-2.example.com",
"port": "GigabitEthernet3"
}
]
}
}
net_neighbors:
GigabitEthernet2:
- host: CSR-2.example.com
port: GigabitEthernet2
GigabitEthernet3:
- host: CSR-2.example.com
port: GigabitEthernet3
2、查找邻居的 ID -> nebr_id(来自主机变量)3. 将 IP 约定为 10.{my_id}.{nebr_id}.x 255.255.255.252 4. 如果my_id < nebr_id
,x=1,否则 x=2(假设没有多路径)
如果有帮助的话,这是我用来配置环回的代码
- name: ip config for IOSXR
gather_facts: false
connection: network_cli
hosts: xr
tasks:
- set_fact:
ip_addr: "{{ '172.16.0.0/24' | ansible.utils.nthhost(ID) }}"
- name: ip config for loopback (iosxr)
cisco.iosxr.iosxr_config:
lines:
- description anchor interface
- ip address {{ ip_addr }} 255.255.255.255
parents: interface Loopback0
希望这些信息足够了,
桑吉瓦