summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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
2014-03-27Build fix from merge.Adam Ierymenko
2014-03-27Merge branch 'adamierymenko-dev' of ↵Adam Ierymenko
ssh://shub-niggurath.zerotier.com:222/git/ZeroTierOne into adamierymenko-dev
2014-03-27Make TCP optional, rename port constant.Adam Ierymenko
2014-03-27Finally fixed TCP sockets.Adam Ierymenko
2014-03-27More TCP-related fixes and tweaks to ping timing, resynchronize, and startup.Adam Ierymenko
2014-03-26Fix TCP connection accumulation problem, still having issues with TCP tunneling.Adam Ierymenko
2014-03-26Change the way TCP failover is invoked.Adam Ierymenko
2014-03-26If I want it to pick the first, actually picking the first is helpful.Adam Ierymenko
2014-03-26Add TCP channel support for supernode list, make Peer pick the first path if ↵Adam Ierymenko
all paths are equally dead.
2014-03-25Crank down default multicast preload and max balance just a little bit... ↵Adam Ierymenko
should not impact non-lame protocols.
2014-03-25Apply multicast rate limits on a network to ourselves and do not send ↵Adam Ierymenko
multicasts that would exceed limits, for GitHub issue #55
2014-03-25WINDOWS IS SUFFERINGAdam Ierymenko