Adam Ierymenko
baeab92737
VERSION 1.6.0
...
See RELEASE-NOTES.md for details.
2020-11-20 18:53:33 -05:00
Grant Limberg
95da2bcbcf
move CoUninitialize to the proper place at the end of the tap thread
2020-11-19 14:13:16 -08:00
Grant Limberg
a9e4fb0ed9
Fix multiple networks on Windows
2020-11-19 14:10:34 -08:00
Adam Ierymenko
45b092532e
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-11-19 13:44:03 -05:00
Adam Ierymenko
3ec932e194
MacOS ARM64 universal binary build fixes.
2020-11-19 13:43:57 -05:00
Adam Ierymenko
565bef05af
Release notes and version bumps.
2020-11-19 13:24:30 -05:00
Adam Ierymenko
a0c78da1ad
Revert "Tune thread count based on hardware concurrency."
...
This reverts commit 7b14aeb53e .
2020-11-18 22:54:05 -05:00
Adam Ierymenko
7b14aeb53e
Tune thread count based on hardware concurrency.
2020-11-18 22:42:00 -05:00
Adam Ierymenko
f934a09baa
Build fix.
2020-11-18 22:32:57 -05:00
Adam Ierymenko
414c248cc5
Try another approach...
2020-11-18 22:26:06 -05:00
Adam Ierymenko
ca428233ba
Revert "Try another optimization in LinuxEthernetTap."
...
This reverts commit a390629371 .
2020-11-18 22:24:18 -05:00
Adam Ierymenko
3712f9b318
Revert "Shutdown fix."
...
This reverts commit 11545bdb5d .
2020-11-18 22:24:09 -05:00
Adam Ierymenko
11545bdb5d
Shutdown fix.
2020-11-18 22:13:06 -05:00
Adam Ierymenko
a390629371
Try another optimization in LinuxEthernetTap.
2020-11-18 22:06:17 -05:00
Adam Ierymenko
e3e188109d
Build fix.
2020-11-18 10:14:39 -08:00
Adam Ierymenko
7cbbc38b89
Reduce mutex use in LinuxEthernetTap. Try to squeeze a bit more powah out of it.
2020-11-18 12:50:34 -05:00
Adam Ierymenko
b152f9e1d3
Version 1.6.0 bump in version.h
2020-11-17 15:15:06 -08:00
Adam Ierymenko
4bd58d47cf
Revert "Try factoring out a mutex to see if its faster."
...
This reverts commit 982c32322b .
2020-11-17 12:52:48 -08:00
Adam Ierymenko
982c32322b
Try factoring out a mutex to see if its faster.
2020-11-17 15:48:15 -05:00
Adam Ierymenko
2fcc344299
Some buffer tuning.
2020-11-17 15:34:42 -05:00
Adam Ierymenko
3acd901c88
Build fixes.
2020-11-17 12:13:08 -05:00
Adam Ierymenko
0795dbf5f1
Revert "Moar threadz"
...
This reverts commit 101a3a7d74 .
2020-11-16 19:06:52 -08:00
Adam Ierymenko
101a3a7d74
Moar threadz
2020-11-16 21:49:51 -05:00
Adam Ierymenko
2da162bed7
Split Linux tap receive into two threads: one reader, one processor.
2020-11-16 21:40:25 -05:00
Adam Ierymenko
5282e06fd4
Tun/tap flags fix.
2020-11-16 19:08:09 -05:00
Adam Ierymenko
dc806dd718
Try pipelining tap reads on Linux for a little more speed.
2020-11-16 18:56:00 -05:00
Adam Ierymenko
31d8758ad9
Apple "fat binaries" are back!
2020-11-16 16:30:15 -05:00
Adam Ierymenko
6b67cb0e2a
Linux build fixes.
2020-11-16 11:11:52 -08:00
Adam Ierymenko
250f0ef9db
Remove dead code.
2020-11-16 13:51:27 -05:00
Adam Ierymenko
4aab9121d9
Linux build fixes, and new route code seems to work.
2020-11-13 22:25:12 -05:00
Adam Ierymenko
5ea7ef6b65
Rework Linux route setting to actually consult netlink interface.
2020-11-13 22:06:58 -05:00
Adam Ierymenko
a3875f9965
Add a route DB to LinuxNetLink to make route sync robust.
2020-11-13 21:55:31 -05:00
Adam Ierymenko
4e3a59f329
Build fix.
2020-11-13 21:21:28 -05:00
Adam Ierymenko
3730917dda
LinuxNetLink cleanup
2020-11-13 21:06:34 -05:00
Adam Ierymenko
57516cfbe6
revert queue... not quite what we need
2020-11-13 21:01:55 -05:00
Adam Ierymenko
bb62279a20
Queue up managed route syncs and do them periodically to avoid dependency problems.
2020-11-13 20:25:03 -05:00
Adam Ierymenko
e8be28734b
Linux netlink and route setting... work in progress.
2020-11-13 19:07:54 -05:00
Adam Ierymenko
6c5a097711
Use LinuxNetLink for routes on Linux... still needs testing/debugging on an actual Linux machine.
2020-11-13 18:16:14 -05:00
Adam Ierymenko
16a878adb1
... route fix test
2020-11-13 16:18:00 -05:00
Adam Ierymenko
020d882e82
Route assignment fix.
2020-11-13 16:02:59 -05:00
Adam Ierymenko
44af828aa4
Tweak multicast settings to prevent failures due to TX queue overflow.
2020-11-12 22:21:43 -05:00
Adam Ierymenko
26a0cbcd73
Revert "Push credentials in multicast."
...
This reverts commit 1316ee3127 .
2020-11-12 20:53:23 -05:00
Adam Ierymenko
1a106bca3b
Revert "Build fix, and move multicast pushCredentialsIfNeeded."
...
This reverts commit cc42d6f4e0 .
2020-11-12 20:53:14 -05:00
Adam Ierymenko
cc42d6f4e0
Build fix, and move multicast pushCredentialsIfNeeded.
2020-11-12 20:40:10 -05:00
Adam Ierymenko
1316ee3127
Push credentials in multicast.
2020-11-12 20:33:31 -05:00
Adam Ierymenko
eadca9dd75
Build fix.
2020-11-11 15:29:01 -05:00
Adam Ierymenko
59dd71187e
Build fix.
2020-11-11 15:14:08 -05:00
Adam Ierymenko
36e167013a
More Linux tap shotgun debugging.
2020-11-11 15:12:16 -05:00
Adam Ierymenko
2d489a8679
Another possible workaround for what seems to be a Linux bug in some newer kernels.
2020-11-11 14:42:56 -05:00
Adam Ierymenko
d735a1d04c
Reorder some stuff in LinuxEthernetTap as possible workaround for MAC-set weirdness.
2020-11-11 12:49:56 -05:00
Adam Ierymenko
9480ff1f37
Fix some timestamp signedness mismatches.
2020-11-11 11:46:09 -05:00
Adam Ierymenko
d2f2abe525
Add force-exit timeout to get around some of the exit hang issues users have observed. Will punt full diagnosis to V2 which rewrites all these code paths anyway.
2020-11-10 16:30:55 -05:00
Adam Ierymenko
e9e20fdad8
Increase multicast announce frequency a little.
2020-11-10 16:16:52 -05:00
Adam Ierymenko
53ba413d32
Dont use AES in HELLO.
2020-11-09 20:52:49 -05:00
Adam Ierymenko
7280fcdec2
Only define FreeBSD hwcaps stuff if ARM crypto is enabled for compiled.
2020-11-09 19:54:32 -05:00
Adam Ierymenko
cbcd2be232
Merge pull request #1288 from darkain/dev
...
FreeBSD ARMv6, ARMv7, and Aarch64 support
2020-11-09 19:50:46 -05:00
Vince
83a2dcb65a
FreeBSD ARMv6, ARMv7, and Aarch64 support
2020-11-07 14:16:03 -08:00
Adam Ierymenko
dd65680150
Windows build fixes, version bump in AIP.
2020-11-06 11:18:41 -08:00
Adam Ierymenko
90f18f7ee7
Fix for ZTO-33 (Jira), only assign routes if there is a viable source IP.
2020-11-06 11:01:45 -05:00
Adam Ierymenko
317263b31c
Remove unused variable on non-windows
2020-11-02 19:09:11 -05:00
Adam Ierymenko
52679d2784
Simplify and fix managed route logic.
2020-11-02 19:02:07 -05:00
Adam Ierymenko
763d1cc3dc
Some more changes for slow network leaving on Mac.
2020-11-02 14:00:35 -05:00
Adam Ierymenko
c9fe04d8ea
Version bump in prep for 1.6.0 beta 2
2020-10-30 17:42:15 -04:00
Adam Ierymenko
f2c490345c
Remove unnecessary includes that can cause compile problems.
2020-10-30 16:14:59 -04:00
Adam Ierymenko
fe5aad3cef
Some Mac feth tap changes to hopefully fix slow-leave problem.
2020-10-30 10:40:34 -04:00
Joseph Henry
1331739ee4
Remove (some) debug tracing in Bond which may cause a segfault
2020-10-21 18:40:55 -07:00
Grant Limberg
3da8f5f053
freaking JNI
2020-10-21 16:08:19 -07:00
Grant Limberg
fbbcf292c6
forgot accessors
2020-10-21 15:06:50 -07:00
Grant Limberg
2851a9577c
JNI for dns configuration
2020-10-21 14:18:29 -07:00
Adam Ierymenko
ed9b09e980
Missing flag.
2020-10-20 18:52:36 -04:00
Adam Ierymenko
bcb3fc7fc0
Only use SSE/SSE2 for X64 for regular stuff.
2020-10-20 18:51:38 -04:00
Adam Ierymenko
70f37962cf
Backport AES fixes for compiler, arch, and splitting into separate files.
2020-10-20 18:50:28 -04:00
Adam Ierymenko
8d83b9b7c5
Revert change to path quality to fix IPv6 issue in beta. We will rework this in 2.x.
2020-10-14 20:41:58 -04:00
Adam Ierymenko
2c75be0d64
Do not always enable SSE4 on X64 due to old Atom chips. Enable instead only for AES-NI code which is only run if AES-NI is present, which it is not on these old chips.
2020-10-13 16:08:30 -04:00
Grant Limberg
ee04118172
null check
2020-10-13 08:24:36 -07:00
Adam Ierymenko
fe1ce885a0
Version 1.6.0 (1.5.0 is a beta!) is a significant release that incorporates a number of back-ported fixes and features from the ZeroTier 2.0 tree.
...
Major new features are:
* **Multipath support** with modes modeled after the Linux kernel's bonding driver. This includes active-passive and active-active modes with fast failover and load balancing. See section 2.1.5 of the manual.
* **DNS configuration** push from network controllers to end nodes, with locally configurable permissions for whether or not push is allowed.
* **AES-GMAC-SIV** encryption mode, which is both somewhat more secure and significantly faster than the old Salsa20/12-Poly1305 mode on hardware that supports AES acceleration. This includes virtually all X86-64 chips and most ARM64. This mode is based on AES-SIV and has been audited by Trail of Bits to ensure that it is equivalent security-wise.
Known issues that are not yet fixed in this beta:
* Some Mac users have reported periods of 100% CPU in kernel_task and connection instability after leaving networks that have been joined for a period of time, or needing to kill ZeroTier and restart it to finish leaving a network. This doesn't appear to affect all users and we haven't diagnosed the root cause yet.
* The service sometimes hangs on shutdown requiring a kill -9. This also does not affect all systems or users.
* AES hardware acceleration is not yet supported on 32-bit ARM, PowerPC (32 or 64), or MIPS (32 or 64) systems. Currently supported are X86-64 and ARM64/AARCH64 with crypto extensions.
* Some users have reported multicast/broadcast outages on networks lasting up to 30 seconds. Still investigating.
We're trying to fix all these issues before the 1.6.0 release. Stay tuned.
2020-10-08 18:10:13 -04:00
Adam Ierymenko
24769219b5
Merge branch 'dev'
2020-10-08 18:08:24 -04:00
Adam Ierymenko
da6fe18e17
Merge branch 'master' of github.com:zerotier/ZeroTierOne
2020-10-08 18:08:18 -04:00
Adam Ierymenko
a973a6e10e
Leave feth devices over feth10000 alone.
2020-10-08 12:04:57 -04:00
Adam Ierymenko
5bc64c4c4e
Windows build fixes and version bump in Advanced Installer.
2020-10-07 15:56:00 -07:00
Travis LaDuke
bd92990165
Update feature_request.md
2020-10-07 10:36:04 -07:00
Adam Ierymenko
e26a8be3df
Be more consistent about versioning.
2020-10-07 11:55:47 -04:00
Adam Ierymenko
3ef1c8e3fa
Use 1.5.0 for package version for centos.
2020-10-06 23:31:20 -04:00
Adam Ierymenko
0ab4b903f4
Cert and codesign tweaks, release notes.
2020-10-06 18:09:51 -04:00
Adam Ierymenko
b2ea5aa747
Version bump to 1.5.0 internally and 1.6.0-beta1 in packages.
2020-10-05 20:23:52 -04:00
Grant Limberg
c80843e496
Revert "remove redundant writes when changes come from Central"
...
This reverts commit f9396f979f .
2020-10-05 13:32:47 -07:00
Grant Limberg
f9396f979f
remove redundant writes when changes come from Central
...
network & member changes tagged with `"fromCentral": true` will not be rewritten to the db
2020-10-05 11:03:03 -07:00
Adam Ierymenko
610d4ff016
Remove old tap kext from normal pkg as it is too old to be notarized (signature too old, not sure if we can sign again as kexts are being deprecated). It is only used on very old MacOS versions that are rolling off support.
2020-10-02 18:42:40 -04:00
Adam Ierymenko
f16421225d
Enable hardened executable mode on Mac, should be fine...
2020-10-02 18:36:24 -04:00
Adam Ierymenko
d82b3684ac
Enable RV64
2020-09-30 21:17:04 -04:00
Adam Ierymenko
d7e5a92fe6
Increase debian build parallelism.
2020-09-30 17:39:15 -07:00
Adam Ierymenko
bb45f9ca3c
Upgrade cpp-httplib
2020-09-30 15:21:58 -04:00
Adam Ierymenko
c7dcbba442
Add an AES benchmark to 1.6 (backport)
2020-09-29 18:34:58 -04:00
Adam Ierymenko
255dee7a5e
MacOS build fixes.
2020-09-25 14:32:53 -04:00
Adam Ierymenko
c86418934c
PATH_MAX is not defined on some Linux systems.
2020-09-23 22:06:22 -04:00
Adam Ierymenko
70efa5f606
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev
2020-09-23 21:59:14 -04:00
Adam Ierymenko
69b2fcd5af
Get rid of obsolete musl libc fix.
2020-09-23 21:58:51 -04:00
Adam Ierymenko
1f93099e1a
Get rid of obsolete musl libc fix.
2020-09-23 21:58:28 -04:00
Joseph Henry
b3331c5ec2
Fix buffer overflow in windows tap driver
2020-09-23 15:31:20 -07:00
Grant Limberg
ff23d3051f
self hosted controller JSON format fix for DNS
2020-09-23 12:16:23 -07:00
Grant Limberg
7d8cfb1fee
more magic incantations to make crypto extensions work on Android/ARM64
2020-09-22 10:28:31 -07:00
Grant Limberg
8131680735
AES-NI enabled for Android ARM64
2020-09-22 08:04:16 -07:00
Grant Limberg
9e6dba9066
Enable AES-NI on Android X86-64
...
Need to find the magic incantation to enable it on ARM64 still
2020-09-21 18:05:25 -07:00
Grant Limberg
0f2887265c
AES-NI/NEON detection for iOS
...
Requires 64-bit CPU
2020-09-21 13:18:05 -07:00
Adam Ierymenko
1ff45020e2
Prefer IPv6 if all else is equal.
2020-09-18 16:27:41 -04:00
Grant Limberg
45c5abe05b
add Allow DNS settings to win UI
2020-09-18 10:12:11 -07:00
Grant Limberg
e7dafb3ae6
allow DNS field for mac UI
2020-09-18 09:30:43 -07:00
Adam Ierymenko
04f6140da6
AES builds and works now on ARM64.
2020-09-16 22:47:13 +00:00
Grant Limberg
afcbc6dd9f
clean up some error output
2020-09-16 10:54:14 -07:00
Grant Limberg
4da9bed4fa
add 'dump' to cli help
2020-09-16 10:52:23 -07:00
Grant Limberg
221e4ecb12
Add "documentation" networks as IP_SCOPE_PRIVATE
...
https://en.wikipedia.org/wiki/Reserved_IP_addresses
2020-09-16 10:24:36 -07:00
Grant Limberg
1883a8c9ee
Set 198.18.0.0/15 to IP_SCOPE_PRIVATE
2020-09-16 10:15:42 -07:00
Grant Limberg
83d92858c1
Merge branch 'dump' into dev
2020-09-16 10:04:01 -07:00
Grant Limberg
cff3152985
windows create dump file on desktop
2020-09-16 10:03:03 -07:00
Grant Limberg
5090e95003
dump basics to stdout on other platforms
2020-09-15 16:50:55 -07:00
Grant Limberg
927aeb15f6
macos output dump to file if possible
...
if not, write to stdout
2020-09-15 16:50:00 -07:00
Grant Limberg
361ca1e8b4
add link to CoreServices framework
2020-09-15 16:49:19 -07:00
Adam Ierymenko
9adf656db5
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-14 20:44:46 -04:00
Adam Ierymenko
7219ca0c0f
AES works! Only with this or newer nodes. Uses salsa with older ones as usual.
2020-09-14 20:44:21 -04:00
Grant Limberg
3a75950ff4
Merge branch 'dump' into dev
2020-09-14 15:25:34 -07:00
Joseph Henry
fa86b8bae0
Change ZT_MULTIPATH_FLOW_EXPIRATION_INTERVAL from 30 seconds to 5 minutes
2020-09-14 15:22:06 -07:00
Joseph Henry
f3c9ab8a7e
Add minor trace output formatting changes. Change ZT_MULTIPATH_BOND_STATUS_INTERVAL from 30000 to 60000
2020-09-14 15:21:53 -07:00
Grant Limberg
ace03d7c7b
zerotier-cli dump for Windows
2020-09-14 15:17:59 -07:00
Michael Adams
97801b3b56
Update issue templates
2020-09-14 13:10:41 -07:00
Michael Adams
74d9e1e558
Update issue templates
2020-09-14 12:59:36 -07:00
Michael Adams
c210e9e5cf
Update issue templates
...
Cleaned this up substantially
2020-09-14 12:58:29 -07:00
Grant Limberg
df640dc39b
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev
2020-09-14 12:45:11 -07:00
Grant Limberg
d980bba49f
fix windows compilation
2020-09-14 12:42:51 -07:00
Grant Limberg
059dfee0c3
fix windows compilation
2020-09-14 12:42:39 -07:00
Joseph Henry
55f442f1a9
Removed erroneous issue template
2020-09-12 13:09:51 -07:00
joseph-henry
2b9d9168e0
Update issue templates
2020-09-12 13:08:31 -07:00
Joseph Henry
94669a4709
Update Game issue template
2020-09-12 12:58:10 -07:00
joseph-henry
be560eb704
Game Connection Issue
...
Game connection issues can be resolved on our forums: discuss.zerotier.com
2020-09-12 12:23:49 -07:00
Grant Limberg
36d867c3fa
more config dump for macOS
2020-09-11 16:43:30 -07:00
Joseph Henry
cf47618ffb
Change ZT_MULTIPATH_FLOW_EXPIRATION_INTERVAL from 30 seconds to 5 minutes
2020-09-11 16:09:46 -07:00
Grant Limberg
62f23e0cfd
step 1 of zerotier-cli dump
...
dump status, networks, peers, bonds & version
2020-09-11 15:31:56 -07:00
Joseph Henry
0e8b54f7a1
Add minor trace output formatting changes. Change ZT_MULTIPATH_BOND_STATUS_INTERVAL from 30000 to 60000
2020-09-11 14:47:18 -07:00
Adam Ierymenko
1c9407e016
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-11 13:40:04 -04:00
Adam Ierymenko
cb8d773634
Disable unicast compression as it almost never helps and usually just wastes CPU.
2020-09-11 13:36:21 -04:00
Grant Limberg
bbb307aff7
DNS is now toggleable via zerotier-cli set <nwid> allowDNS=[0|1]
...
Flag is disabled by default as it should be opt-in on each endpoint
2020-09-10 15:59:18 -07:00
Grant Limberg
3db263284b
not sure how this got reverted
2020-09-10 13:18:25 -07:00
Grant Limberg
d8f041a484
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-10 12:50:30 -07:00
Adam Ierymenko
120bcbc2c9
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev
2020-09-10 15:44:47 -04:00
Grant Limberg
10ccaa2620
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-10 12:43:58 -07:00
Adam Ierymenko
e6b5f8aabd
AES work... but disabled in this commit.
2020-09-10 15:43:40 -04:00
Michael Adams
4798689bf3
Merge branch 'dev' of https://github.com/zerotier/ZeroTierOne into dev
2020-09-10 12:43:24 -07:00
Michael Adams
0545e70bd5
Added error messages to use admin/sudo/root
2020-09-10 12:42:11 -07:00
Grant Limberg
5032a8eeac
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-10 11:57:51 -07:00
Adam Ierymenko
1ad555a071
More selective push of AES modifications and refactoring stuff.
2020-09-10 14:48:48 -04:00
Grant Limberg
7d0f6933d6
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-10 11:38:25 -07:00
Adam Ierymenko
4cd3d0bb76
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-09-10 14:37:16 -04:00
Adam Ierymenko
8374553b6a
Linux build fix for AES flags.
2020-09-10 14:36:33 -04:00
Grant Limberg
eca4052884
Merge branch 'dev-redis' into dev
2020-09-10 11:10:10 -07:00
Michael Adams
2d7a96416c
Update issue templates
...
Include use of Discuss forum as an option for feature requests.
2020-09-08 12:25:40 -07:00
Grant Limberg
a1f4397959
linux implementaiton of zerotier-cli dump
2020-08-30 14:19:56 -07:00
Grant Limberg
53d5c9890f
missed a rollback
...
# Conflicts:
# controller/PostgreSQL.cpp
2020-08-26 15:52:01 -07:00
Grant Limberg
43c108f077
missed a rollback
2020-08-26 15:50:36 -07:00
Grant Limberg
33cc59914a
Merge branch 'dev-redis' into dev
2020-08-26 14:52:54 -07:00
Grant Limberg
45b6d11126
Put upserts from controller into single transaction
2020-08-26 14:52:23 -07:00
Adam Ierymenko
b7b01da742
Wire up dearmor() path.
2020-08-25 14:13:20 -07:00
Adam Ierymenko
93d6b41898
Disable AES in commit so as not to break other builds.
2020-08-25 08:08:54 -07:00
Adam Ierymenko
47e9fb3ddb
Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev
2020-08-25 08:07:23 -07:00
Joseph Henry
b1ddba0438
Remove a few old comments
2020-08-24 18:56:49 -07:00
Grant Limberg
e7891bfcb0
Merge branch 'dev-redis' into dev
2020-08-21 16:29:13 -07:00
Grant Limberg
7f99c4a779
Sleep 10 seconds between writes to DB
2020-08-21 16:22:28 -07:00
Adam Ierymenko
2ac49d99dd
AES integrated on send side.
2020-08-21 14:23:31 -07:00
Adam Ierymenko
3fd8efe642
AES builds now
2020-08-21 09:56:53 -07:00
Adam Ierymenko
06730c7d1d
BSL date bump
2020-08-20 12:51:39 -07:00
Grant Limberg
81c9db7a15
fix libs for non-controller builds on macOS
2020-08-18 11:46:29 -07:00
Grant Limberg
8d0a3563e4
Merge branch 'dns' into dev
2020-08-12 13:56:21 -07:00
Grant Limberg
c0c215c83c
single dns config per network
2020-08-12 13:08:47 -07:00
Grant Limberg
058d888311
More debug logging cleanup
2020-08-12 10:00:09 -07:00
Grant Limberg
30b18d925f
clean up some debug logging
2020-08-12 09:16:18 -07:00
Grant Limberg
137d05e799
add setDNS stubs for linux/bsd
2020-08-12 09:14:10 -07:00
Grant Limberg
d9c4e644de
Windows DNS
2020-08-11 18:55:42 -07:00
Joseph Henry
edd960566a
Improve bond tracing, fix bond initialization bugs, remove vestigial debug code
2020-08-06 18:10:40 -07:00
Grant Limberg
6868e98904
Get stuff building on Windows
...
Been a minute since any of this has been updated
2020-08-05 16:04:02 -07:00
Grant Limberg
85a5b0b948
Remove dns config on shutdown
...
Also add calls to MacDNSHelper to the kext tap
2020-08-05 14:49:45 -07:00
Grant Limberg
b9a1719cb1
Let's make sure to clean up our memory
2020-08-05 14:42:19 -07:00
Grant Limberg
d6e3164ea1
remove initial attempt at dns config via scutil
2020-08-05 14:42:09 -07:00
Grant Limberg
302ac8fefe
DNS config support on macOS
2020-08-05 14:26:11 -07:00
Grant Limberg
d2708daa8e
debug output
2020-08-04 14:33:18 -07:00
Grant Limberg
88a3c685fb
latest
2020-08-04 13:52:57 -07:00
Grant Limberg
2e52a1eebf
forgot a couple queries in postgres. trying to pull dns of member not network in embedded network controller
...
also some debug logging
2020-08-04 09:45:45 -07:00
Grant Limberg
d098a99d09
fix memory init issue
...
and another place where dns data needs to be copied
2020-07-31 11:42:03 -07:00
Grant Limberg
6b197e067a
Merge branch 'dev' into dns
2020-07-30 13:15:43 -07:00
Joseph Henry
9f4985b11a
Add basic bond health status reporting (listbonds)
2020-07-27 23:01:12 -07:00
Grant Limberg
5b700fa497
println for which notification stream the controller is listening to
2020-07-27 18:37:45 -07:00
Travis LaDuke
c92e030a4b
Create a bash completion script.
...
Just adding it to the repo, but it still needs to be dealt with during install.
Probably put it in $ZT_HOME and then symlink to the proper place for the distro?
searches $ZT_HOME/networks.d/ for network IDs
searches HISTORY for 16 digit numbers that look like network IDs.
2020-07-23 13:40:48 -07:00
Grant Limberg
251b06d812
revert redis for member status
2020-07-23 09:38:50 -07:00
Joseph Henry
ff50762649
Merge multipath branch into dev branch
2020-07-23 00:40:17 -07:00
Joseph Henry
29ebda62ef
Remove (some) debug functions and traces
2020-07-23 00:32:39 -07:00
Joseph Henry
a1b2ff772a
Add new replacement condition in peer path redundancy logic to fix duplicate paths
2020-07-23 00:15:38 -07:00
Joseph Henry
dc784f6213
Comment out Bond and BondController debug traces
2020-07-21 10:22:10 -07:00
Grant Limberg
387039456d
Pass 1 at adding DNS to controller
2020-07-20 14:34:19 -07:00
Joseph Henry
fd0c906b1b
Merge branch 'multipath' of http://git.int.zerotier.com/ZeroTier/ZeroTierOne into multipath
2020-07-14 17:05:42 -07:00
Joseph Henry
decd5add2a
Fix segfault on unique interface name list generation (for multipath)
2020-07-14 17:05:05 -07:00
Joseph Henry
8eb453e042
Revert to ancient path redundancy check logic
2020-07-06 15:18:17 -07:00
Grant Limberg
bd6c97aeb8
dont strip binary
2020-07-06 14:35:05 -07:00
Joseph Henry
29e7fa5c4b
Revert to ancient path redundancy check logic
2020-07-06 14:07:31 -07:00
Joseph Henry
a23b6d09c0
Fix merge conflict for controller code (minor edit)
2020-06-29 10:27:22 -07:00
Grant Limberg
1bb1dfa87b
android changes
2020-06-18 09:32:00 -07:00
Joseph Henry
a33a494d60
Adjust terminology
2020-06-17 14:54:13 -07:00
Joseph Henry
5f0ee4fc78
Fix invalid defaultBondingPolicy conditions, Add ZT_MultipathFlowRebalanceStrategy, Add basic hysteresis mechanism to flow re-assignment
2020-06-16 12:30:21 -07:00
Grant Limberg
d0aacfddb7
one more spot
2020-06-04 14:12:20 -07:00
Grant Limberg
9b92ad7772
handle case of no networks and/or no members
2020-06-04 14:06:30 -07:00
Grant Limberg
17c7ae20cc
force add libredis++.a for mac
2020-06-04 13:46:16 -07:00
Joseph Henry
fa5c8ef434
Fix timers, fix flow count discrepancy after flow removal, fix balance-aware flow re-assignment when one or more links go down
2020-06-01 22:58:58 -07:00
Joseph Henry
1dca7b92cf
Remove exit condition for bond creation during re-learning of previously-known paths
2020-05-31 17:30:41 -07:00
Joseph Henry
5e122b95e7
Fix segfault during balance-rr when link is brought down
2020-05-30 21:21:22 -07:00
Grant Limberg
135a547889
No longer update both pgsql & redis
2020-05-28 19:22:07 -07:00
Grant Limberg
06de25a680
bump online notification pause to 100ms
...
also put all online notification redis commands into a single tx
2020-05-27 22:25:07 -07:00
Grant Limberg
5692402d32
A little more cleanup
2020-05-27 21:02:30 -07:00
Grant Limberg
ad7ae5a372
list of all network-node pairs
2020-05-27 20:43:31 -07:00
Grant Limberg
9794e31a64
Temporary online notification thread hack
...
Updates both Redis and Postgres
2020-05-27 20:43:31 -07:00
Grant Limberg
2f0f0e4f53
redis init optimization
2020-05-27 20:43:31 -07:00
Grant Limberg
7bde004c7c
Replace scan of Redis with iteration of _networks map
2020-05-27 20:41:47 -07:00
Joseph Henry
a8f830aa9c
Add multipath documentation to service/
2020-05-26 18:29:19 -07:00
Joseph Henry
7266550c22
Remove vestigial constructor, fix typos, clean up code
2020-05-26 17:57:37 -07:00
Joseph Henry
7ed960297b
Merge changes from dev into multipath
2020-05-26 17:57:09 -07:00
Grant Limberg
39da360725
add online controller list in Redis
2020-05-22 14:16:04 -07:00
Grant Limberg
beedee4401
fix typo
2020-05-22 11:07:12 -07:00
Grant Limberg
fb0e8aebdb
keep list of active networks in redis
2020-05-22 10:07:39 -07:00
Grant Limberg
13929aee6f
reduce log chattiness
2020-05-21 09:49:55 -07:00
Grant Limberg
c2409ad6c9
fix connection to redis cluster in online notification thread
2020-05-21 09:49:41 -07:00
Grant Limberg
08cb72bdba
Temp object was being destroyed before connection was used
2020-05-21 09:33:03 -07:00
Grant Limberg
d24c8d858c
include climits for Linux
2020-05-20 16:54:18 -07:00
Grant Limberg
879ef58565
Finalize Redis integration
2020-05-20 16:28:28 -07:00
Grant Limberg
8b8399efbc
Error recovery for network & member stream watchers
2020-05-20 11:42:51 -07:00
Grant Limberg
0f17508cac
error recovery in redis online notification
...
If a redis cluster member fails over to the slave, we'll get an error from not specifying the key for the insert. Recover from that instead of crashing the controller
2020-05-20 11:38:04 -07:00
Grant Limberg
7a138f963c
TIL: Creating a redis transaction without sending any commands throws an exception
...
So let's not do that
2020-05-19 17:47:06 -07:00
Grant Limberg
b637ced1ee
Track member status in Redis
2020-05-19 17:47:02 -07:00
Grant Limberg
ee91c81799
Initialize C arrays to NULL in NetworkConfig() constructor
2020-05-19 17:40:51 -07:00
Grant Limberg
8ac42b4600
controller status query fix
2020-05-19 17:40:11 -07:00
Grant Limberg
844725237d
Add new ZT_ result codes that were added
2020-05-18 10:31:17 -07:00
Joseph Henry
58d567c331
Formatting
2020-05-14 20:09:25 -07:00
Joseph Henry
4465952d11
Merge remote-tracking branch 'origin/dev' into multipath
2020-05-14 16:06:55 -07:00
Grant Limberg
f8ba1962e6
fix equals() methods
2020-05-14 15:08:37 -07:00
Grant Limberg
701960def5
Track member status in Redis
2020-05-13 17:23:27 -07:00
Grant Limberg
15c0c1db39
finish the RabbitMQ-ectomy
2020-05-13 09:46:41 -07:00
Grant Limberg
c9f942f79b
can now build centos8 docker container with Redis support
2020-05-12 15:17:57 -07:00
Grant Limberg
663df9118a
fix centos8 build
2020-05-12 14:04:03 -07:00
Grant Limberg
5d47697ade
helps to add the actual library
2020-05-12 13:04:16 -07:00
Grant Limberg
5babd01d40
centos8 binaries for libhiredis and libredis++
2020-05-12 12:58:09 -07:00
Grant Limberg
aab96964b6
Put debug output behind ZT_TRACE
2020-05-12 12:48:58 -07:00
Grant Limberg
c6518afa7a
Make sure the streams clean up after themselves
2020-05-12 12:37:05 -07:00
Grant Limberg
563655a1a4
Redis now usable as a message queue
2020-05-12 11:56:19 -07:00
Joseph Henry
a50e8e9878
Add Bonds, Slaves, and Flows
2020-05-12 01:35:48 -07:00
Joseph Henry
de9cfbe9b0
Merge dev into multipath
2020-05-12 00:08:52 -07:00
Grant Limberg
d699116795
mac deps
2020-05-11 16:48:14 -07:00
Grant Limberg
8f3a0b17ad
redis++ binaries for mac
2020-05-11 15:24:13 -07:00
Grant Limberg
b5c661c5d5
add libhiredis.a for mac
2020-05-11 15:06:10 -07:00
Grant Limberg
154470b570
add original hiredis
2020-05-11 15:03:56 -07:00
Grant Limberg
73b1d57b13
rip out rabbitMQ
2020-05-11 12:29:06 -07:00
Grant Limberg
acb4ef0f12
add hiredis-vip to controller build
2020-05-11 11:48:05 -07:00
Joseph Henry
32a78b5f61
Fix preprocessor typo in previous commit
2020-03-31 20:34:48 -07:00
Joseph Henry
54f9f2ad53
Add special case for Ubiquiti routers in platformDefaultHomePath()
2020-03-31 20:27:41 -07:00
Adam Ierymenko
f12c75e68b
Merge branch 'master' of github.com:zerotier/ZeroTierOne
2020-03-25 13:40:13 -07:00
Travis LaDuke
b6b11dbf82
Document allowSecondaryPort
2020-03-25 10:26:14 -07:00
Grant Limberg
0d42108254
member ip inserts DO NOTHING on conflict
2020-03-04 09:45:45 -08:00
Grant Limberg
f6026f94a5
More fun with dupes
2020-03-03 23:52:53 -08:00
Grant Limberg
e702942041
Fix duplicate assigned IP check when adding assigned IPs to database
2020-03-03 13:34:24 -08:00
Grant Limberg
00ac35ad62
add --no-cache for docker central controller build
2020-02-24 11:06:08 -08:00
Grant Limberg
12a92fc4a1
Un-log & some production build image fixes
2020-02-24 11:02:05 -08:00
Grant Limberg
baa14a63c9
It's LOG! It's LOG!
...
It's big, it's heavy, it's wood
2020-02-24 10:20:47 -08:00
Grant Limberg
cce51cea5d
Merge branch 'pipeline' into dev
2020-02-03 13:48:46 -08:00
Grant Limberg
ba4324f992
Update jenkinsfile for new build process
2020-02-03 12:51:46 -08:00
Grant Limberg
81e982991b
add kali rolling
2020-02-03 10:46:39 -08:00
Grant Limberg
f6f4fba90e
Add docker configs for multi arch jenkins builds
2020-02-03 09:57:48 -08:00
root
23d5a972ba
disable lintian because sid/bullseye are sitting there running /bin/sleep 3 endlessly on this step
2020-01-31 13:15:23 -08:00
root
d5467e130e
disable lintian because sid/bullseye are sitting there running /bin/sleep 3 endlessly on this step
2020-01-31 13:13:02 -08:00
Grant Limberg
5faf0f8ab6
whoops
2020-01-23 09:46:15 -08:00
Grant Limberg
0f17cd4791
Update to jenkinsfile for multi-platform release builds
2020-01-23 09:41:17 -08:00
Grant Limberg
e0518ab176
testing armv5t instead of armv5 flag
2020-01-22 16:36:26 -08:00
Grant Limberg
28df0c2e38
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev
2019-12-17 10:56:53 -08:00
Grant Limberg
7696d45093
Fix handling of invalid conf file
...
Fixes GitHub issue #1068
2019-12-17 10:51:01 -08:00
Grant Limberg
2a7d4fcde5
update vs project settings
2019-12-17 10:49:21 -08:00
Grant Limberg
995fa4a76c
Merge branch 'refs/heads/master' into dev
2019-11-22 15:00:39 -08:00
Grant Limberg
d8597884f6
jenkins windows
2019-11-22 11:25:31 -08:00
Grant Limberg
a993ddc54d
Merge branch 'refs/heads/master' into dev
2019-11-21 15:12:37 -08:00
Grant Limberg
54e25084fe
re-enable CI on master
2019-11-21 14:51:33 -08:00
Grant Limberg
e58a0b3efb
build central controller docker images on macOS
2019-11-21 14:49:24 -08:00
Grant Limberg
381f15382c
Convert central-controller docker build to use a builder subcontainer
2019-11-20 13:56:26 -08:00
Grant Limberg
91d679af15
Merge pull request #1087 from skunkwerks/dev
...
drop -Werror from DEBUG builds
2019-11-19 08:47:38 -08:00
Dave Cottlehuber
8396f16dd2
drop -Werror from DEBUG builds
...
Appease compilers. Thanks @glimberg for the diff.
Closes #1086
2019-11-19 16:45:06 +00:00
Travis LaDuke
bb84c9b65c
Merge pull request #1082 from laduke/controller-readme
...
Add Managed Routes example to controller readme.
2019-11-15 10:35:13 -08:00
Travis LaDuke
e744c95c5b
Add Managed Routes example to controller readme.
2019-11-15 10:29:39 -08:00
Travis LaDuke
a725d1a29a
Merge pull request #1081 from 0xflotus/patch-1
...
fixed small error
2019-11-14 10:30:30 -08:00
0xflotus
38feda1594
fixed small error
2019-11-14 10:17:05 +01:00
Grant Limberg
dc19deb6c3
.
2019-11-13 12:46:52 -08:00
Grant Limberg
86abd31659
fix log line
2019-11-13 12:46:16 -08:00
Joseph Henry
b8e70d866a
Compile fix for unterminated conditional directive
2019-11-12 09:46:39 -08:00
Joseph Henry
e1e27eb19d
Bugfix for incorrect port binding of secondary and tertiary ports
2019-11-11 12:03:49 -08:00
Grant Limberg
088dab4f04
Let's not print this to the logs
2019-10-31 15:13:20 -07:00
Grant Limberg
cc79ec6179
use std::string instead of const char* in rmq struct
2019-10-31 15:08:59 -07:00
Grant Limberg
74478b24b0
add librabbitmq binaries for macos for testing central controller
2019-10-31 14:04:25 -07:00
Travis LaDuke
bad95d7c67
Update cli help to say <network ID> instead of <network>
...
Closes #1054
2019-10-15 13:15:45 -07:00
Joseph Henry
afca5c2536
Partial implementation of ZT_MULTIPATH_BALANCE_RR_OPAQUE
2019-08-20 23:28:59 -07:00
Joseph Henry
5453cab22b
Added flow-awareness check for policies, more work on ZT_MULTIPATH_ACTIVE_BACKUP
2019-08-20 18:50:38 -07:00
Joseph Henry
b0a91c0187
Partial implementation of ZT_MULTIPATH_ACTIVE_BACKUP
2019-08-20 16:19:20 -07:00
Joseph Henry
963113b86d
Minor adjustment to how _allowTcpFallbackRelay is disabled when _multipathMode is set
2019-08-20 10:38:18 -07:00
Joseph Henry
0634214f2c
Added notion of Flows
2019-08-19 21:52:33 -07:00
Joseph Henry
15e44f0ddd
Merge remote-tracking branch 'origin/dev' into multipath
2019-08-14 11:25:40 -07:00
Joseph Henry
b0e86d11c9
Minor. Name change for trace functions
2019-08-14 11:24:03 -07:00
Joseph Henry
5b7d60f5cd
Whoops
2019-08-13 14:42:48 -07:00
Joseph Henry
640567a021
More informative link aggregation trace outputs
2019-08-13 14:34:47 -07:00
Joseph Henry
2593c6efee
Adjusted multipath constants
2019-08-13 14:34:11 -07:00
Joseph Henry
36d368cb78
Check for (local multipath support only) during decision to decrease direct path push interval. This prevents the chicken-and-egg situation of not knowing if two peers can support multipath on both ends and thusly not sending eachother their direct paths quickly enough.
2019-08-13 13:26:41 -07:00
Joseph Henry
2e9fa7a811
Merge remote-tracking branch 'origin/dev' into multipath
2019-08-13 12:42:19 -07:00
Joseph Henry
d8ce1f7914
Added ZT_DIRECT_PATH_PUSH_INTERVAL_MULTIPATH to decrease link aggregation time
2019-08-13 12:41:30 -07:00
Joseph Henry
3c7e25ed58
Added call to computeAggregateAllocation() in multipath mode=1 to give realtime allocation output
2019-08-12 17:04:27 -07:00
Joseph Henry
77ae929eb3
Merge master into multipath
2019-08-12 11:40:13 -07:00
Joseph Henry
258b1c8b55
Merge branch 'edge' into multipath
2018-09-12 13:57:57 -07:00
Joseph Henry
1e66854b59
Temporarily added SO_REUSEADDR to netlink binding code
2018-08-07 12:57:40 -07:00
Joseph Henry
12f2df5586
uncommented status fields
2018-08-07 12:39:06 -07:00
Joseph Henry
20a25a6a45
Added debug traces
2018-08-06 14:31:12 -07:00
Joseph Henry
08d9dc5c68
Updated protocol version and versioning blurb
2018-08-06 10:29:37 -07:00