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/ipn
Nick Khyl caa3d7594f ipn/ipnlocal, net/tsdial: plumb routes into tsdial and use them in UserDial
We'd like to use tsdial.Dialer.UserDial instead of SystemDial for DNS over TCP.
This is primarily necessary to properly dial internal DNS servers accessible
over Tailscale and subnet routes. However, to avoid issues when switching
between Wi-Fi and cellular, we need to ensure that we don't retain connections
to any external addresses on the old interface. Therefore, we need to determine
which dialer to use internally based on the configured routes.

This plumbs routes and localRoutes from router.Config to tsdial.Dialer,
and updates UserDial to use either the peer dialer or the system dialer,
depending on the network address and the configured routes.

Updates tailscale/corp#18725
Fixes #4529

Signed-off-by: Nick Khyl <nickk@tailscale.com>
2 years ago
..
conffile ipn/{conffile,ipnlocal}: start booting tailscaled from a config file w/ auth key 2 years ago
ipnauth go.mod, all: move away from inet.af domain seized by Taliban 2 years ago
ipnlocal ipn/ipnlocal, net/tsdial: plumb routes into tsdial and use them in UserDial 2 years ago
ipnserver ipn/{ipnlocal,localapi},wgengine{,/magicsock}: plumb health.Tracker 2 years ago
ipnstate ipn/ipnlocal: populate peers' capabilities (#11365) 2 years ago
localapi appc: setting AdvertiseRoutes explicitly discards app connector routes 2 years ago
policy ipn,tailconfig: clean up unreleased and removed app connector service 2 years ago
store cmd/containerboot,kube,ipn/store/kubestore: allow interactive login on kube, check Secret create perms, allow empty state Secret (#11326) 2 years ago
backend.go ipn: remove unused Options.LegacyMigrationPrefs 2 years ago
conf.go cmd/k8s-operator,ipn/conf.go: fix --accept-routes for proxies (#11453) 2 years ago
doc.go all: update copyright and license headers 3 years ago
ipn_clone.go ipn/{localapi, ipnlocal}: forget the prior exit node when localAPI is used to zero the ExitNodeID (#11681) 2 years ago
ipn_test.go net/packet: split off checksum munging into different pkg 2 years ago
ipn_view.go ipn/{localapi, ipnlocal}: forget the prior exit node when localAPI is used to zero the ExitNodeID (#11681) 2 years ago
prefs.go all: use Go 1.22 range-over-int 2 years ago
prefs_test.go all: use Go 1.22 range-over-int 2 years ago
serve.go all: deprecate Node.Capabilities (more), remove PeerChange.Capabilities [capver 89] 2 years ago
serve_test.go {ipn/serve,cmd/tailscale/cli}: move some shared funcs to ipn 2 years ago
store.go ipn: add comment about thread-safety to StateStore 2 years ago
store_test.go ipn: avoid useless no-op WriteState calls 2 years ago