You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/wgengine/router
Avery Pennarun f69003fd46 router_linux: work around terrible bugs in old iptables-compat versions.
Specifically, this sequence:
	iptables -N ts-forward
	iptables -A ts-forward -m mark --mark 0x10000 -j ACCEPT
	iptables -A FORWARD -j ts-forward
doesn't work on Debian-9-using-nftables, but this sequence:
	iptables -N ts-forward
	iptables -A FORWARD -j ts-forward
	iptables -A ts-forward -m mark --mark 0x10000 -j ACCEPT
does work.

I'm sure the reason why is totally fascinating, but it's an old version
of iptables and the bug doesn't seem to exist on modern nftables, so
let's refactor our code to add rules in the always-safe order and
pretend this never happened.

Fixes #401.

Signed-off-by: Avery Pennarun <apenwarr@tailscale.com>
4 years ago
..
ifconfig_windows.go wgengine/router: rename config.Settings to config.Config, make pointer. 4 years ago
router.go ipn: plumb NetfilterMode all the way out to the CLI. 4 years ago
router_darwin.go wgengine/router: rename config.Settings to config.Config, make pointer. 4 years ago
router_darwin_support.go router_darwin_support: we can build this on every platform. 4 years ago
router_default.go wgengine/router: split out from wgengine. 4 years ago
router_fake.go wgengine/router: rename config.Settings to config.Config, make pointer. 4 years ago
router_freebsd.go wgengine/router: rename config.Settings to config.Config, make pointer. 4 years ago
router_linux.go router_linux: work around terrible bugs in old iptables-compat versions. 4 years ago
router_linux_test.go router_linux: remove need for iptables.ListChains(). 4 years ago
router_openbsd.go wgengine/router: rename config.Settings to config.Config, make pointer. 4 years ago
router_windows.go wgengine/router: rename config.Settings to config.Config, make pointer. 4 years ago
runner.go router_linux: remove need for iptables.ListChains(). 4 years ago