Go to file
2023-09-27 01:22:11 +03:00
defaults add network 2021-10-27 00:34:13 +03:00
handlers update 2023-09-24 03:48:12 +03:00
meta use yaml as extention instead of yml 2022-01-26 17:33:39 +03:00
tasks update 2023-09-24 03:48:12 +03:00
templates add network 2021-10-27 00:34:13 +03:00
.gitignore update 2021-10-27 17:08:42 +03:00
README.md test markdown 2023-09-27 01:22:11 +03:00

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

Limited support for network-scripts available for CentOS 7. Supported iterface types for network-scripts:

  • ethernet (default)
  • loopback
IPs and PBR with Network Manager
  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

Example for simple policy base routing with Network Manager:

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

Example with network-scripts:

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"