tailscale/wgengine
Avery Pennarun e7ae6a2e06 net/netns, wgengine/router: support Linux machines that don't have 'ip rule'.
We'll use SO_BINDTODEVICE instead of fancy policy routing. This has
some limitations: for example, we will route all traffic through the
interface that has the main "default" (0.0.0.0/0) route, so machines
that have multiple physical interfaces might have to go through DERP to
get to some peers. But machines with multiple physical interfaces are
very likely to have policy routing (ip rule) support anyway.

So far, the only OS I know of that needs this feature is ChromeOS
(crostini). Fixes #245.

Signed-off-by: Avery Pennarun <apenwarr@tailscale.com>
2020-05-31 04:31:01 -04:00
..
filter wgengine/filter: implement a destination IP pre-filter. 2020-05-22 17:03:30 +00:00
magicsock net/netns: set the bypass socket mark on linux. 2020-05-29 15:16:58 -07:00
monitor wgengine/monitor: disable monitor on Android 2020-04-24 06:35:31 -07:00
packet wgengine/packet: add some tests, more docs, minor Go style, performance changes 2020-05-25 08:58:10 -07:00
router net/netns, wgengine/router: support Linux machines that don't have 'ip rule'. 2020-05-31 04:31:01 -04:00
tstun tstun: tolerate zero reads 2020-05-27 14:32:09 -04:00
winnet Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
rusage_nowindows.go wgengine: flesh out some docs 2020-02-12 13:37:45 -08:00
rusage_windows.go Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
rusage.go Move "logger" package to under types, now that we have it. 2020-02-14 20:23:05 -08:00
userspace.go wgengine: separately dedupe wireguard configs and router configs. 2020-05-31 02:37:58 -04:00
watchdog_test.go net/netns: set the bypass socket mark on linux. 2020-05-29 15:16:58 -07:00
watchdog.go all: make client use server-provided DERP map, add DERP region support 2020-05-23 22:31:59 -07:00
wgengine.go all: make client use server-provided DERP map, add DERP region support 2020-05-23 22:31:59 -07:00