Я использую Chromium и у меня проблемы с тем, что DNS не кэшируется в течение ожидаемого времени. Возьмите домен example.com. Согласно настройкам DNS, этот домен должен быть кэширован еще на 26151 секунду:
$ dig example.com
;; ANSWER SECTION:
example.com. 26151 IN A 93.184.216.34
Однако когда я открываю example.com в Chromium и открываю chrome: // net-internals / # dns, то IP-адрес забывается в течение минуты!
Почему Chromium не придерживается TTL настройки DNS домена? Как я могу заставить его кэшировать данные DNS до истечения срока их действия?
Ответы:
Chromium / Chrome не кэширует DNS-запросы более минуты.
Интересно, что от ошибок хрома - выпуск 164026 - DNS TTL не соблюдается с 21 апреля 2011
Ответ в билете 4 декабря 2012 года:
Билет закрыт 10 октября 2013 года как:
Это была известная проблема в течение многих лет; их внутренний DNS-распознаватель игнорирует TTL DNS-записей и кэширует DNS-запросы только в течение 1 минуты.
Пользователи годами запрашивали возможность изменить это поведение по умолчанию, и Google так и не создал ее.
В прошлом вы могли отключить внутренний DNS-преобразователь, в
chrome://flags
настоящее время, который больше не работает.Подводя итог, можно сказать, что это особенность, например, она делает это по замыслу.
(Первоначально я писал, что это никогда не может быть изменено, что, очевидно, не соответствует действительности. Действительно решительный человек может либо перекомпилировать Chromium, либо взломать двоичные файлы Chrome.).
Итак, в качестве дополнения: существует множество документально подтвержденных доказательств, что инженеры Google не намерены соблюдать TTL по умолчанию в полученных ответах DNS в Chrome / ium.
От отрицательного кеширования DNS-запросов (DNS NCACHE)
Хотя подразумевается, что распознаватель может / должен наложить максимальный лимит на кэширование ответа DNS, 1-минутный лимит в Google Chrome может быть слишком низким.
PS Я на самом деле нашел ответ на вопрос, который беспокоил меня годами, когда я получал статистику Chrome, чтобы ответить на этот вопрос: Chrome: DNS-запросы со случайными DNS-именами: вредоносная программа?
PPS Из приведенного ниже кода очевидно, что отрицательные ответы не кэшируются (TTL = 0).
С https://chromium.googlesource.com/chromium/src/net/dns/host_resolver_impl.cc
источник
dougblack.io
поэтому, возможно, полные правила немного сложнее. но 99 из ста доменов ведут себя так, как вы описали.