Puppet Class: nftables::rules::mdns

Defined in:
manifests/rules/mdns.pp

Summary

allow incoming multicast DNS

Overview

Parameters:

  • ipv4 (Boolean) (defaults to: true)

    Allow mdns over IPv4

  • ipv6 (Boolean) (defaults to: true)

    Allow mdns over IPv6

  • iifname (Array[String[1]]) (defaults to: [])

    name for incoming interfaces to filter



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'manifests/rules/mdns.pp', line 10

class nftables::rules::mdns (
  Boolean $ipv4 = true,
  Boolean $ipv6 = true,
  Array[String[1]] $iifname = [],
) {
  if empty($iifname) {
    $_iifname = ''
  } else {
    $iifdata = $iifname.map |String[1] $interface| { "\"${interface}\"" }.join(', ')
    $_iifname = "iifname { ${iifdata} } "
  }
  if $ipv4 {
    nftables::rule { 'default_in-mdns_v4':
      content => "${_iifname}ip daddr 224.0.0.251 udp dport 5353 accept",
    }
  }
  if $ipv6 {
    nftables::rule { 'default_in-mdns_v6':
      content => "${_iifname}ip6 daddr ff02::fb udp dport 5353 accept",
    }
  }
}