4

I have two virtual machines with Ubuntu Server 20.04. One of these virtual machines is a DHCPv6 server, and the other one is a client. I am able to set an IPv6 address on the client, but I cannot ping to and from this address. ip -6 route shows this address but with prefix length of 128. I would like to have the prefix length equals to 64, the same as the server IP address has. When I add to my routing table on the client IP address obtained from the server but with prefix length equals to 64, I can ping between my virtual machines.

This is my /etc/dhcp/dhcpd6.conf file on the server:

default-lease-time 2592000;
preferred-lifetime 604800;
option dhcp-renewal-time 3600;
option dhcp-rebinding-time 7200;
allow leasequery;
option dhcp6.name-servers 3ffe:501:ffff:100:200:ff:fe00:3f3e;
option dhcp6.domain-search "test.example.com","example.com";
option dhcp6.info-refresh-time 21600;

authoritative: subnet6 fdaa:a:a:a::/64 { range6 fdaa:a:a:a::100 fdaa:a:a:a::199; }

The last three lines were added by me.

This is my /etc/netplan/00-installer-config.yaml file on the client:

network:
   ethernets:
      ens3:
         dhcp4: false
         dhcp6: true
   version: 2

Thank you in advance for any help.

user6758
  • 59
  • 1
  • 9

1 Answers1

8

As per the DHCPd documentation:

In a properly functioning system the client should use a prefix length of 128 and get any on-link information from the RAs from a router.

Since you are using two virtual machines and I assume no IPv6-capable virtual router connects to that virtual network, nobody is sending out those RAs so your client cannot get the correct subnet mask.

Check the link for more information.

Tommiie
  • 5,704