feature/relayserver,net/{netcheck,udprelay}: implement addr discovery (#16253)

The relay server now fetches IPs from local interfaces and external
perspective IP:port's via netcheck (STUN).

Updates tailscale/corp#27502

Signed-off-by: Jordan Whited <jordan@tailscale.com>
This commit is contained in:
Jordan Whited
2025-06-12 09:57:45 -07:00
committed by GitHub
parent 3b5ce9d1bc
commit 3ed76ceed3
4 changed files with 169 additions and 42 deletions

View File

@@ -10,7 +10,6 @@ import (
"errors"
"io"
"net/http"
"net/netip"
"sync"
"tailscale.com/envknob"
@@ -136,7 +135,7 @@ func (e *extension) relayServerOrInit() (relayServer, error) {
return nil, errors.New("TAILSCALE_USE_WIP_CODE envvar is not set")
}
var err error
e.server, _, err = udprelay.NewServer(*e.port, []netip.Addr{netip.MustParseAddr("127.0.0.1")})
e.server, _, err = udprelay.NewServer(e.logf, *e.port, nil)
if err != nil {
return nil, err
}