Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
hs01:~/temp/sources$ grep -nB2 PREFETCH_TTL_CALC ./unbound-1.4.22/util/data/msgreply.h
55-/** calculate the prefetch TTL as 90% of original. Calculation
56- * without numerical overflow (uin32_t) */
57:#define PREFETCH_TTL_CALC(ttl) ((ttl) - (ttl)/10)
Совсем плохо будет если туннелировать трафик в днс пакетах через такой рекурсер.
есть ли какие либо недостатки в таком решении?
Да и дело-то собственно, даже не в этом
а именно по причине, что сервера гугля не могут отресолвить часть доменных имен.
Как же не в этом? Вы публично на весь интернет крикнули и том, что сервис X медленно загибается. Это просто так сложилось, что гугл настолько велик, что ему, по сути, плевать, что написано на Хабре. А была бы компания поменьше — вы этой статьей могли бы серьезно повредить ее бизнесу. Был бы скандал.
$ time host 89.233.43.71
71.43.233.89.in-addr.arpa domain name pointer ns1.censurfridns.dk.
real 0m0.340s
user 0m0.012s
sys 0m0.000s
$ time host 213.73.89.122
122.89.73.213.in-addr.arpa domain name pointer www.ccc.de.
real 0m1.859s
user 0m0.012s
sys 0m0.000s
$ time host 77.88.8.8
8.8.88.77.in-addr.arpa domain name pointer dns.yandex.ru.
real 0m0.063s
user 0m0.004s
sys 0m0.004s
$ time host 8.8.8.8
8.8.8.8.in-addr.arpa domain name pointer google-public-dns-a.google.com.
real 0m0.073s
user 0m0.012s
sys 0m0.000s
valdikss@valaptop ~ % time host 213.73.89.122
122.89.73.213.in-addr.arpa domain name pointer www.ccc.de.
host 213.73.89.122 0.01s user 0.01s system 33% cpu 0.040 total
valdikss@valaptop ~ % time host 89.233.43.71
71.43.233.89.in-addr.arpa domain name pointer ns1.censurfridns.dk.
host 89.233.43.71 0.01s user 0.00s system 19% cpu 0.034 total
valdikss@valaptop ~ % time host 77.88.8.8
8.8.88.77.in-addr.arpa domain name pointer dns.yandex.ru.
host 77.88.8.8 0.01s user 0.00s system 9% cpu 0.104 total
valdikss@valaptop ~ % time host 8.8.8.8
8.8.8.8.in-addr.arpa domain name pointer google-public-dns-a.google.com.
host 8.8.8.8 0.01s user 0.00s system 21% cpu 0.062 total$ time host ufsin45.ru 89.233.43.71
;; connection timed out; no servers could be reached
host ufsin45.ru 89.233.43.71 0.00s user 0.00s system 0% cpu 10.009 total
$ time host ufsin45.ru 213.73.89.122
;; connection timed out; no servers could be reached
host ufsin45.ru 213.73.89.122 0.00s user 0.01s system 0% cpu 10.015 total
$ time host ufsin45.ru 77.88.8.8
Using domain server:
Name: 77.88.8.8
Address: 77.88.8.8#53
Aliases:
ufsin45.ru has address 85.249.4.35
ufsin45.ru mail is handled by 10 mail.ufsin45.ru.
host ufsin45.ru 77.88.8.8 0.00s user 0.00s system 6% cpu 0.145 total
$ time host ufsin45.ru 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:
Host ufsin45.ru not found: 3(NXDOMAIN)
host ufsin45.ru 8.8.8.8 0.00s user 0.00s system 5% cpu 0.157 total
И, судя по увеличивающимся запросам на форумах по продуктам Google, эта проблема набирает обороты и, возможно, скоро еще один бесплатный сервис Корпорации Добра канет в лету…

set type=ns
> ufsin45.ru
Сервер: resolver1.opendns.com
Address: 208.67.222.222
Не заслуживающий доверия ответ:
ufsin45.ru nameserver = ns2.nameself.com
ufsin45.ru nameserver = ns1.nameself.com
> server ns1.nameself.com
Сервер по умолчнию: ns1.nameself.com
Addresses: 2001:1bb0:e000:15::7
81.176.95.18
195.64.155.90
> set type=a
> ufsin45.ru
Сервер: ns1.nameself.com
Addresses: 2001:1bb0:e000:15::7
81.176.95.18
195.64.155.90
*** ns1.nameself.com не удалось найти ufsin45.ru: No response from server
робот Googlebot не может получить доступ к вашему сайту
Число ошибок за последние 24 ч. при попытке робота Googlebot получить информацию DNS для вашего сайта: 30426. Общая доля ошибок при запросах DNS для вашего сайта составляет 58.2%.
Здесь же какой то гугль/опенднс/яндекс/хрен с горы, который нам ничего не должен, не обещалВообще-то обещал. А если вы считаете что его обещаниям верить нельзя, то с какого перепугу вы решили, что вашему провайдеру можно верить? Притом, что он зачастую ваш трафик отдаёт-таки третьему лицу не глядя?
Именно включение параллельного опроса и дает нам основное преимущество в скорости, т.к. при нахождении результата в кеше любого из провайдеров мы получаем результат очень быстро, и не ждем полного и медленного разресолвивания если у первого провайдера нет ответа в кэше.
neg_ttl=1m; //Время кеширования отрицательных ответов (т.е. если домен не найден)
ngrep -W byline -d lo host 127.0.0.1 and port 53
Google Public DNS не ресолвит некоторые домены