Switch to using a script to dynamically spin up the netgraph bridge for jails.

This commit is contained in:
Tom Alexander
2023-04-25 18:33:19 -04:00
parent be2e0c964b
commit ba7567ad9c
7 changed files with 159 additions and 106 deletions

View File

@@ -1,6 +1,8 @@
ext_if = "{ igb0 igb1 ix0 ix1 wlan0 }"
jail_net_v4 = "10.193.223.0/24"
full_nat_v4 = "10.213.177.0/24"
ext_if = "{ wlan0 }"
not_ext_if = "{ !wlan0 }"
jail_nat_v4 = "{ 10.193.223.0/24 10.213.177.0/24 10.215.1.0/24 }"
not_jail_nat_v4 = "{ any, !10.193.223.0/24 !10.213.177.0/24 !10.215.1.0/24 }"
dns_redirect = "{ 10.193.223.1 10.213.177.1 10.215.1.1 }"
dhcp = "{ bootpc, bootps }"
allow = "{ wgf wgh drmario colo }"
@@ -14,16 +16,13 @@ udp_pass_in = "{ 53 51820 }"
set skip on lo
# redirections
nat on $ext_if inet from $jail_net_v4 to { any, !$jail_net_v4 } tag ALLOWED -> (wlan0)
nat on $ext_if inet from $full_nat_v4 to { any, !$full_nat_v4 } tag ALLOWED -> (wlan0)
rdr on host_uplink0 inet proto {tcp, udp} from any to 10.193.223.1 port 53 tag ALLOWED -> 1.1.1.1 port 53
rdr on host_uplink1 inet proto {tcp, udp} from any to 10.213.177.1 port 53 tag ALLOWED -> 1.1.1.1 port 53
nat pass on $ext_if inet from $jail_nat_v4 to $not_jail_nat_v4 -> (wlan0)
rdr pass on $not_ext_if proto {tcp, udp} from any to 10.215.1.1 port 53 -> 1.1.1.1 port 53
# filtering
block log all
pass quick on $ext_if tagged ALLOWED
pass out on $ext_if
pass in on jail_nat
# We pass on the interfaces listed in allow rather than skipping on
# them because changes to pass rules will update when running a
@@ -37,9 +36,3 @@ pass on $ext_if proto icmp6 all
pass in on $ext_if proto tcp to any port $tcp_pass_in
pass in on $ext_if proto udp to any port $udp_pass_in
pass quick on $ext_if proto udp from any port $dhcp to any port $dhcp
pass in on host_uplink0 proto udp from any to any port { 53 51820 }
pass out on host_uplink0 proto tcp from any to any port 8081
pass on host_uplink1