Я купил VPS у IONOS. Хотя они предоставляют диапазон IPv6 2a00:xxxx:xxxx:67::/64, они не маршрутизируют его на сам VPS, что довольно странно.
Интересно, как мне этого добиться. У меня всего 254 клиента, так что я с удовольствием сделаю это вручную. Вот что я уже вижу в таблице маршрутизации:
ip -6 route
::1 dev lo proto kernel metric 256 pref medium
2a00:xxxx:xxxx:67:ffff::1 dev wg0 metric 1024 pref medium
2a00:xxxx:xxxx:67:ffff::2 dev wg0 metric 1024 pref medium
... all way to 254
2a00:xxxx:xxxx:67:ffff::254 dev wg0 metric 1024 pref medium
2a00:xxxx:xxxx:67::/64 dev ens192 proto kernel metric 256 pref medium
fd8e:xxxx:xxxx::/112 dev wg0 proto kernel metric 256 pref medium
fe80::/64 dev ens192 proto kernel metric 256 pref medium
default via fe80::1 dev ens192 metric 1024 onlink pref medium
Так мне нужно назначать клиентские IP-адреса отдельно, чтобы ens192это работало? Я сделал небольшой bash-скрипт для этого:
#!/bin/sh
NUMBER_CLIENTS=254
for ((DOT_IP=1; DOT_IP<=NUMBER_CLIENTS; DOT_IP++))
do
sudo ip -6 addr add 2a00:xxxx:xxxx:67:ffff::${DOT_IP}/64 dev ens192
done
Скрипт работает, но мои клиенты Wireguard VPN по-прежнему не получают работающий IPv6. После успешного подключения к Wireguard им назначается только IPv4, а не IPv6.
Что еще я могу сделать?
На основе ихгид, они, кажется, предлагают использовать accept_ra 0в статическом распределении IP. Но я не устанавливал его:
auto lo ens192
iface lo inet loopback
allow-hotplug ens192
iface ens192 inet dhcp
iface ens192 inet6 static
address 2a00:xxxx:xxxx:67::1
netmask 64
gateway fe80::1
Помимо этого у меня включена пересылка в /etc/sysctl.d/99-sysctl.conf:
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
Большое спасибо
решение1
Недавно у меня была похожая проблема. На IONOS VPS, использующем их конфигурацию по умолчанию, IPv6, к сожалению, перестает работать при включении net.ipv6.conf.all.forwarding = 1. Это характерно для настройки IONOS, поскольку они используют «рекламу маршрутизатора» для определения истинного адреса IPv6, вероятно, чтобы избежать необходимости создавать специальный файл интерфейсов для каждого VPS при развертывании образа. Их конфигурация IPv6 по умолчанию выглядит следующим образом:
iface ens192 inet6 manual
pre-up sleep 5
up dhclient -6 -nw -v ens192
down dhclient -6 -r -v ens192
Однако переадресация IP6 по умолчанию отключает рекламу маршрутизатора, поэтому в этом случае IPv6 перестает работать.
Рабочим решением этой проблемы является следующая конфигурация IPv6 /etc/network/interfaces(замените адрес на конкретный адрес IPv6 вашего VPS, может потребоваться перезагрузка):
iface ens192 inet6 static
accept_ra 2
address 2a00:xxxx:xxxx:67::1/128
up ip -6 r a default dev ens192
Принудительное accept_ra 2объявление маршрутизатора, но этот параметр игнорируется для «ручного» метода, поэтому используется «статический» метод.


