mirror of
https://gitea.0xace.cc/ansible-galaxy/network.git
synced 2024-11-24 22:36:38 +00:00
79 lines
1.9 KiB
Markdown
79 lines
1.9 KiB
Markdown
# Idempotent ansible role for network
|
|
Configure interfaces and pbr for RedHat and Debian based distros
|
|
|
|
Supported OS with Network Manager:
|
|
- Rocky Linux 8/9
|
|
- AlmaLinux 8/9
|
|
- CentOS 7
|
|
- Debian 11/12
|
|
- Ubuntu 20.04/22.04/24.04
|
|
|
|
Limited support for network-scripts available for CentOS 7.
|
|
Supported interface types for network-scripts:
|
|
- ethernet (default)
|
|
- loopback
|
|
|
|
Examples:
|
|
<details>
|
|
<summary>IPs and PBR with Network Manager</summary>
|
|
|
|
network:
|
|
network_manager:
|
|
iface:
|
|
- conn_name: ens256
|
|
ip4:
|
|
- "100.127.2.2/29"
|
|
routes4:
|
|
- 0.0.0.0/0 100.127.2.6 table=200
|
|
- 100.127.2.0/29 100.127.2.2 table=200
|
|
- conn_name: dummy0
|
|
type: dummy
|
|
ip4:
|
|
- "18.12.3.1/32"
|
|
routing_rules4:
|
|
- priority 5 from 18.12.3.1 table 200
|
|
|
|
</details>
|
|
|
|
<details>
|
|
<summary>Simple policy base routing with Network Manager</summary>
|
|
|
|
network:
|
|
network_manager:
|
|
iface:
|
|
- conn_name: 'System eth1'
|
|
routes4:
|
|
- 0.0.0.0/0 192.168.78.1 table=400
|
|
routing_rules4:
|
|
- priority 10 from {{ ansible_eth1.ipv4.address }} table 400
|
|
- priority 10 from 192.168.78.251 table 400
|
|
|
|
</details>
|
|
|
|
<details>
|
|
<summary>IPs and PBR with network-scripts</summary>
|
|
|
|
network:
|
|
network_scripts:
|
|
iface:
|
|
- name: ens256
|
|
ip:
|
|
- ipaddr: "100.127.2.2"
|
|
prefix: "29"
|
|
- name: lo
|
|
type: loopback
|
|
ip:
|
|
- ipaddr: "18.12.3.1"
|
|
prefix: "32"
|
|
route:
|
|
- default table 200 via 100.127.2.6
|
|
- 100.127.2.0/29 table 200 via 100.127.2.2
|
|
rule:
|
|
- from 18.12.3.1 table 200
|
|
pbr:
|
|
table:
|
|
- number: 200
|
|
name: "prod"
|
|
|
|
</details>
|