...
That tells nndpd to answer NDP requests for the entire /80 from which we'll be assigning IPv6 addresses to our devices. Obviously you will need to change that IP prefix to your own.
There is a handy program to help you with ip subnetting: apt install ipcalc
The rule should use the static
or iface
option. We saw some flakiness with auto
.
There is a handy program to help you with ip subnetting: apt install ipcalc
Then you'll want to start nndpd and tell it to start on boot.
Code Block |
---|
systemctl start ndppd
systemctl enable ndppd |
It doesn't come with init/systemd scripts so we just did this:
Code Block |
---|
sudo chmod a+x /etc/rc.local |
Then edited /etc/rc.local to add:
Code Block |
---|
/usr/local/sbin/ndppd -d |
Running that command with sudo will start nndpd manually.
Then you'll want to start nndpd and tell it to start on boot.
Code Block |
---|
systemctl start ndppd
systemctl enable ndppd |
Once nndpd is running try ping6 ipv6.google.com again from one of your devices. For us it worked right away!
Congratulations! You now have a global IPv6 address for every device on your virtual network.
Code Block |
---|
curl -4 ifconfig.co curl -6 ifconfig.co |
Should return your ZeroTier gateway addresses.
Step 4f: IPv6 Security (optional)
...
Code Block | ||
---|---|---|
| ||
*filter :INPUT ACCEPTDROP [0:0] :FORWARD DROP [0:0] -A FORWARD -i zt+ -s 2001:19f0:6001:01a6::/64 -j ACCEPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT :OUTPUT ACCEPT [0:0] COMMIT |
...