I have an ubuntu VPS with a /64 ipv6 subnet assigned to it from the provider. When I connect to the fresh server the networking daemon configuration is:
/etc/network/interfaces
:
# Generated by SolusVM
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 1xx.yy5.2zz.15
gateway 1xx.1yy.2zz.1
netmask 255.255.255.0
dns-nameservers 1.1.1.1 8.8.8.8
up ip addr add 2a0c:xyzx:xyzx:xyzx::497e/64 dev eth0
up ip -6 route add 2a0c:xyzx:xyzx:0000:0000:0000:0000:0001 dev eth0
up ip -6 route add default via 2a0c:xyzx:xyzx:0000:0000:0000:0000:0001
Now my server responds to ping6 packets that are coming from remote machines addressed to 2a0c:xyzx:xyzx:xyzx::497e
. Good. But I want to activate AnyIP feature of linux (as described here) and make my machin respond to ping6 packets sent to any ip from 2a0c:xyzx:xyzx:xyzx::/64
subnet. I assume this should be done by adding the folowing route to the loob back interface. So I inserted this command:
ip -6 route add local 2a0c:xyzx:xyzx:xyzx::/64 dev lo
After adding this route I can do pings of any IP from the subnet locally (from inside my own Ubuntu machine) but my machine still does not respond to remote ping packets addressed to my ipv6 subnet. It only responds to the single IP assigned explicitly to eth0.
Please guide me on how I can make my machine responsible for the whole ipv6 subnet.