Systemd's Networkd: невозможно добавить маршрут по умолчанию для ipv6

У меня чертовски непросто настроить IPv6-адрес на моем новом VPS. Я думал, что я знаю, что я делаю, но, очевидно, сетевой не согласен, у меня продолжают появляться проблемы при попытке добавить маршрут по умолчанию.

Вот информация о сети, предоставленная мне моим провайдером:

Subnet      2001:19f0:6:2::/64
Gateway     2001:19f0:6::1
Nameserver  2001:4860:4860::8888
Nameserver  2001:4860:4860::8844

Interface:       ens3
OS:              Ubuntu 18.04.02
Systemd version: 237

Текущая настройка

Я могу легко настроить свой IP-адрес и добавить маршрут к шлюзу с помощью следующего файла systemd:

[Match]
Name=ens3

[Network]
Address=209.222.17.197/26
Gateway=209.222.17.193
DNS=8.8.8.8

[Network]
Address=2001:19f0:6:2::1337/64

[Route]
Destination=2001:19f0:6::1

Я не получаю ошибок в journalctl, я могу успешно пинговать 2001:19f0:6::1, но, конечно, у меня нет шлюза по умолчанию или доступа в интернет. Я могу легко использовать 2001:19f0:6::1 как мой шлюз по умолчанию с помощью следующей команды:sudo ip -6 route add default via 2001:19f0:6::1

Это дает мне полную маршрутизацию ipv6, я могу пинговать ipv6.google.com,

Эта проблема

Кажется, я не могу настроить шлюз по умолчанию в сети, я потратил так много часов, пробуя разные комбинации опций, что, я думаю, это может быть ошибкой. Например, если я изменю свою конфигурацию, чтобы она выглядела так:

[Match]
Name=ens3

[Network]
Address=209.222.17.197/26
Gateway=209.222.17.193
DNS=8.8.8.8

[Network]
Address=2001:19f0:6:2::1337/64

[Route]
Destination=2001:19f0:6::1

[Route]
Gateway=2001:19f0:6::1
GatewayOnlink=true

Я получаю следующую ошибку в журнале journalctl:

May 27 19:31:46 public-NY systemd-networkd[2452]: ens3: Could not set route: No route to host

Я всегда вижу эту чертову ошибку "нет маршрута к хосту", если нет маршрута к 2001:19f0:6::1 тогда какого черта я могу пинговать это?!

Я сыт по горло этой проблемой, но я хотел бы использовать netplan и, следовательно, systemd-networkd для моей сети. Я просто делаю что-то глупое или что-то настолько критичное, как сетевое, действительно ли это сломано?

0 ответов

Это наверное GatewayOnLink это вызывает проблему, потому что, насколько я вижу, этот шлюз не подключен. Ваша подсеть по ссылке 2001:19f0:6:2::/64адрес шлюза не находится в этой подсети - /64 что это в 2001:19f0:6:0::/64 (extra:0` добавлено для наглядности).

Теперь, как вы можете пропинговать этот адрес шлюза, который я не могу вам сказать - скорее всего, он принимается через RA, что странно, но не неизвестно, в среде хостинга - но в любом случае это не маршрут по ссылке, и поэтому networkd совершенно справедливо говорит вам, что нет маршрута к этому хосту с использованием заданных вами параметров.

Другие вопросы по тегам