summaryrefslogtreecommitdiffhomepage
path: root/wgengine/magicsock/debugknobs.go
diff options
context:
space:
mode:
authorvalscale <valerie@tailscale.com>2023-04-04 17:10:50 -0700
committerGitHub <noreply@github.com>2023-04-04 17:10:50 -0700
commit7bfb7744b72ef0cb2b0dcf8f0ff0bf2e5cb640ad (patch)
treebc4080eaea31f744930df8701c90da6282a244b1 /wgengine/magicsock/debugknobs.go
parentf475e5550cd92aee0cb81f96e808ae2f3b34ecbf (diff)
downloadtailscale-7bfb7744b72ef0cb2b0dcf8f0ff0bf2e5cb640ad.tar.xz
tailscale-7bfb7744b72ef0cb2b0dcf8f0ff0bf2e5cb640ad.zip
derp,magicsock: add debug envknobs for HTTP and derp server name (#7744)
Make developing derp easier by: 1. Creating an envknob telling clients to use HTTP to connect to derp servers, so devs don't have to acquire a valid TLS cert. 2. Creating an envknob telling clients which derp server to connect to, so devs don't have to edit the ACLs in the admin console to add a custom DERP map. 3. Explaining how the -dev and -a command lines args to derper interact. To use this: 1. Run derper with -dev. 2. Run tailscaled with TS_DEBUG_USE_DERP_HTTP=1 and TS_DEBUG_USE_DERP_ADDR=localhost This will result in the client connecting to derp via HTTP on port 3340. Fixes #7700 Signed-off-by: Val <valerie@tailscale.com>
Diffstat (limited to 'wgengine/magicsock/debugknobs.go')
-rw-r--r--wgengine/magicsock/debugknobs.go12
1 files changed, 9 insertions, 3 deletions
diff --git a/wgengine/magicsock/debugknobs.go b/wgengine/magicsock/debugknobs.go
index c8ec0e0c0..adfff17d2 100644
--- a/wgengine/magicsock/debugknobs.go
+++ b/wgengine/magicsock/debugknobs.go
@@ -33,13 +33,19 @@ var (
debugReSTUNStopOnIdle = envknob.RegisterBool("TS_DEBUG_RESTUN_STOP_ON_IDLE")
// debugAlwaysDERP disables the use of UDP, forcing all peer communication over DERP.
debugAlwaysDERP = envknob.RegisterBool("TS_DEBUG_ALWAYS_USE_DERP")
+ // debugDERPAddr sets the derp address manually, overriding the DERP map from control.
+ debugUseDERPAddr = envknob.RegisterString("TS_DEBUG_USE_DERP_ADDR")
+ // debugDERPUseHTTP tells clients to connect to DERP via HTTP on port 3340 instead of
+ // HTTPS on 443.
+ debugUseDERPHTTP = envknob.RegisterBool("TS_DEBUG_USE_DERP_HTTP")
// debugEnableSilentDisco disables the use of heartbeatTimer on the endpoint struct
// and attempts to handle disco silently. See issue #540 for details.
debugEnableSilentDisco = envknob.RegisterBool("TS_DEBUG_ENABLE_SILENT_DISCO")
- // DebugSendCallMeUnknownPeer sends a CallMeMaybe to a
- // non-existent destination every time we send a real
- // CallMeMaybe to test the PeerGoneNotHere logic.
+ // debugSendCallMeUnknownPeer sends a CallMeMaybe to a non-existent destination every
+ // time we send a real CallMeMaybe to test the PeerGoneNotHere logic.
debugSendCallMeUnknownPeer = envknob.RegisterBool("TS_DEBUG_SEND_CALLME_UNKNOWN_PEER")
+ // Hey you! Adding a new debugknob? Make sure to stub it out in the debugknob_stubs.go
+ // file too.
)
// inTest reports whether the running program is a test that set the