Настройка 6rd relay сервера для провайдера.

Впервые опубликовано 2023-09-08

ВНИМАНИЕ! Этот способ раздачи IPv6 должен рассматриваться как временный: подробнее о 6rd.

Входные параметры для примера:

ipv4 адрес сервера: 10.0.0.1
ipv4 подсеть пользователей: 10.0.0.0/8
ipv6 подсеть: 2001:db8::/32
ip tunnel add 6rd mode sit local 10.0.0.1 remote any ttl 64
ip tunnel 6rd dev 6rd 6rd-prefix 2001:db8::/32 6rd-relay_prefix 10.0.0.0/8
ip link set mtu 1480 dev 6rd
ip addr add 2001:db8::1/32 dev 6rd
ip link set 6rd up

Пользователи с подсетью 10.0.0.0/8 смогут настраивать себе подсеть /56:

ip tunnel add 6rd mode sit local 10.51.52.53 ttl 64
ip tunnel 6rd dev 6rd 6rd-prefix 2001:db8::/32
ip a a 2001:db8:3435:3600::1/32 dev 6rd
ip link set 6rd up
ip r a ::/0 via ::10.0.0.1 metric 1

с такой настройкой, данному пользователю будет доступна подсеть 2001:db8:3435:3600::/56 (3435:36 – взято из 51.52.53).

Соответственно, чтобы раздавать с помощью 6rd клиентам подсети /48 придется выделить одну /32 на каждую /16 в сети v4, например:

подсеть 10.1.0.0/16, клиент 10.1.51.52, подсеть 2001:db8:3435::/48

Всему интернету (0.0.0.0/0) можно раздавать по /64, например:

клиент 192.0.2.5, подсеть 2001:db8:с000:205::/64

Настройка 6rd клиента через systemd-networkd.

В конфиге wan добавить в секцию [Network] параметр Tunnel с именем sit интерфейса

...
[Network]
...
Tunnel=6rd
...

Создать интерфейс /etc/systemd/network/6rd.netdev

[NetDev]
Name=6rd
Kind=sit
MTUBytes=1480

[Tunnel]
Local=10.51.52.53
IPv6RapidDeploymentPrefix=2001:db8::/32

Настроить адрес и маршрут интерфейса /etc/systemd/network/6rd.network

[Match]
Name=6rd

[Network]
Address=2001:db8:3435:3600::1/32
Gateway=::10.0.0.1

Применить конфигурацию

networkctl reload

На заметку. networkctl reload применяет изменения настроек у network конфигов. Если нужно изменить netdev, то необходимо сначала удалить интерфейс networkctl delete 6rd и уже после делать reload


6rd-relay-server.txt · Последние изменения: 2023-09-09 08:39 UTC От jamakasi
Personal Tools