tailscale/ipn/ipnlocal
Mihai Parparita 62f4df3257 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>
2023-02-08 13:15:10 -08:00
..
testdata ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
c2n.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
cert_js.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
cert_test.go ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
cert.go ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
dnsconfig_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
expiry_test.go ipn/ipnlocal: handle more edge cases in netmap expiry timer 2023-02-06 20:32:25 -05:00
expiry.go ipn/ipnlocal: handle more edge cases in netmap expiry timer 2023-02-06 20:32:25 -05:00
local_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
local.go net/interfaces, net/netns: add node attributes to control default interface getting and binding 2023-02-08 13:15:10 -08:00
loglines_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
network-lock_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
network-lock.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_h2c.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_macios_ext.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
peerapi.go all: update to Go 1.20, use strings.CutPrefix/Suffix instead of our fork 2023-02-01 15:23:54 -08:00
profiles_test.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00
profiles.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00
serve_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
serve.go all: update to Go 1.20, use strings.CutPrefix/Suffix instead of our fork 2023-02-01 15:23:54 -08:00
ssh_stub.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ssh_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
ssh.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
state_test.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00