zerotier / zerotier/ZeroTierOne
Managed Routes use incorrect interface when used over multiple networks
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 17.1k
- Forks
- 2k
- PR merge metrics
- No merged PRs in 30d
Description
I have 2 different ZeroTier network that use managed routing for access into the physical network remotely. When attempting to connect to one of the network it wouldn't respond to any traffic & would show "no route to host" on ping attempts from my MacBook.
Investigating further it seems that the ZeroTier service (at least on Mac) seems to reuse the interface when registering managed routes, so all the traffic for network A (10.150.1.x) was being sent to the interface for network B (10.0.1.x). This does not reflect what is shown in the UI for the interfaces (see below screenshots).
Further debugging shows that it seems to be whatever network gets connected first that has a managed route seems to take priority and is used in all route registrations.
Screenshots
Network A - UI Info
Network B - UI Info
Route Info - Showing double up of interfaces
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue on macOS with two ZeroTier networks that each use managed routes, then inspect the route table and compare the registered interfaces with the ZeroTier UI. Done means traffic for each physical network uses its own interface and no duplicate or cross-network route registration remains.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, macos
- Domain
- networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100