summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-04-16Update GitHub READMEAdam Ierymenko
2014-04-15Adding supernode yig.zerotier.com (Sydney, Australia) and removing ↵Adam Ierymenko
mi-go.zerotier.com (Singapore) due to real-world usage data.
2014-04-10VERSION 0.8.2Adam Ierymenko
This version fixes a few more issues with TCP tunneling including GitHub issue #63. It also adds automatic announcement and location of peers on physical LANs (GitHub issue #56) which should greatly improve performance if you happen to be on the same LAN or WiFi network as another peer. It can take 60 seconds or so for this to occur, but it should.
2014-04-10More toward GitHub issue #56Adam Ierymenko
2014-04-10Prevent recursive transit of ZeroTier packets, toward GitHub issue #56Adam Ierymenko
2014-04-10Probable fix for GitHub issue #63 - do not unite() if either path is TCP, ↵Adam Ierymenko
since doing so can result in asymmetric failed NAT-t over UDP if one side has a firewall that permits outgoing UDP but not incoming.
2014-04-10More logic cleanup and some documentation / comment improvements.Adam Ierymenko
2014-04-09Yet more cleanup to TCP logic, this time adding a master switch and adding ↵Adam Ierymenko
UDP preference in send().
2014-04-09Some cleanup, and use best (not first) UDP addresses for NAT-t ↵Adam Ierymenko
VERB_RENDEZVOUS computation.
2014-04-09.... aaaaaand... GitHub issue #61 was caused by the fact that we were no ↵Adam Ierymenko
longer deleting taps on Windows!
2014-04-09Was not closing _shutdownSignalPipe in UnixEthernetTap either...Adam Ierymenko
2014-04-09Set close-on-exec in attempt to head off GitHub issue #61Adam Ierymenko
2014-04-09VERSION 0.8.1Adam Ierymenko
This, quick on the heels of 0.8.0, fixes the fact that TCP tunneling was broken. :) There was a bug that only manifested in some cases, and not on my testnet. I took the opportunity to clean up some of that logic generally. I need a better testnet, but that will have to wait until we exit beta and hopefully I can earn a little bit of money off this. A better testnet will require a big beefy virtualization box or two to run hundreds to thousands of KVMs. Also fixed a tiny cosmetic issue on Windows. Other than that no changes.
2014-04-09Text point size readjustment not needed on child windows in Windows?Adam Ierymenko
2014-04-09More tweaks to TCP logic for GitHub issue #60Adam Ierymenko
2014-04-09Some adjustments to TCP logic for GitHub issue #60Adam Ierymenko
2014-04-08VERSION 0.8.0Adam Ierymenko
This version introduces a major new feature requested by several users, both via the user survey and otherwise: TCP tunneling. If you are not able to communicate over UDP/9993, ZeroTier One will switch to TCP connections to ZeroTier's supernodes. This is always slower than UDP, but will allow you to communicate behind all but the most extremely restrictive firewalls. This TCP traffic travels over port 443 and looks like HTTPS (SSL) traffic (though it isn't), since that port is almost always open. This also fixes several minor bugs and attempts to improve the robustness of Windows tap driver management. Several users have reported spurious issues with the Windows tap device, though I was unable to reproduce any of these with clean VMs. (Tried Windows 7 and 8.1, both x86 and x64. No luck.) But I tried to beef up the tap code anyway in the hopes of catching it. It now tries a lot harder to make sure the tap is up and running. There was some significant under the hood refactoring in support of TCP, so this was a non-trivial change. I bumped the version to 0.8 to indicate that more and more features are being crossed off the list as we approach 1.0 and exit from beta. After this, the next major feature will be LAN announcement to find direct paths to peers on the same physical LAN. But assuming that 0.8.0 goes smoothly, I am going to divert attention to the web site. A new design is coming that is much cleaner, sharper, and easier to use. Thank you all for all your excellent feedback! We're well on the way to a killer product that makes conventional VPNs and other kludges obsolete.
2014-04-08Fix typo.Adam Ierymenko
2014-04-08More Windows tap cleanup... seems solid. We'll see.Adam Ierymenko
2014-04-08Windows tap: be REAL REAL REAL PARANOID. Wake up sheeple.Adam Ierymenko
2014-04-08Another Qt build fix... need the right tap driver in build just to make ↵Adam Ierymenko
symbols work even though UI doesn't use that code.
2014-04-08Remove EthernetTap.cpp from UI build project.Adam Ierymenko
2014-04-08Some installer stuff, complete refactoring of Windows side of newly split ↵Adam Ierymenko
tap driver. Seems to work. Now to see if the cleanup we did here gets rid of the zombie tap device issue on Windows.
2014-04-07Builds and runs on Unix with EthernetTap changes, now for Windows... and for ↵Adam Ierymenko
what we did this for: a refactor of the Windows tap connector.
2014-04-07Split EthernetTap into subclasses, work in progress...Adam Ierymenko
2014-04-04Intaller upgrade and stuff, fix to Windows service for new Node API changes.Adam Ierymenko
2014-04-04Fix network widget spacer issue on Windows.Adam Ierymenko
2014-04-03A few more tweaks to TCP failover... seems to be switching back and forth ↵Adam Ierymenko
pretty well now!
2014-04-03Tweak some timings and stuff.Adam Ierymenko
2014-04-03Such ping logic. So edge case.Adam Ierymenko
2014-04-02Make Unix domain sockets mode 0777 so that properly authorized ↵Adam Ierymenko
non-privileged users can access them (if they have auth token).
2014-04-02Make GUI work with new control client API, make control client look for user ↵Adam Ierymenko
authtoken.secret if system unreadable.
2014-04-02More tweaks to TCP failover logic. Such edge case.Adam Ierymenko
2014-04-01More tweaks to algorithm for determining when to fail over to TCP, and stop ↵Adam Ierymenko
supernodes from resynchronizing unless explicitly ordered.
2014-04-01The remove paths on send fail thing in Peer.cpp was not well thought out, ↵Adam Ierymenko
and there is no point in mallocing the TCP write buffer.
2014-04-01Resynchronize on startup.Adam Ierymenko
2014-04-01Get : out of Path.toString() since this will conflict with : in IPv6 IPs.Adam Ierymenko
2014-03-31Clean up main.o in Linux make clean.Adam Ierymenko
2014-03-31Build fix.Adam Ierymenko
2014-03-31Oops... turns out we need to differentiate incoming from outgoing TCP and ↵Adam Ierymenko
indeed learn incoming TCP paths. Otherwise the recipient of a TCP connection does not know to reply via TCP! Heh.
2014-03-31Increase maximum packet fragments to make room for huge multicasts with ↵Adam Ierymenko
certificates of membership tagged onto them. This likely will not actually increase the number of fragments in practice much, since these are then subsequently compressed. But the buffer needs to be allocated with room for them, otherwise these packets get dropped with a range_error exception internally.
2014-03-31Clean dead paths from peers.Adam Ierymenko
2014-03-28Small readability fix.Adam Ierymenko
2014-03-28Add TCP/443 to all supernodes in Defaults.Adam Ierymenko
2014-03-28Remove UDP-breaking debug code.Adam Ierymenko
2014-03-28Windows uses exceptfds to report failed async connect() in select(). TCP now ↵Adam Ierymenko
done on Windows (I think).
2014-03-28TCP connections work on Windows now.Adam Ierymenko
2014-03-27Reduce some TRACE noise.Adam Ierymenko
2014-03-27Make multiple attempts to open the tap device on Windows.Adam Ierymenko
2014-03-27Windows build fix.Adam Ierymenko