Как веб-браузер определяет, когда использовать IPv4 или IPv6 для подключения к месту назначения?

Я видел пару связанных сообщений по этой теме: Как клиентские приложения знают, как использовать IPv4 или IPv6? И Как узнать, подключен ли ваш браузер к адресу Ipv4 или Ipv6 веб-сайта?

Первый пост – пару лет, поэтому я не уверен, насколько он по-прежнему актуальен, а второй не ответил на мой вопрос.

Причина, о которой я прошу, – это установить отверстие pi, чтобы блокировать рекламу. Я настраиваю свой маршрутизатор на использование pi-hole в качестве моего DNS-сервера IPv4, однако по-прежнему вижу рекламу при просмотре сайта, например, CNN. Затем я понял, что мой провайдер ISP (Comcast) предоставил два IP-адреса, один IPv4 и один IPv6, а мой маршрутизатор также поддерживает IPv6.

Когда я вручную отключу IPv6 на своей сетевой карте, рекламные объявления перестают отображаться при просмотре веб-сайта CNN. Поэтому я пришел к выводу, что я использую IPv6 для подключения к веб-сайту CNN. Мой вопрос: когда веб-браузер решает использовать IPv4 или IPv6 для подключения к месту назначения? Просто попробуйте сначала использовать IPv6, и если это удастся, то используйте его, иначе вернитесь к IPv4?

Обратите внимание, что, по-видимому, модем / маршрутизатор Arris SBG6700-AC позволяет вам настроить DNS-сервер IPv4, но не DNS-сервер IPv6. Чтобы указать свой собственный DNS-сервер IPv6, я должен установить это с самого компьютера.

Во-первых: как вы разрешаете имя хоста, не имеет никакого отношения к тому, к какому адресу вы можете его решить. DNS-серверы вполне способны возвращать записи AAAA IPv6 при запросе через IPv4 и наоборот.

Что касается того, как браузер выбирает, какой адрес попробовать: первое сообщение, с которым вы связаны, по-прежнему актуально, единственное, что изменилось, – это небольшие корректировки приоритета.

  • Большинство современных браузеров используют алгоритм Happy Eyeballs ; Они пробовали все адреса сразу и придерживались того, который отвечает быстрее всего. Это полностью реализовано в приложении и не может зависеть от ОС. (Обратите внимание, что алгоритм иногда настраивается, чтобы дать начало IPv6 или IPv4, если они оба дают аналогичные результаты.)

  • Старые браузеры и многие другие программы используют все адреса один за другим, отсортированные в соответствии с алгоритмом выбора адресов по умолчанию , который обычно предпочитает собственный IPv6 через собственный IPv4 через автоматические туннели v6. Это упорядочение обычно реализуется в ОС (например, gai.conf), а программы не сортируют адреса вручную.

Вы не можете напрямую контролировать, как веб-браузер определяет, использует ли он IPv6 или IPv4.

Все это обрабатывается стеком IP в компьютере.

Что касается объявлений, я предлагаю вам взглянуть на альтернативные блокировки рекламы. Я не верю, что проблема v4 vs v6 отвечает за результаты, которые вы видите.

Подсказка для Windows: Adblock делает хорошую работу. Просто не используйте Adblock Plus, потому что он является болотом памяти, поскольку он загружается в таблицы «допустимых» объявлений.

Между тем, из вашего вопроса, у меня есть предложение: установите все маршрутизаторы для отключения IPv6 до тех пор, пока это не понадобится.

Затем сделайте то же самое для всех своих компьютеров. Для каждого интерфейса снимите флажок поддержки IPv6 (Windows) или установите его отключенным или автоматическим (Linux), и пусть маршрутизаторы обрабатывают все остальное.

Однажды IPv6 станет необходимым, но это будет в значительной степени проблемой для интернет-провайдеров. (Я использую Cox Cable). Чтобы довести это до уровня пользователя, им пришлось бы заменить наш комбинированный модем / маршрутизатор в то время. Или они потребуют от всех своих пользователей выполнять собственные реконфигурации маршрутизатора. Они будут терпеть убытки, если они сделают одно из этих действий, особенно если добавить дополнительные сборы за изменение или поддержку поддержки. В конце я предсказываю, что Кокс найдет способ предотвратить такую ​​большую работу. Они являются бизнесом, и они должны понимать, что если есть какие-либо дополнительные расходы или возможные пользовательские ошибки конфигурации, приводящие к простою, они потеряют клиентов.

Поэтому пока нет необходимости в IPv6 вообще, на уровне пользователя.

Все ваши системы за вашим маршрутизатором NAT, вероятно, смогут продолжать использовать v4 в обозримом будущем. V6 потребуется только в большей сети.

  • Что такое файл .episode ..?
  • Откройте прямой файл на жестком диске из Firefox (файл: ///)
  • JSON-LD Schema.org: несколько страниц видео / изображений
  • Почему некоторые веб-сайты недоступны с одного компьютера в сети?
  • Возможно, для многих доменных имен общий IP-адрес?
  • Веб-скребок с VBA (при HTML DOM)
  • Как заполнить форму Jsoup?
  • Как я могу улавливать и обрабатывать данные из ответов XHR с помощью casperjs?
  • Извлечение данных с карты
  • Браузер командной строки с поддержкой js
  • Как использовать новый плагин аффикса в загрузочном файле twitter 2.1.0?
  • Давайте будем гением компьютера.