У меня есть машина Vista64 за маршрутизатором NAT, подключенная к Интернету IPv4.
На моем компьютере включен Teredo, и у меня есть IPv6-адрес с префиксом 2001: 0 :. Я могу ping
несколько серверов в Интернете IPv6 (например, force.ipv6only.se
или ipv6.google.com
), и tracert
показывает, что мой IPv6-трафик направляется через ретранслятор teredo. Однако я не могу подключиться к своей машине или пропинговать ее с машины в Интернете IPv6. А tracert
в этом направлении останавливается на тередо реле.
Что необходимо сделать для подключения к серверу с поддержкой Teredo за NAT?
Убедитесь, что машина с собственным IPv6 не находится за брандмауэром с отслеживанием состояния, который блокирует icmpv6
.
У меня была аналогичная проблема, когда машина в сети с 6to4 не могла подключиться к машине с помощью teredo в другой сети. Явно разрешая icmpv6
в брандмауэре IPv6 на шлюзе 6to4 (вместо простого использования ip6table -m state --state ESTABLISHED,RELATED
) было достаточно, чтобы решить проблему. Это происходит из-за того, что teredo отправляет эхо-запрос IPv6 на «собственный» (в данном случае 6to4) хост, причем iptables не идентифицирует его как «RELATED
", и не будет работать, если этот ping-пакет будет отброшен или отклонен.
Блокировка ICMP обычно вызывает только головную боль, но я (как оказалось по ошибке) полагал, что трекера состояния netfilter будет достаточно, чтобы разрешить все необходимые пакеты ICMP.
Скорее всего, проблема с брандмауэром. Ping включен, если разрешен общий доступ к файлам и принтерам. Брандмауэр Vista по умолчанию разрешает общий доступ к файлам и принтерам только в вашей локальной подсети. Таким образом, машина из другого места в Интернете IPv6 находится в другой подсети и не сможет получить доступ к службам общего доступа к файлам и принтерам, включая Ping.
В последнее время я не проводил много времени с брандмауэром Vista (в настоящее время я в основном использую Linux), поэтому я не могу дать вам точных шагов, чтобы разблокировать его, но попробуйте временно отключить брандмауэр, чтобы увидеть, имеет ли это значение .
Если вы находитесь за NAT, очень вероятно, что когда сервер Teredo пытается открыть вам соединение, но ваш NAT не перенаправляет вам нужный порт (-ы).
Я бы выяснил, какие порты требуются, или, если возможно, перенаправил все порты на ваш компьютер, чтобы проверить, действительно ли это проблема переадресации портов.
Проверьте Вики go6 на Teredo и посмотрите, дает ли раздел «Адресация Teredo IPv6» какое-либо представление о том, что еще вам может понадобиться изучить. Вы должны иметь возможность посмотреть назначенный вам IPv6-адрес, а затем определить порты, которые вам нужно переадресовать.