Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

root / manifests / bridges.pp @ 26cdcbbd

Historique | Voir | Annoter | Télécharger (761 octets)

1 fd0eaeca tr
# allow forwarding traffic on bridges
2 11bf7237 Steve Traylen
class nftables::bridges (
3 09cba182 Steve Traylen
  # lint:ignore:parameter_documentation
4 31b17627 Steve Traylen
  Enum['present','absent'] $ensure = 'present',
5
  Regexp $bridgenames = /^br.+/
6 09cba182 Steve Traylen
  # lint:endignore
7 fd0eaeca tr
) {
8
  if $ensure == 'present' {
9 26cdcbbd Kienan Stewart
    if $facts['networking'] {
10
      $interfaces = keys($facts['networking']['interfaces'])
11
    }
12
    else {
13
      $interfaces = split($facts['interfaces'], ',')
14
    }
15 fd0eaeca tr
    $bridges = $interfaces.filter |$items| { $items =~ $bridgenames }
16
17
    $bridges.each |String $bridge| {
18 2c00d766 tr
      $bridge_rulename = regsubst($bridge, '-', '_', 'G')
19
      nftables::rule { "default_fwd-bridge_${bridge_rulename}_${bridge_rulename}":
20 fd0eaeca tr
        order   => '08',
21
        content => "iifname ${bridge} oifname ${bridge} accept",
22
      }
23
    }
24
  }
25
}