Home | History | Annotate | Line # | Download | only in npftest
npftest.conf revision 1.17
      1  1.17   mlelstv # $NetBSD: npftest.conf,v 1.17 2025/08/10 09:01:53 mlelstv Exp $
      2   1.1     rmind 
      3   1.1     rmind $ext_if = "npftest0"
      4   1.1     rmind $int_if = "npftest1"
      5   1.1     rmind 
      6   1.9     rmind set portmap.min_port 1024
      7   1.9     rmind set portmap.max_port 65535
      8   1.9     rmind 
      9   1.1     rmind #
     10   1.1     rmind # RFC 5737
     11   1.1     rmind #
     12   1.1     rmind 
     13   1.1     rmind $pub_ip1 = 192.0.2.1
     14   1.1     rmind $pub_ip2 = 192.0.2.2
     15   1.4     rmind $pub_ip3 = 192.0.2.3
     16   1.1     rmind 
     17   1.1     rmind $local_ip1 = 10.1.1.1
     18   1.1     rmind $local_ip2 = 10.1.1.2
     19   1.1     rmind $local_ip3 = 10.1.1.3
     20   1.1     rmind $local_ip4 = 10.1.1.4
     21  1.13       joe $Kojo = 1001
     22  1.13       joe $wheel = 20
     23   1.1     rmind 
     24   1.1     rmind $local_net = { 10.1.1.0/24 }
     25   1.1     rmind $ports = { 8000, 9000 }
     26   1.1     rmind 
     27  1.14       joe #
     28  1.14       joe # RFC 7042
     29  1.14       joe #
     30  1.14       joe # 00:00:5E:00:53:00 - 00:00:5E:00:53:FF
     31  1.14       joe $mac1 = 00:00:5E:00:53:00
     32  1.14       joe $mac2 = 00:00:5E:00:53:01
     33  1.14       joe $mac3 = 00:00:5E:00:53:02
     34  1.16       joe $nested_mac4 = { 00:00:5E:00:53:03, 00:00:5E:00:53:04, 00:00:5E:00:53:05 }
     35  1.14       joe 
     36   1.4     rmind map $ext_if static $local_ip3 <-> $pub_ip3
     37   1.1     rmind map $ext_if dynamic $local_ip2 <-> $pub_ip2
     38   1.1     rmind map $ext_if dynamic $local_net -> $pub_ip1
     39   1.1     rmind map $ext_if dynamic $local_ip1 port 6000 <- $pub_ip1 port 8000
     40   1.1     rmind 
     41   1.6     rmind $net6_inner = fd01:203:405::/48
     42   1.6     rmind $net6_outer = 2001:db8:1::/48
     43   1.6     rmind 
     44  1.10  riastrad # Example of multiple addresses with a common 32-bit word, taken from
     45  1.10  riastrad # PR bin/55403: npfctl miscompiles IPv6 rules.
     46  1.12  riastrad $net6_pr55403 = { fe80::1, fe80::1000:0:0/95, fe80::2, fe80::2000:0:0/96, fe80::3, fe80::3000:0:0/97 }
     47  1.10  riastrad 
     48   1.6     rmind $net_a = 10.100.0.0/16
     49   1.6     rmind $net_b = 10.255.0.0/16
     50   1.6     rmind 
     51   1.5     rmind map $ext_if static algo npt66 $net6_inner <-> $net6_outer
     52   1.6     rmind map $ext_if static algo netmap $net_a <-> $net_b
     53   1.8     rmind map ruleset "map:some-daemon" on $ext_if
     54   1.5     rmind 
     55   1.3     rmind group "ext" on $ext_if {
     56   1.4     rmind 	pass out final from $local_ip3
     57   1.4     rmind 	pass in final to $pub_ip3
     58  1.15       joe 	pass in final from $local_ip4 port 8000-10000 user $Kojo group $wheel
     59  1.13       joe 	block out final to 127.0.0.1 user > $Kojo group 1 >< $wheel
     60   1.4     rmind 
     61   1.5     rmind 	pass out final from $net6_inner
     62   1.5     rmind 	pass in final to $net6_outer
     63   1.5     rmind 
     64   1.6     rmind 	pass out final from $net_a
     65   1.6     rmind 	pass in final to $net_b
     66   1.6     rmind 
     67   1.1     rmind 	pass stateful out final proto tcp flags S/SA all
     68   1.1     rmind 	pass stateful out final from $local_net
     69   1.1     rmind 	pass stateful in final to any port $ports
     70   1.1     rmind 	pass stateful in final proto icmp all
     71  1.10  riastrad 
     72   1.1     rmind 	block all
     73   1.1     rmind }
     74   1.1     rmind 
     75   1.3     rmind group "int" on $int_if {
     76   1.3     rmind 	ruleset "test-rules"
     77  1.17   mlelstv 	block in final from $local_ip3
     78   1.1     rmind 	pass stateful out final to $local_ip2
     79   1.1     rmind 	pass out final to $local_ip3
     80   1.1     rmind 	block final to $local_ip4
     81  1.11  riastrad 
     82  1.11  riastrad 	pass in final family inet6 proto udp from $net6_pr55403
     83  1.11  riastrad 	pass in final family inet6 proto udp from ! $net6_pr55403 to $net6_pr55403
     84   1.1     rmind }
     85   1.1     rmind 
     86  1.14       joe group "ext2" on $int_if layer-2 {
     87  1.14       joe 	ruleset "l2-ruleset" layer-2
     88  1.14       joe 	pass ether in final from $mac1 to $mac2 type Ex86DD
     89  1.14       joe 	block ether in final from $mac2
     90  1.14       joe 	pass ether out final to $mac3 type Ex809B
     91  1.16       joe 	pass ether in final from $nested_mac4
     92  1.14       joe }
     93  1.14       joe 
     94   1.3     rmind group default {
     95   1.1     rmind 	block all
     96   1.1     rmind }
     97  1.14       joe 
     98  1.14       joe group default layer-2 {
     99  1.14       joe 	block ether all
    100  1.14       joe }
    101