ZeroTier, any experience?

Hi, there,
Does anyone have experience using ZeroTier with Turris Omnia?
It’s in the official openwrt packages but I don’t see it in the Turris Omnia packages.
I have looked through the available pre-build packages but I don’t know which version corresponds to our router: (It would be the mbveu version?): https://github.com/mwarning/zerotier-openwrt/releases

If I try to compile it from sources, it doesn’t appear in the menuconfig

Thank you in advance!

1 Like

I was looking into this topic too.
I would love to have Zerotier available as optional package for Omnia.

So far, I have a plan to test arm_cortex_a9 package from


when I have enough time (to test and roll back).

Based on info found in


also _neon or _vpfv3 packages should be an option.

1 Like

In general current stable Turris OS release is based on OpenWRT 15.05. With Turris OS 4.0 (should be released by the end of the year) we will be migrating to 18.06 with 18.06 version of packages feed. Architecture is in context of OpenWRT mvebu or arm cortex A9. But binary packages might be build against older or newer version of libraries so those might not work.

2 Likes

Has anyone had any success with this?

I’m currently running zerotier in an LXC container which works but should not be necessary.

1 Like

Can you tell me how did you get it running in lxc container ? i tried that but the apllication ended up segfaulting

On a Debian container it nearly works out-of-the-box. The only thing that’s missing is the tun device, which you can create by running:

mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 0666 /dev/net/tun

At that point you can install ZeroTier normally for a Debian system (https://zerotier.com/download/) and it should work.

1 Like

Thank you, it is now working, i run the command in my container and it no longer segfaults.

This solution doesn’t seem to work on TurrisOS 4. After a bit of digging, I worked out that a couple lines in the container config will fix it:

lxc.cgroup.devices.allow = c 10:200 rwm
lxc.mount.entry = /dev/net dev/net none bind,create=dir

With those in place there’s no need to create the tun device manually.

To be fair, this seems to be a better solution anyway, and it might work on the older version of LXC shipped with TurrisOS 3.