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/cmd/tailscale/cli
Anton Tolchanov 8cc5c51888 health: warn about reverse path filtering and exit nodes
When reverse path filtering is in strict mode on Linux, using an exit
node blocks all network connectivity. This change adds a warning about
this to `tailscale status` and the logs.

Example in `tailscale status`:

```
- not connected to home DERP region 22
- The following issues on your machine will likely make usage of exit nodes impossible: [interface "eth0" has strict reverse-path filtering enabled], please set rp_filter=2 instead of rp_filter=1; see https://github.com/tailscale/tailscale/issues/3310
```

Example in the logs:
```
2024/02/21 21:17:07 health("overall"): error: multiple errors:
	not in map poll
	The following issues on your machine will likely make usage of exit nodes impossible: [interface "eth0" has strict reverse-path filtering enabled], please set rp_filter=2 instead of rp_filter=1; see https://github.com/tailscale/tailscale/issues/3310
```

Updates #3310

Signed-off-by: Anton Tolchanov <anton@tailscale.com>
3 months ago
..
bugreport.go all: update copyright and license headers 1 year ago
cert.go all: update copyright and license headers 1 year ago
cli.go cmd/tailscale: hide share subcommand 4 months ago
cli_test.go all: use reflect.TypeFor now available in Go 1.22 (#11078) 4 months ago
configure-kube.go all: use Go 1.21 slices, maps instead of x/exp/{slices,maps} 10 months ago
configure-kube_test.go cmd/tailscale/cli: add "configure kubeconfig" subcommand 1 year ago
configure-synology.go all: replace /kb/ links with /s/ equivalents 1 year ago
configure.go cmd/tailscale/cli: update docs and unhide configure 1 year ago
debug.go cli/debug: rename DERP debug mode (#11220) 3 months ago
diag.go various: add detection and Taildrop for Unraid 1 year ago
diag_other.go all: update copyright and license headers 1 year ago
down.go all: update copyright and license headers 1 year ago
exitnode.go cmd/tailscale/cli: add description to exit-node CLI command 5 months ago
exitnode_test.go cli: introduce exit-node subcommand to list and filter exit nodes 10 months ago
file.go cmd/tailscale: improve taildrop progress printer on Linux (#9878) 8 months ago
funnel.go cmd/tailscale/cli: use status before doing interactive feature query 7 months ago
id-token.go all: update copyright and license headers 1 year ago
ip.go all: update copyright and license headers 1 year ago
licenses.go cmd/tailscale: refactor shared utility methods 10 months ago
login.go all: update copyright and license headers 1 year ago
logout.go all: update copyright and license headers 1 year ago
nc.go all: update copyright and license headers 1 year ago
netcheck.go net/netcheck: use DERP frames as a signal for home region liveness 6 months ago
network-lock.go all: implement lock revoke-keys command 10 months ago
ping.go wgengine,ipn,cmd/tailscale: add size option to ping (#8739) 10 months ago
risks.go util/testenv: add new package to hold InTest 10 months ago
serve_legacy.go cmd/tailscale/cli: use status before doing interactive feature query 7 months ago
serve_legacy_test.go cmd/tailscale/cli: use status before doing interactive feature query 7 months ago
serve_v2.go cmd/tailscale/cli: run Watch with NotifyNoPrivateKeys (#10950) 4 months ago
serve_v2_test.go all: cleanup unused code, part 2 (#10670) 5 months ago
set.go cli/set: add printout when web client started 5 months ago
set_test.go all: update copyright and license headers 1 year ago
share.go cmd/tailscale: add node attribute instructions to share command help 3 months ago
ssh.go cmd/tailscale/cli: pass "-o 'CanonicalizeHostname no'" to ssh 3 months ago
ssh_exec.go all: update copyright and license headers 1 year ago
ssh_exec_js.go all: update copyright and license headers 1 year ago
ssh_exec_windows.go all: update copyright and license headers 1 year ago
ssh_unix.go types/logger, cmd/tailscale/cli: flesh out, simplify some non-unix build tags 9 months ago
status.go cmd/tailscale/cli: fix exit node status output (#11076) 4 months ago
switch.go ipn/ipnlocal,cmd/tailscale: persist tailnet name in user profile 7 months ago
up.go health: warn about reverse path filtering and exit nodes 3 months ago
update.go clientupdate: add explicit Track to Arguments (#10548) 6 months ago
version.go cmd/tailscale/cli,clientupdate: extract new clientupdate package (#8827) 10 months ago
web.go cmd/tailscale: support clickable IPv6 web client addresses 4 months ago
web_test.go client/web: extract web client from cli package 10 months ago
whois.go cmd/tailscale/cli: document usage more clearly (#10681) 5 months ago