summaryrefslogtreecommitdiff
path: root/tcp-proxy
diff options
context:
space:
mode:
authorAdam Ierymenko <[email protected]>2023-03-07 16:50:34 -0500
committerGitHub <[email protected]>2023-03-07 16:50:34 -0500
commit1c5897895bb0f2c8b054dfc2465c9cc5548fb954 (patch)
tree8ac0ecb8013d09a304549ea683c442991cbcff02 /tcp-proxy
parentdea47f601d458ff810c7949f35bc06f6ba6df170 (diff)
1.10.4 merge into main (#1893)
* add note about forceTcpRelay * Create a sample systemd unit for tcp proxy * set gitattributes for rust & cargo so hashes dont conflict on Windows * Revert "set gitattributes for rust & cargo so hashes dont conflict on Windows" This reverts commit 032dc5c108195f6bbc2e224f00da5b785df4b7f9. * Turn off autocrlf for rust source Doesn't appear to play nice well when it comes to git and vendored cargo package hashes * Fix #1883 (#1886) Still unknown as to why, but the call to `nc->GetProperties()` can fail when setting a friendly name on the Windows virtual ethernet adapter. Ensure that `ncp` is not null before continuing and accessing the device GUID. * Don't vendor packages for zeroidc (#1885) * Added docker environment way to join networks (#1871) * add StringUtils * fix headers use recommended headers and remove unused headers * move extern "C" only JNI functions need to be exported * cleanup * fix ANDROID-50: RESULT_ERROR_BAD_PARAMETER typo * fix typo in log message * fix typos in JNI method signatures * fix typo * fix ANDROID-51: fieldName is uninitialized * fix ANDROID-35: memory leak * fix missing DeleteLocalRef in loops * update to use unique error codes * add GETENV macro * add LOG_TAG defines * ANDROID-48: add ZT_jnicache.cpp * ANDROID-48: use ZT_jnicache.cpp and remove ZT_jnilookup.cpp and ZT_jniarray.cpp * add Event.fromInt * add PeerRole.fromInt * add ResultCode.fromInt * fix ANDROID-36: issues with ResultCode * add VirtualNetworkConfigOperation.fromInt * fix ANDROID-40: VirtualNetworkConfigOperation out-of-sync with ZT_VirtualNetworkConfigOperation enum * add VirtualNetworkStatus.fromInt * fix ANDROID-37: VirtualNetworkStatus out-of-sync with ZT_VirtualNetworkStatus enum * add VirtualNetworkType.fromInt * make NodeStatus a plain data class * fix ANDROID-52: synchronization bug with nodeMap * Node init work: separate Node construction and init * add Node.toString * make PeerPhysicalPath a plain data class * remove unused PeerPhysicalPath.fixed * add array functions * make Peer a plain data class * make Version a plain data class * fix ANDROID-42: copy/paste error * fix ANDROID-49: VirtualNetworkConfig.equals is wrong * reimplement VirtualNetworkConfig.equals * reimplement VirtualNetworkConfig.compareTo * add VirtualNetworkConfig.hashCode * make VirtualNetworkConfig a plain data class * remove unused VirtualNetworkConfig.enabled * reimplement VirtualNetworkDNS.equals * add VirtualNetworkDNS.hashCode * make VirtualNetworkDNS a plain data class * reimplement VirtualNetworkRoute.equals * reimplement VirtualNetworkRoute.compareTo * reimplement VirtualNetworkRoute.toString * add VirtualNetworkRoute.hashCode * make VirtualNetworkRoute a plain data class * add isSocketAddressEmpty * add addressPort * add fromSocketAddressObject * invert logic in a couple of places and return early * newInetAddress and newInetSocketAddress work allow newInetSocketAddress to return NULL if given empty address * fix ANDROID-38: stack corruption in onSendPacketRequested * use GETENV macro * JniRef work JniRef does not use callbacks struct, so remove fix NewGlobalRef / DeleteGlobalRef mismatch * use PRId64 macros * switch statement work * comments and logging * Modifier 'public' is redundant for interface members * NodeException can be made a checked Exception * 'NodeException' does not define a 'serialVersionUID' field * 'finalize()' should not be overridden this is fine to do because ZeroTierOneService calls close() when it is done * error handling, error reporting, asserts, logging * simplify loadLibrary * rename Node.networks -> Node.networkConfigs * Windows file permissions fix (#1887) * Allow macOS interfaces to use multiple IP addresses (#1879) Co-authored-by: Sean OMeara <[email protected]> Co-authored-by: Grant Limberg <[email protected]> * Fix condition where full HELLOs might not be sent when necessary (#1877) Co-authored-by: Grant Limberg <[email protected]> * 1.10.4 version bumps * Add security policy to repo (#1889) * [+] add e2k64 arch (#1890) * temp fix for ANDROID-56: crash inside newNetworkConfig from too many args * 1.10.4 release notes --------- Co-authored-by: travis laduke <[email protected]> Co-authored-by: Grant Limberg <[email protected]> Co-authored-by: Grant Limberg <[email protected]> Co-authored-by: Leonardo Amaral <[email protected]> Co-authored-by: Brenton Bostick <[email protected]> Co-authored-by: Sean OMeara <[email protected]> Co-authored-by: Joseph Henry <[email protected]> Co-authored-by: Roman Peshkichev <[email protected]>
Diffstat (limited to 'tcp-proxy')
-rw-r--r--tcp-proxy/README.md6
-rw-r--r--tcp-proxy/zerotier-proxy.service14
2 files changed, 19 insertions, 1 deletions
diff --git a/tcp-proxy/README.md b/tcp-proxy/README.md
index 0eccf23f..a19bc006 100644
--- a/tcp-proxy/README.md
+++ b/tcp-proxy/README.md
@@ -18,7 +18,11 @@ To reduce latency, the tcp-relay should be as close as possible to the nodes it
#### Option 1 - local.conf configuration
See [Service docs](https://github.com/zerotier/ZeroTierOne/blob/e0acccc3c918b59678033e585b31eb000c68fdf2/service/README.md) for more info on local.conf
-`{ "settings": { "tcpFallbackRelay": "198.51.100.123/443" } }`
+`{ "settings": { "tcpFallbackRelay": "198.51.100.123/443", "forceTcpRelay": true } }`
+
+
+In this example, `forceTcpRelay` is enabled. This is helpful for testing or if you know you'll need tcp relay. It takes a few minutes for zerotier-one to realize it needs to relay otherwise.
+
#### Option 2 - redirect 204.80.128.1 to your own IP
diff --git a/tcp-proxy/zerotier-proxy.service b/tcp-proxy/zerotier-proxy.service
new file mode 100644
index 00000000..2c4a2ebb
--- /dev/null
+++ b/tcp-proxy/zerotier-proxy.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=ZeroTier TCP Proxy sample unit
+
+[Service]
+ExecStart=/var/lib/zerotier-one/tcp-proxy
+Restart=on-failure
+
+# The zerotier-one install script creates this user/group
+User=zerotier-one
+Group=zerotier-one
+
+
+[Install]
+WantedBy=multi-user.target