Sean OMeara
10170b41c3
Revert "Improve default route on macOS ( #1680 )"
...
This reverts commit 117d7194af
.
2022-12-13 18:32:07 +01:00
Travis LaDuke
117d7194af
Improve default route on macOS ( #1680 )
...
re: issue #1088
and probably: https://discuss.zerotier.com/t/default-route-issue-osx-monterey-m1/6974
// current zerotier.
// allow default adds two sets of routes.
```
netstat -rnfinet | grep "/1\|default" | sort
0/1 10.2.0.2 UGScg feth4823
0/1 192.168.82.1 UGScIg en7
128.0/1 10.2.0.2 UGSc feth4823
128.0/1 192.168.82.1 UGScI en7
default 192.168.82.1 UGScg en7
```
Then, something chaotic happens eventually, and networking stops working.
// after patch
```
netstat -rnfinet | grep "/1\|default" | sort
0/1 10.2.0.2 UGScg feth4823
128.0/1 10.2.0.2 UGSc feth4823
default 192.168.82.1 UGScg en7
```
After the change, I can still:
- use default route
- route to other subnets
I tested on high sierra through monterey
and on freebsd13.1
2022-12-13 11:52:21 +01:00
Adam Ierymenko
ebc1ed4015
Hide warning about readdir_r for now.
2022-12-01 11:07:20 -05:00
Brenton Bostick
3ddaa60de9
prevent: warning: unused variable 'gotViaProc' ( #1797 )
2022-11-29 17:55:33 +01:00
Grant Limberg
9568a4f2b4
netinet6/in6_var.h not available in iOS
2022-11-10 11:35:34 -08:00
Grant Limberg
b41e0910b0
Fun times in ~~cleveland~~ NDK-land
2022-11-09 11:11:10 -08:00
Joseph Henry
bc521504ca
Improved multipath link monitoring
2022-09-20 14:27:34 -07:00
Joseph Henry
a47c3cb16f
Exclude temporary IPv6 check from SDK builds
2022-06-01 14:24:28 -07:00
Grant Limberg
b65c1ed3a0
Add inja
...
Requries update to C++17 standard
2022-05-13 09:34:15 -07:00
Joseph Henry
6c85f8c7a7
Safely handle disappearing bonded interfaces (See issue #1587 )
2022-05-06 14:59:34 -07:00
Adam Ierymenko
56357c077b
Merge pull request #1110 from neheb/patch-1
...
LinuxNetLink: Add cerrno header for (str)errno
2022-03-07 13:53:14 -05:00
Grant Limberg
31c12aebb5
more fun with linux ethernet taps
...
older kernels: must set MTU before IFF_UP.
newer kernels: must set MTU *after* IFF_UP
2022-02-17 09:26:53 -08:00
Adam Ierymenko
bb2b109707
Merge pull request #1559 from zerotier/oldlinux
...
potential fix for 2.6.x kernels
2022-02-11 17:59:53 -05:00
Joseph Henry
c5008031b9
Increase ifname size to accomodate Windows (issue #1560 )
2022-02-11 10:08:56 -08:00
Grant Limberg
5d63ed6739
fix function call
2022-02-07 17:14:43 -08:00
Grant Limberg
fdf4ebd43c
potential fix for 2.6.x kernels
...
detect if the kernel is super old. if so, do not execute the post IF_UP commands on the interface
2022-02-07 17:10:54 -08:00
Sean OMeara
0da00bf546
Merge pull request #1535 from zerotier/linux-route-metric
...
Set a high metric on linux routes that have a via.
2022-01-12 18:41:54 +01:00
Travis LaDuke
692a0e7ac2
Set a high metric on linux routes that have a via.
...
See issue #750 .
zerotier doesn't currently set a metric on routes. Linux
takes this to mean "0", the highest priority.
Every comment in the issue is about routing between zerotier
and lan and how they conflict.
This quick change could fix this problem for most people.
The subnet route for the zerotier network, the one with no
via, is still 0 in this patch. Just the "via" routes get
higher metrics.
If for some reason, you needed your via routes to have
higher priority, you could use a prefix work-around:
192.168.1.0/25 via 10.147.17.1
192.168.1.128/25 via 10.147.17.1
2022-01-07 13:10:36 -08:00
Travis LaDuke
fa25b45198
Keep interface name on via routes on linux
...
See issue #1498
2022-01-07 11:58:42 -08:00
Grant Limberg
cc6c48fca8
Merge pull request #1525 from StephenCWills/lowercase-windows-headers
...
Use lowercase when including Windows headers
2022-01-04 17:11:51 -08:00
Grant Limberg
e556a2ee23
Merge pull request #1528 from StephenCWills/android-miniupnpc
...
[Android] Fix include for miniupnpc
2022-01-04 16:56:05 -08:00
staphen
f83eed9ef9
[Android] Fix include for miniupnpc
2022-01-03 12:15:21 -05:00
staphen
1c956494a4
Use lowercase when including Windows headers
2021-12-29 16:29:08 -05:00
Travis LaDuke
afdc91f21f
Convince macOS to do ipv6 dns lookups
...
Puts a value into System Config, similar to how DNS push works.
closes #1466
https://apple.stackexchange.com/questions/309430/ipv6-dns-resolution-on-macos-high-sierra
2021-12-13 12:34:41 -08:00
Adam Ierymenko
fabfb10b97
Remove managed routes in destructor (regression fix).
2021-11-15 19:48:07 -05:00
Adam Ierymenko
65549cb0da
Fix the FD leak fix, and release notes.
2021-11-15 18:27:14 -05:00
Adam Ierymenko
0e798222a7
Fix FD leak on MacOS.
2021-11-15 17:17:05 -05:00
Adam Ierymenko
c890f1762a
This code is obsolete but remove vfork anyway.
2021-11-15 14:09:52 -05:00
Adam Ierymenko
c16b03c8b8
Set MAC address twice, once before and once after bringing interface up, since different kernels behave differently (Linux).
2021-11-09 13:28:15 -05:00
Adam Ierymenko
357e1aca54
Likely MAC fix for Linux.
2021-11-09 13:24:03 -05:00
Travis LaDuke
37f26beb50
Fix multicast flag on linux interfaces.
...
When we re-ordered the way the interfaces come up, this flag
stopped getting set automatically.
see 9374e45449
and github issue #1477
2021-11-02 11:28:13 -07:00
Grant Limberg
993e58773a
needed in 2 more spots
2021-10-27 14:58:17 -07:00
Grant Limberg
8f4c038e23
fix ifdef
...
wasn't running IPv6 temporary address detection for binding
2021-10-27 14:48:07 -07:00
Adam Ierymenko
594853e251
Remove deprecated vfork call on Mac, and make Mac route application more robust.
2021-10-26 22:15:06 -04:00
Adam Ierymenko
d2c3ea6901
Another route fix on BSD.
2021-09-15 13:31:18 -04:00
Adam Ierymenko
6bb1598fa3
Another fix for routing and interface issues on MacOS
2021-09-15 11:50:54 -04:00
Adam Ierymenko
1b8917a57c
Fix for MacOS interface setup and config timing bugs.
2021-09-09 09:30:48 -04:00
Adam Ierymenko
1a1d7d9ada
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev
2021-09-02 15:23:38 -04:00
Adam Ierymenko
d1c88971ae
Possible Mac route borking fix.
2021-09-02 15:23:26 -04:00
Joseph Henry
e1af003e4f
Consolidation of multipath logic. Better system separation
2021-09-01 21:37:49 -07:00
Joseph Henry
b6680b18e7
Merge pull request #1304 from skunkwerks/dev
...
BSD: add debug fprintf for all external commands
2021-08-30 10:11:53 -07:00
Adam Ierymenko
126669b718
MTU fix
2021-08-13 15:12:07 -04:00
Adam Ierymenko
63a44c9268
Fix feth max MTU sysctl.
2021-07-30 18:44:23 -04:00
Travis LaDuke
8866fbd618
Merge branch 'bind' of https://github.com/thoradia/ZeroTierOne into thoradia-bind
2021-06-29 11:22:46 -07:00
Adam Ierymenko
8885149cd3
Revert "Revert "Revert a change to LinuxEthernetTap threading to eliminate out of order packet issues on some systems.""
...
This reverts commit 89ddf2991b
.
2021-06-28 19:29:53 -04:00
Adam Ierymenko
89ddf2991b
Revert "Revert a change to LinuxEthernetTap threading to eliminate out of order packet issues on some systems."
...
This reverts commit 0461b24db3
.
2021-06-28 17:59:28 -04:00
Adam Ierymenko
0461b24db3
Revert a change to LinuxEthernetTap threading to eliminate out of order packet issues on some systems.
2021-06-28 17:15:34 -04:00
Grant Limberg
1859365f9d
same IPv6 temp address detection code for macOS works on FreeBSD.
...
update ifdefs & go
2021-05-27 16:43:12 -04:00
Grant Limberg
ab87b8f881
Don't bind to temporary IPv6 addresses (linux)
2021-05-26 15:50:14 -07:00
Grant Limberg
b8b65da51c
Don't bind temporary IPv6 addresses (macOS)
2021-05-26 11:01:44 -07:00
Grant Limberg
198e6f765c
Don't bind to temporary Ipv6 addresses (windows)
2021-05-26 09:15:24 -07:00
Joseph Henry
13481cea18
Fix (some) compile-time warnings on Windows
2021-05-03 21:12:45 -07:00
Joseph Henry
7faaa55436
Merge branch 'dev' of https://github.com/zerotier/ZeroTierOne into dev-multipath
2021-05-03 19:41:41 -07:00
Joseph Henry
29e5880d8b
Match formatting of Bond-related sources to ZeroTier standard (no functional changes)
2021-05-03 17:59:31 -07:00
Grant Limberg
5fb814a04f
Merge pull request #1388 from emundo/fix/1387-dns-issue
...
Fix macOS DNS issue
2021-04-28 13:19:09 -07:00
Grant Limberg
c69d2df0a2
Merge pull request #1390 from jonathonf/linux-tap-link-ordering
...
Set MAC address before bringing up Linux TAP link
2021-04-28 13:17:38 -07:00
Adam Ierymenko
46a7136b0d
Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev
2021-04-28 16:16:17 -04:00
Adam Ierymenko
d2974f2e60
Do not inherit open file descriptors on fork() in MacEthernetTapAgent
2021-04-28 16:16:02 -04:00
Jonathon Fernyhough
bac57e355d
Set MAC address before bringing up Linux TAP link
...
This corrects the flow for bringing up a TAP device under Linux by
setting the device MAC address prior to bringing up the device.
Closes #1314
2021-04-21 20:46:13 +01:00
Jonathon Fernyhough
b8b1f64959
Revert "Reorder Linux TAP link sequence"
...
This reverts commit 9374e45449
.
2021-04-21 20:45:17 +01:00
Robert.Schreib
4e8640b380
Handle case where no old DNS servers exist
2021-04-21 13:49:55 +02:00
Jonathon Fernyhough
9374e45449
Reorder Linux TAP link sequence
...
This corrects the flow for bringing up a TAP device under Linux.
Closes #1314
2021-04-21 12:30:51 +01:00
Robert.Schreib
31ffe4403c
Check if DNS servers need to be Applied on macOS
2021-04-21 12:02:31 +02:00
Dave Cottlehuber
b37e9de24d
BSD: add debug fprintfs for external commands
2021-04-15 06:37:01 +00:00
Adam Ierymenko
79e2fd4586
Automatically detect Ethernet tap friendly name in Windows shouldBind stuff.
2021-03-16 10:12:55 -04:00
Adam Ierymenko
5391e95fce
Typo fix.
2020-11-30 15:52:56 -05:00
Adam Ierymenko
954f6a77e5
Another Linux fix.
2020-11-30 15:46:16 -05:00
Adam Ierymenko
21993819a5
Possible fix for Linux deadlock.
2020-11-30 15:41:47 -05:00
Rosen Penev
2aecb547d9
LinuxNetLink: Add cerrno header for (str)errno
...
Fixes compilation under libcxx.
2020-11-30 01:38:45 -08:00
Grant Limberg
5188c7d41f
com & com security already initialized by here
2020-11-25 20:06:43 -08:00
Grant Limberg
0456a71295
Windows feedback loop fix
2020-11-25 11:05:36 -08:00
Adam Ierymenko
d64c5a92c6
Merge pull request #1233 from dosuperuser/improvement/optimizations
...
Minor C++ optimizations
2020-11-24 19:24:36 -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
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
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
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
3730917dda
LinuxNetLink cleanup
2020-11-13 21:06:34 -05:00
Adam Ierymenko
e8be28734b
Linux netlink and route setting... work in progress.
2020-11-13 19:07:54 -05:00