Назад | Перейти на главную страницу

Ошибка проверки достоверности IPv6. Что это значит?

Когда я использую https://ipv6-test.com/validate.php для проверки готовности моего веб-сайта к протоколу IPv6 (например, в домене www. [private] .com) тест не проходит и возвращает ошибку:

IPv6 web server     web server is unreachable : Connection refused

Другие тестовые сайты, такие как https://ready.chair6.net/ также не прошел тест с различными ошибками о ipv6.

Я проверил, нет ли ошибок на сервере при выполнении теста, и я сделал несколько вещей, чтобы включить ipv6. наконец, я решил проигнорировать эту проблему, так как я не знаю, почему тест не удался, но я все еще могу пропинговать адрес ipv6 на своем сервере. но я имею в виду только этот вопрос:

делает ли тест заключение, что веб-сайт www. [private] .com доступен только для клиента, который подключается только с использованием адреса ipv6? Если да, то я должен беспокоиться. Что вы думаете?

Отредактируйте для пояснения (чтобы ответить @Piotr P. Karwasz):

1) сервер слушает IPv6:

2) Это результат ip6tables -nVL INPUT (обратите внимание, что я также полностью отключил брандмауэр, чтобы протестировать сайт, но при выполнении curl, как вы упомянули, соединение все еще отказывается)

3) О директиве прослушивания. Да, директива прослушивания ipv6 есть. Например, сервер получил эту настройку:

server {

 listen ipv4:80
 listen ipv6:80 ipv6only=on;

}

server {
 listen ipv4:443 ssl http2
 listen ipv6:443 ssl http2 ipv6only=on;
}

4) Включена конфигурация IPv6:

также при выполнении этой команды:

[ -f /proc/net/if_inet6 ] && echo 'IPv6 ready system!' || echo 'No IPv6 support found! Compile the kernel!!'

Результат:

IPv6 ready system!

5) При этом: netstat -napl | grep 80 Похоже, что nginx и httpd без проблем работают на ipv6. Результат:

Другое об этом сервере:

а) nginx_apache как обратный прокси (nginx как фронтенд и apache как бэкэнд)

б) Операционная система - Centos 8

c) Использование хоста directadmin на linode (linode подтвердил, что на их стороне нет проблем с IPv6).

Изменить: решено. Спасибо @Piotr P. Karwasz за указание на опечатку в IP. Это была опечатка для односимвольного IP, где я поставил f305 вместо fe05

Отредактировано доменное имя для предотвращения индексации поисковой системой.

Вы проверили, доступен ли ваш хост через IPv6 с помощью ping, но вы на самом деле не подключились к нему через порт 80:

curl -6 -i http://www.example.com/

Не удается установить соединение. Это означает, что либо:

  • ваш сервер не прослушивает сокет IPv6. Вы можете проверить это с помощью:

    netstat -6nl | grep 80
    

    ищем строку вроде:

    tcp6       0      0 :::80                   :::*                    LISTEN
    

а затем проверьте Listen директивы в вашей конфигурации.

  • брандмауэр блокирует порт IPv6. Проверить с:

    ip6tables -nvL INPUT
    

    и если политика DROP и у тебя нет ACCEPT правило для порта 80, вам нужно его добавить.

редактировать: После ваших разъяснений кажется, что вы допустили опечатку, указав свой IPv6-адрес в nginx конфигурация: вы забыли последние 8 шестнадцатеричных цифр адреса. Если вам действительно не нужно указывать, по какому адресу следует nginx слушайте, просто укажите все адреса:

listen *:80;
listen [::]:80;