Встановлення IPv4 як кращого протоколу над IPv6


19

Я використовую як IPv6, так і IPv4 в локальній мережі, що містить Slackware 13.0. Як я можу встановити IPv4 як кращий протокол на робочих станціях цієї мережі? Я хочу використовувати IPv6 явно або тоді, коли доступні лише записи AAAA. Наприклад, якщо я спробую відкрити http://ipv6.org/ від Firefox, я завжди буду підключатися через IPv6. Така ж ситуація і з іншими програмами. Я спробував створити /etc/gai.conf і додати до нього наступне:

precedence ::ffff:0:0/96  100

Це повинно контролювати поведінку getaddrinfo (3) принаймні в Debian, але це не допомогло на Slackware.

Будь-які ідеї будуть оцінені. Спасибі заздалегідь!


1
Дуже дякую за вказівку /etc/gai.conf! Я шукав forr близько півроку! :)
колипто

Відповіді:


18

Згідно з precedenceдовідковою сторінкою, вставлення значення в gai.conf вимикає всі інші правила за замовчуванням. Спробуйте встановити всі правила, наведені в RFC 3484 (10.3):

  Prefix        Precedence Label
  ::1/128               50     0
  ::/0                  40     1
  2002::/16             30     2
  ::/96                 20     3
  ::ffff:0:0/96        100     4

1

ipv6 насправді не є моєю областю знань, але на сторінці man для resolver(5)цього, здається, є кілька варіантів, /etc/resolv.confякі можуть бути пов'язані:

options inet6Набори RES_USE_INET6в _res.options. Це спричиняє спробу AAAA-запиту перед запитом A всередині gethostbyname(3) функції та відображення відповідей IPv4 у "тунельній формі" IPv6, якщо не знайдено записів AAAA, але існує набір записів.

Можливо, у ваших клієнтів встановлений такий варіант?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.