LINUX.ORG.RU
ФорумAdmin

Как сделать ipv6 с wireguard и openwrt?

 , ,


2

1

Есть vps на котором установлен vpn wireguard. Есть комп, на котором есть только ipv4 соединение PPPoE. Если я подключаюсь через приложение на пк, то у меня работает ipv6 через wireguard. Все супер. Сейчас поставил на свой роутер openwrt, настроил wireguard, все работает но ipv6 нет. Подскажите, как сделать так, чтобы ipv6 заработал.

Ответ на: комментарий от KoRn0509

Епт, тогда конфиг wireguard в студию. Но на правду это непохоже, т.к. для slaac надо /64 пробросить в туннель, что, очевидно, не в ваших широтах понимания.

Anoxemian ★★★★★
()
Последнее исправление: Anoxemian (всего исправлений: 1)
Ответ на: комментарий от Anoxemian

Конфиг сервера


[Interface]

PrivateKey = remove
Address = 10.1.1.1/24, fd1::1/64
ListenPort = 6969

PostUp = iptables -A FORWARD -i ens3 -o wg0 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o ens3 -j MASQUERADE; iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
PostDown = iptables -D FORWARD -i ens3 -o wg0 -j ACCEPT; iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o ens3 -j MASQUERADE

# Peers

# ПК
[Peer]
PublicKey = remove
PresharedKey = remove
AllowedIPs = 10.1.1.2/32, fd1::2/128
PersistentKeepalive = 25

# Мобила
[Peer]
PublicKey = remove
PresharedKey = remove
AllowedIPs = 10.1.1.3/32, fd1::3/128
PersistentKeepalive = 25

# Ноут
[Peer]
PublicKey = remove
PresharedKey = remove
AllowedIPs = 10.1.1.4/32, fd1::4/128
PersistentKeepalive = 25

# Роутер
[Peer]
PublicKey = remove
PresharedKey = remove
AllowedIPs = 10.1.1.5/32, fd1::5/128
PersistentKeepalive = 25

# Планшет
[Peer]
PublicKey = remove
PresharedKey = remove
AllowedIPs = 10.1.1.6/32, fd1::6/128
PersistentKeepalive = 25

Конфиг на роутере

[Interface]

PrivateKey = remove
Address = 10.1.1.5/32, fd1::5/128

DNS = 10.1.1.1, fd1::1

[Peer]
PublicKey = remove
Endpoint = xxx.xxx.xxx.xxx:6969
AllowedIPs = 0.0.0.0/0, ::/0
PresharedKey = remove
PersistentKeepalive = 25

Dns такие потому что на vps стоит еще unbound С таким конфингом на всех устройствах все работает, и v4 и v6

KoRn0509
() автор топика
Ответ на: комментарий от Anoxemian

Ну на интерфейсе сервера как я понимаю у меня и так fd1::1/64 а пиру роутера только что заменил fd1::5/128 на fd1::5/64 Это не сработало. Или надо всем пирам на /64 заменить?

KoRn0509
() автор топика
Ответ на: комментарий от KoRn0509

allowedips - не адрес. fd1::/64 и почитай про slaac. И вообще, /32 в ipv4 натуральный идиотизм. Надо /30 и тогда будет канонично.

Anoxemian ★★★★★
()
Последнее исправление: Anoxemian (всего исправлений: 1)
Ответ на: комментарий от KoRn0509

Сам не знаю, но сделал бы так сначала.

# Конфиг на роутере
Address = 10.1.1.5/24, fd1::5/64
[Peer] # sv
AllowedIPs = 10.1.1.1/32, fd1::1/128, 0.0.0.0/0, 2000::/3

А потом проверил бы брандмауэр и sysctl и маршруты.

naKovoNapalBaran
()
Ответ на: комментарий от naKovoNapalBaran

Это править именно на роутере? или на серваке? Если на роутере, не совсем понимаю зачем AllowedIPs = 10.1.1.1/32, fd1::1/128, 0.0.0.0/0, 2000::/3 Если эта строчка отвечает за то, что отправлять в тунель. 0.0.0.0/0 и ::/0 у меня стоит что бы весь трафик отправлялся через тунель wg

KoRn0509
() автор топика

Стоит настроенный WireGuard на VPS с подключенным ipv6. На каждом устройстве дома стоит настроенный клиент.

Роутер - ширпотребный TP-Link, в процессе никак не задействован, кроме раздачи интернета. Провайдер ipv6 не выдаёт и не собирается.

Брат жив. Белые ipv4/6 в наличии.

turbognida
()
Ответ на: комментарий от turbognida

Ну в данный момент и у меня так через приложуху работает ipv4/6. Но я хочу избавиться от клиентов на каждом устройстве. И установить один единственный клиент на openwrt что бы был как v4 и так и v6 Но в данный момент работает только ipv4

KoRn0509
() автор топика
Ответ на: комментарий от KoRn0509

Вообще так же, как с ipv4

ip6tables -t nat -A POSTROUTING -o (wan) -j MASQUERADE
и включить форвардинг.
А на LAN интерфейс выделить отдельную сеть, например, fd2::/64, а роутеру присвоить fd2::1

Вот как это сделать в openwrt - вопрос

TheAnonymous ★★★★★
()
Ответ на: комментарий от TheAnonymous

на новых прошивках уже нет iptables, там nftables

Кстати заметил такую вещь. Если подключить по ssh и пингануть ping -6 ipv6.google.com все ок. Но если пингануть ping -6 google.com то это уже не работает

KoRn0509
() автор топика

Попробуй еще, если ПК к роутеру подключен без впн и на нем не работает

# Конфиг сервера
Address = 10.1.1.1/24, fd1::1/64
# Роутер
[Peer]
AllowedIPs = 10.1.1.5/32, fd1::5/128, fd1::5:0/112

На интерфейсе ПК добавь адрес fd1::5:2/64
На локальном интерфейсе роутера fd1::5:1/112

И на роутере wg fd1::5:1/64

# Конфиг на роутере
Address = 10.1.1.5/24, fd1::5/64, fd1::5:1/64
[Peer] # sv
AllowedIPs = 10.1.1.1/32, fd1::1/128, 0.0.0.0/0, 2000::/3
naKovoNapalBaran
()
Последнее исправление: naKovoNapalBaran (всего исправлений: 8)
Ответ на: комментарий от naKovoNapalBaran

Наткнулся на вот такую инструкцию. https://overclockers-ru.turbopages.org/overclockers.ru/s/blog/Indigo81/show/30877/wireguard-openwrt-unbound-divnyj-novyj-mir-vpn

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

KoRn0509
() автор топика
20 июля 2023 г.