Для нашего сетевого курса нас попросили настроить сервер DHCPv6 на виртуальной машине. Я предпочитаю работать на виртуальной машине (на VMware) под управлением Ubuntu Desktop 16.04 и Lubuntu 14.04 в качестве тестового клиента с сетевыми адаптерами, настроенными для конкретной локальной сети. Я начал с настройки isc-dhcp-server для работы с IPv6, как описано в этом посте, и в итоге получил работающий dhcpv6 с файлом конфигурации (/etc/dhcp/dhcpd6.conf), содержащим следующие строки:
ddns-update-style none;
default-lease-time 100;
max-lease-time 200;
subnet6 2001:4340:4532:0400::/64{
range6 2001:4340:4532:0400::0004 2001:4340:4532:0400::0006;
}
Я также внес необходимые изменения в сценарий инициализации для установки .conf, .pid, файла аренды и настроил интерфейс ens33 со статическим адресом, как показано здесь: статический ip, установленный через графический интерфейс
Проблема в том, что клиент получает адрес /128.
После некоторого исследования я обнаружил, что сервер DHCPv6 не предоставляет информацию о длине префикса и что он должен транслироваться с помощью рекламы маршрутизатора. Итак, я установил radvd на той же виртуальной машине, включил переадресацию, отключил ufw и настроил его с помощью этого файла конфигурации:
interface ens33{
#this is important :
AdvSendAdvert on;
MaxRtrAdvInterval 6;
MinRtrAdvInterval 4;
#this is important to :
AdvManagedFlag on;
AdvOtherConfigFlag off;
prefix 2001:4340:4532:400::/64
{
AdvOnLink on;
AdvAutonomous off;
};
И я получаю это на стороне клиента: ifconfig на клиенте Я также использую это в качестве сетевых настроек на этом клиенте: введите описание изображения здесь. Когда я включаю AdvAutpendent или меняю настройки в окне редактирования проводного соединения, я получаю адрес /64 с правильным префиксом через SLAAC, указывающий, что RA получены и выполняют там работу, но это не то, что я ищу.
Я застрял с этим некоторое время и, пожалуйста, имейте в виду, что я новичок в сети и Linux, поэтому, пожалуйста, прости меня за отсутствие знаний.