Documentation ¶
Overview ¶
Package tailscale contains Tailscale client code.
Index ¶
- Variables
- func BugReport(ctx context.Context, note string) (string, error)
- func CertPair(ctx context.Context, domain string) (certPEM, keyPEM []byte, err error)
- func CheckIPForwarding(ctx context.Context) error
- func CurrentDERPMap(ctx context.Context) (*tailcfg.DERPMap, error)
- func DeleteWaitingFile(ctx context.Context, baseName string) error
- func DoLocalRequest(req *http.Request) (*http.Response, error)
- func EditPrefs(ctx context.Context, mp *ipn.MaskedPrefs) (*ipn.Prefs, error)
- func ExpandSNIName(ctx context.Context, name string) (fqdn string, ok bool)
- func FileTargets(ctx context.Context) ([]apitype.FileTarget, error)
- func GetCertificate(hi *tls.ClientHelloInfo) (*tls.Certificate, error)
- func GetPrefs(ctx context.Context) (*ipn.Prefs, error)
- func GetWaitingFile(ctx context.Context, baseName string) (rc io.ReadCloser, size int64, err error)
- func Goroutines(ctx context.Context) ([]byte, error)
- func Logout(ctx context.Context) error
- func SetDNS(ctx context.Context, name, value string) error
- func Status(ctx context.Context) (*ipnstate.Status, error)
- func StatusWithoutPeers(ctx context.Context) (*ipnstate.Status, error)
- func WaitingFiles(ctx context.Context) ([]apitype.WaitingFile, error)
- func WhoIs(ctx context.Context, remoteAddr string) (*apitype.WhoIsResponse, error)
Constants ¶
This section is empty.
Variables ¶
var TailscaledSocket = paths.DefaultTailscaledSocket()
TailscaledSocket is the tailscaled Unix socket.
Functions ¶
func BugReport ¶ added in v1.8.0
BugReport logs and returns a log marker that can be shared by the user with support.
func CertPair ¶ added in v1.14.0
CertPair returns a cert and private key for the provided DNS domain.
It returns a cached certificate from disk if it's still valid.
func CheckIPForwarding ¶ added in v1.8.0
func CurrentDERPMap ¶ added in v1.12.0
CurrentDERPMap returns the current DERPMap that is being used by the local tailscaled. It is intended to be used with netcheck to see availability of DERPs.
func DeleteWaitingFile ¶ added in v1.8.0
func DoLocalRequest ¶
DoLocalRequest makes an HTTP request to the local machine's Tailscale daemon.
URLs are of the form http://local-tailscaled.sock/localapi/v0/whois?ip=1.2.3.4.
The hostname must be "local-tailscaled.sock", even though it doesn't actually do any DNS lookup. The actual means of connecting to and authenticating to the local Tailscale daemon vary by platform.
DoLocalRequest may mutate the request to add Authorization headers.
func ExpandSNIName ¶ added in v1.14.0
ExpandSNIName expands bare label name into the the most likely actual TLS cert name.
func FileTargets ¶ added in v1.8.0
func FileTargets(ctx context.Context) ([]apitype.FileTarget, error)
func GetCertificate ¶ added in v1.14.0
func GetCertificate(hi *tls.ClientHelloInfo) (*tls.Certificate, error)
GetCertificate fetches a TLS certificate for the TLS ClientHello in hi.
It returns a cached certificate from disk if it's still valid.
It's the right signature to use as the value of tls.Config.GetCertificate.
func GetWaitingFile ¶ added in v1.8.0
func Goroutines ¶
Goroutines returns a dump of the Tailscale daemon's current goroutines.
func SetDNS ¶ added in v1.10.0
SetDNS adds a DNS TXT record for the given domain name, containing the provided TXT value. The intended use case is answering LetsEncrypt/ACME dns-01 challenges.
The control plane will only permit SetDNS requests with very specific names and values. The name should be "_acme-challenge." + your node's MagicDNS name. It's expected that clients cache the certs from LetsEncrypt (or whichever CA is providing them) and only request new ones as needed; the control plane rate limits SetDNS requests.
This is a low-level interface; it's expected that most Tailscale users use a higher level interface to getting/using TLS certificates.
func StatusWithoutPeers ¶ added in v1.8.0
StatusWithPeers returns the Tailscale daemon's status, without the peer info.
func WaitingFiles ¶ added in v1.8.0
func WaitingFiles(ctx context.Context) ([]apitype.WaitingFile, error)
Types ¶
This section is empty.