У меня есть роутер linux (dd-wrt без модуля ipv6, места для этого нет) и ПК с linux (Arch linux). Я пытаюсь настроить мой маршрутизатор для пересылки пакетов 6to4 (протокол 41) на мой компьютер и настроить туннель на нем.

Что я сделал до сих пор на маршрутизаторе:

iptables -t nat -A POSTROUTING -p 41 -d ! 192.168.1.0/24 -j SNAT --to _WANIP_
iptables -t nat -A PREROUTING -p 41 --dst _WANIP_ -j DNAT --to-destination _LANDEST_

где _WANIP_ - мой «внешний» адрес ipv4, а _LANDEST_ - компьютер с настройкой 6to4. Настройка 6to4 сделана так:

export IPV4_ADDRESS=_WANIP_
export OUR_IPV6_GW=`printf "2002:%02x%02x:%02x%02x::1" \`echo $IPV4_ADDRESS | tr '.' ' '\``
ip tunnel add tun6to4 mode sit ttl 32 remote any local $IPV4_ADDRESS
ip link set dev tun6to4 up
ip -6 addr add $OUR_IPV6_GW/16 dev tun6to4
ip -6 route add 2000::/3 via ::192.88.99.1 dev tun6to4 metric 1

OUR_IPV6_GW содержит один из 6to4 адресов. После выполнения всех этих шагов для тестирования я делаю ping6 ipv6.google.com чтобы увидеть, работает ли установка, и я получаю сообщения об ошибках. Destination unreachable: Address unreachable

Я могу пинговать (IPv4) до 192.88.99.1, ip -6 route выглядит нормально. Я также попытался запустить iptables -I [...] для настройки NAT, чтобы убедиться, что тени правил не вставлены.

Я использовал некоторые ресурсы из http://www.wtfm.org/ip6to4

1 ответ1

1

Вы не можете использовать 6to4 через NAT. Адреса IPv6 зависят от общедоступного адреса IPv4, которого нет у вашего ящика 6to4.

Кроме того, 6to4 является устаревшим / устаревшим протоколом. Если вам требуется подключение по протоколу IPv6, а ваш провайдер не предоставляет его, то лучше использовать управляемый туннель 6in4, например, для Hurricane Electric, нашего SixXS.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .