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 совершенно справедливо говорит вам, что нет маршрута к этому хосту с использованием заданных вами параметров.