tailscale/net/netns
Mihai Parparita a8231b18cc net/interfaces, net/netns: add node attributes to control default interface getting and binding
With #6566 we started to more aggressively bind to the default interface
on Darwin. We are seeing some reports of the wrong cellular interface
being chosen on iOS. To help with the investigation, this adds to knobs
to control the behavior changes:
- CapabilityDebugDisableAlternateDefaultRouteInterface disables the
  alternate function that we use to get the default interface on macOS
  and iOS (implemented in tailscale/corp#8201). We still log what it
  would have returned so we can see if it gets things wrong.
- CapabilityDebugDisableBindConnToInterface is a bigger hammer that
  disables binding of connections to the default interface altogether.

Updates #7184
Updates #7188

Signed-off-by: Mihai Parparita <mihai@tailscale.com>
(cherry picked from commit 62f4df3257)
2023-02-08 13:56:29 -08:00
..
netns.go net/interfaces, net/netns: add node attributes to control default interface getting and binding 2023-02-08 13:56:29 -08:00
netns_android.go all: remove old +build tags 2022-11-04 07:25:42 -07:00
netns_darwin.go net/interfaces, net/netns: add node attributes to control default interface getting and binding 2023-02-08 13:56:29 -08:00
netns_darwin_test.go net/netns: add functionality to bind outgoing sockets based on route table 2023-02-08 13:56:03 -08:00
netns_default.go net/netns, net/interfaces: explicitly bind sockets to the default interface on all Darwin variants 2022-12-05 13:33:20 -08:00
netns_linux.go all: remove old +build tags 2022-11-04 07:25:42 -07:00
netns_linux_test.go net/netns: support !CAP_NET_ADMIN 2021-07-14 10:01:14 -07:00
netns_test.go net/netns: thread logf into control functions 2021-11-18 15:09:51 -08:00
netns_windows.go util/endian: delete package; use updated josharian/native instead 2022-12-12 20:12:45 -08:00
socks.go all: remove old +build tags 2022-11-04 07:25:42 -07:00