Настраиваю сабж на Debian 10. С NAT работает, как с IPv4 так и с IPv6. Но хотелось бы отдавать клиентам белые IPv6 адреса. Но не представляю, как это сделать. Провайдер вроде нормальный, по крайней мере /64 у меня есть и если я добавляю адрес на интерфейс, то он тут же начинает работать. Вроде через NDP это работает, tcpdump по крайней мере показывает NDP пакеты всякие (и мои, и не мои). Попробовал «тупо» указать /120 подсеть из моей белой подсети в rightsourceip, адрес выдался, но ничего кроме самого сервера не пинговалось. Через tcpdump вижу пакет с echo request и всё. Попробовал руками добавить ip neigh c этим адресом, не помогло. Также пробовал добавлять кусок отсюда, тоже не помогло.
Текущая конфигурация (с NAT):
/etc/ipsec.conf:
conn vpn
auto = add
keyexchange = ikev2
compress = yes
dpdaction = clear
ike = aes128-sha1-modp1024!
esp = aes128-sha1!
left = 77.73.69.197
leftsubnet = 0.0.0.0/0, 2000::/3
leftid = vbezhenar.com
leftcert = vbezhenar.com-cert.pem
leftsendcert = always
right = 0.0.0.0/0
rightauth = eap-mschapv2
eap_identity = %any
rightsendcert = never
rightsourceip = 10.84.175.2/24, fdd8:5196:a899:6984:393e:d71e:875b:1e02/120
rightdns = 10.84.175.1
/etc/network/interfaces:
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
allow-hotplug ens3
iface ens3 inet static
address 87.73.69.197/24
gateway 87.73.69.1
iface ens3 inet static
address 10.84.185.1/32
iface ens3 inet6 static
address 2a00:1838:38:31d::b6e5/64
pointopoint 2a00:1838:38::1
gateway 2a00:1838:38::1
iface ens3 inet6 static
address 2a00:1838:38:31d:59b8:037c:5159:3fec/64
/etc/nftables.conf:
#!/usr/sbin/nft -f
flush ruleset
table ip nat {
chain postrouting {
type nat hook postrouting priority 0;
oif ens3 ip saddr 10.84.185.0/24 snat 87.73.69.197
}
}
table ip6 nat {
chain postrouting {
type nat hook postrouting priority 0;
oif ens3 ip6 saddr fdd8:5196:a799:6984:393e:d71e:875b:1e00/120 ip6 daddr 2000::/3 snat 2a00:1838:37:31d:59b8:037c:5159:3fec
}
}