Every NimbusVPS server includes an IPv6 /64 — 18 quintillion addresses — at no charge. Most templates configure the first address automatically. Using the rest takes a little more.
Check what you have
ip -6 addr show
ip -6 route show
ping6 -c3 2606:4700:4700::1111
Netplan (Ubuntu)
# /etc/netplan/50-cloud-init.yaml
network:
version: 2
ethernets:
eth0:
addresses:
- YOUR_IPV4/24
- 2a0e:xxxx:xxxx:xxxx::2/64
- 2a0e:xxxx:xxxx:xxxx::3/64
routes:
- to: default
via: YOUR_GATEWAY
- to: "::/0"
via: "2a0e:xxxx:xxxx:xxxx::1"
nameservers:
addresses: [2606:4700:4700::1111, 1.1.1.1]
netplan try # auto-reverts after 120s if you lose connectivity
netplan apply
netplan try is the safe form. Use it on a remote box.
systemd-networkd (Debian, AlmaLinux)
# /etc/systemd/network/10-eth0.network
[Match]
Name=eth0
[Network]
Address=2a0e:xxxx:xxxx:xxxx::2/64
Gateway=2a0e:xxxx:xxxx:xxxx::1
DNS=2606:4700:4700::1111
[Address]
Address=2a0e:xxxx:xxxx:xxxx::3/64
systemctl restart systemd-networkd
Binding many addresses
Useful for outbound IP rotation, per-tenant addressing, or giving each container its own routable address:
for i in $(seq 10 60); do
ip -6 addr add 2a0e:xxxx:xxxx:xxxx::$i/64 dev eth0
done
Persist with an ip6tables-free approach: put the loop in a systemd unit, or list the addresses in your network configuration. The whole /64 is routed to you, so no request to us is needed.
Reverse DNS
Set PTR records for IPv6 in the control panel exactly as for IPv4. Mail servers check both, and an IPv6 connection without a PTR is a common cause of "my mail worked yesterday" tickets after a template update enabled IPv6 by default.
Firewall
IPv6 has no NAT, so every address is directly reachable and your firewall is the only thing between the internet and your services. See firewall basics — and do not block ICMPv6.