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.
 
 
 
 
 
 
Go to file
David Crawshaw a6ad3c46e2 magicsock: spray some normal packets after a handshake
In particular, this is designed to catch the case where a
HandshakeInitiation packet is sent out but the intermediate NATs
have not been primed, so the packet passes over DERP.
In that case, the HandshakeResponse also comes back over DERP,
and the connection proceeds via DERP without ever trying to punch
through the NAT.

With this change, the HandshakeResponse (which was sprayed out
and so primed one NAT) triggers an UpdateDst, which triggers
the extra spray logic.

(For this to work, there has to be an initial supply of packets
to send on to a peer for the three seconds following a handshake.
The source of these packets is left as a future exercise.)

Signed-off-by: David Crawshaw <crawshaw@tailscale.com>
4 years ago
.github Remove the explicit security redirect. 4 years ago
atomicfile Move Linux client & common packages into a public repo. 4 years ago
cmd cmd/mkpkg: add flags for debian scripts. 4 years ago
control/controlclient control/controlclient: fix priority of DERP server, add comment 4 years ago
derp derp: fix JSON field typo, sort fields to make it easier to see inconsistencies 4 years ago
interfaces interfaces, cmd/tsshd: move interface lookup from tsshd to its own package 4 years ago
ipn ipn: use *Prefs rather than Prefs throughout. 4 years ago
logpolicy logpolicy: automatically figure out paths and filenames. 4 years ago
logtail logtail/filch: use x/sys/unix instead of syscall. 4 years ago
portlist portlist: add a lint ignore for unused function. 4 years ago
ratelimit Move Linux client & common packages into a public repo. 4 years ago
safesocket safesocket: simplify API. 4 years ago
stun Move Linux client & common packages into a public repo. 4 years ago
stunner stunner: correct minor lint errors. 4 years ago
tailcfg tailcfg: add RegisterRequest.Copy 4 years ago
tempfork/osexec Move Linux client & common packages into a public repo. 4 years ago
testy Move Linux client & common packages into a public repo. 4 years ago
types derp: use new types/key package 4 years ago
version version: tag redo-generated version as +build redo. 4 years ago
wgengine magicsock: spray some normal packets after a handshake 4 years ago
.gitattributes .gitattributes: add a smudge filter for go.mod. 4 years ago
.gitignore cmd/relaynode: drop local --acl-file in favour of central packet filter. 4 years ago
AUTHORS Move Linux client & common packages into a public repo. 4 years ago
CODE_OF_CONDUCT.md Add a code of conduct. 4 years ago
Dockerfile Dockerfile: install iptables in the container. 4 years ago
LICENSE Move Linux client & common packages into a public repo. 4 years ago
PATENTS Move Linux client & common packages into a public repo. 4 years ago
README.md README.md: Fix typo on the word `versions` 4 years ago
SECURITY.md Add a SECURITY.md for vulnerability reports. 4 years ago
go.mod wgengine, magicsock: adjust for wireguard-go conn/device package split 4 years ago
go.sum go.sum: update 4 years ago

README.md

Tailscale

https://tailscale.com

Private WireGuard® networks made easy

Overview

This repository contains all the open source Tailscale code. It currently includes the Linux client.

The Linux client is currently cmd/relaynode, but will soon be replaced by cmd/tailscaled.

Building

go install tailscale.com/cmd/tailscale{,d}

We only support the latest Go release and any Go beta or release candidate builds (currently Go 1.13.x or Go 1.14) in module mode. It might work in earlier Go versions or in GOPATH mode, but we're making no effort to keep those working.

Bugs

Please file any issues about this code or the hosted service on the issue tracker.

Contributing

under_construction.gif

PRs welcome, but we are still working out our contribution process and tooling.

We require Developer Certificate of Origin Signed-off-by lines in commits.

About Us

We are apenwarr, bradfitz, crawshaw, danderson, dfcarney, from Tailscale Inc. You can learn more about us from our website.

WireGuard is a registered trademark of Jason A. Donenfeld.