Расчет IPv6-адреса
Ваш префикс в сети 6to4 напрямую зависит от вашего публичного IPv4.
Чтобы получить его, нужно перевести четыре октета IPv4 в шестнадцатеричный вид.
Например, если ваш IPv4 — 1.2.3.4:
Переводим в HEX: 01, 02, 03, 04.
Собираем префикс: 2002:0102:0304::/48.
Для проверки можно поднять туннель командами в терминале. Допустим, ваш IPv4 — 192.0.2.1, тогда ваш IPv6 будет начинаться с 2002:c000:0201::.
Сервер:
Код: Выделить всё
# Создаем туннельный интерфейс
sudo ip tunnel add tun6to4 mode sit remote any local 192.0.2.1 ttl 64
sudo ip link set dev tun6to4 up
# Назначаем вычисленный IPv6 адрес интерфейсу
sudo ip -6 addr add 2002:c000:0201::1/16 dev tun6to4
# Добавляем маршрут через стандартный anycast-адрес 6to4 (192.88.99.1)
sudo ip -6 route add ::/0 via ::192.88.99.1 dev tun6to4
или
Постоянная настройка через /etc/network/interfaces
Код: Выделить всё
auto tun6to4
iface tun6to4 inet6 v4tunnel
address 2002:XXXX:XXXX::1 # Замените на ваш вычисленный адрес
netmask 16
gateway ::192.88.99.1
local 1.2.3.4 # Ваш публичный IPv4
endpoint any
ttl 64
Код: Выделить всё
sudo iptables -A INPUT -p 41 -j ACCEPT
sudo iptables -A OUTPUT -p 41 -j ACCEPT
Клиент:
Код: Выделить всё
auto he-ipv6
iface he-ipv6 inet6 v4tunnel
address 2001:470:1f14:23a::2
netmask 64
endpoint ip_сервера
local ip_клиента
ttl 255
gateway 2001:470:1f14:23a::1