Summary
The firewall setup in band-server.ts only configures IPv4 rules via iptables. No ip6tables rules are applied. Hosts with AAAA records are reachable via IPv6 regardless of allow.net / deny.net.
Where
packages/runtime/src/band-server.ts:174-213 (setupFirewall)
A grep for ip6tables in the runtime returns no matches.
Impact
Bypass of all network restrictions for any host that publishes IPv6 records. Most major services (GitHub, Google, Cloudflare-fronted, etc.) have AAAA records.
Fix
Mirror the iptables logic onto ip6tables. Resolve hostnames for both A and AAAA records. Apply the same per-execution chain pattern.
Alternatively: disable IPv6 in the Lima VM provisioning (setup.ts) with sysctl net.ipv6.conf.all.disable_ipv6=1. Simpler than maintaining two firewall paths.
Summary
The firewall setup in
band-server.tsonly configures IPv4 rules viaiptables. Noip6tablesrules are applied. Hosts with AAAA records are reachable via IPv6 regardless ofallow.net/deny.net.Where
packages/runtime/src/band-server.ts:174-213(setupFirewall)A grep for
ip6tablesin the runtime returns no matches.Impact
Bypass of all network restrictions for any host that publishes IPv6 records. Most major services (GitHub, Google, Cloudflare-fronted, etc.) have AAAA records.
Fix
Mirror the iptables logic onto ip6tables. Resolve hostnames for both A and AAAA records. Apply the same per-execution chain pattern.
Alternatively: disable IPv6 in the Lima VM provisioning (
setup.ts) withsysctl net.ipv6.conf.all.disable_ipv6=1. Simpler than maintaining two firewall paths.