Секреты DNS кэша, или как увеличить скорость интернета.

Detka Sam

Любопытный
Пользователь
3 Окт 2013
102
90
28
37
Всем привет!
Решила собрать в кучу все свои нагугленные знания, для нубиков моего типа.
Угу, "Вставай, верши добро, пока ты в силе, не забывай: нам всем лежать в могиле. Был прав мудрец, сказав нам в назиданье, что не бывает зла без наказанья..." - отрывок из "Наука быть счастливым" - Юсуф Хас-Хаджиб Баласагуни. - увлекаюсь иногда, да.​

В общем, у меня последнее время, да и не только у меня, у игроков моих такая же фигня, интернет скорость совсем упала, а провайдер хороший. Вот и стала я искать причину в себе, то бишь в своем ноуте, чего только не гуглила, времени затратила кучу. Но поняла систему е#ой обиды на нас, наших машинок. Может вы конечно, тут все такие умные-разумные и все это знаете, ну тогда, молча покиньте данную тему и не нервируйте меня лишний раз. :p

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


Что такое по сути DNS кэш ? Это своего рода блокнот памяти нашей машинки. И в нем хранится как хорошая информация, так и не очч хорошая.

Давайте на своем примере рассмотрим как это действует:
Представьте, что у вас в городе открылось новое кафе (со стороны машины это сайт, где вы еще не были)
Вы приходите туда, вас там встречают, вы кушаете, пьете и в хорошем настрое уходите домой.
(со стороны машины - полазили на сайте, все понравилось, совершили или не совершили какие-то действия... машинка делает пометочку в памяти блокнотика DNS - ага, тут нам нравится)
На другой день, вы приходите в это же кафе, а там вам официантка нагрубила, пирожное не очч свежее, чай холодный и тп., вы не довольны, возмущаетесь, пишите в жалобную книгу)
(со стороны машины - сбои на хостинге, помехи в сети и тд., машинка делает новую, сомнительную пометочку в блокнотике - хм, че за фигня...)
В следующий раз, когда вы приходите туда, у них закрыто, ну я хз, что там может быть, ревизия, пересменка, проверки и тд.
(заходите на этот же сайт, а там тех работы, или админ на время отключил сайт, или хостинг проблемы устраняет)
Вы уже не просто возмущены, а твердо уверены что это не кавайное местечко, как вы решили впервые посетив его, а какая-то шарашкина контора, и вы больше сюда не зайдете, при этом вы даже не вспомните, что изначально, вас тут встретили хорошо.
(со стороны машины новая пометка в блокнотике - нам тут не рады, окай, да пошли они вообще
05ab207e5f1bc76469d04dbc6084c71c.gif
).

Через какое-то время, вам кто-то из друзей говорит: "Был недавно в этом кафе там все так супер, все такие няши-милаши-уточки", - и вы решаетесь еще раз туда сходить.
(машинка открывает блокнотик и смотрит последнюю запись, а там все плохо, и она решает за вас, что нет смысла туда еще раз ходить и тратить свое время, и выдает вам "Не удается найти сервер или DNS")

КОМП все решил за вас! ААААА!!! Восстание машин началось!
1dcc55a9b80f112daf03348227aff7b0.gif

На самом деле это был
e62aa2821d0cd2549a6892b8480f9053.gif

Все, что нам нужно сделать, это прочистить память нашей машинке, дабы не забывала, кто в доме хозяин.​

Открываем пуск, в поисковую строку вводим запрос: cmd
Жмем Enter.
Нам открылось окно нашего командного интерпретатора.
Прописываем в нем ipconfig /flushdns - это команда на очистку кэша DNS (записей в блокнотике машинки)
В итоге получаем отчет:
1.png

Вот и все, скорость загрузки страниц и скачивания увеличена в несколько раз.

В продолжение темы, рассмотрим вариант увеличения памяти нашего блокнотика, то есть размера кэша DNS, это также позволит нам увеличить скорость загрузки страниц, и позволит просматривать намного быстрее просматривать веб-сайты, особенно, если мы очень часто висим на одних и тех же.
Сейчас будем менять некоторые значения реестра, тут я покажу все скриншотами, хотя там ничего сложного нет, не нужно пугаться.
Итак, снова идем в нашу поисковую строку: Пуск ---> regedit. ---> Enter
Далее двигаемся пошагово, по ветке папок реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters

Останавливаемся на папке: Parameters, и выполняем такие действия:
1. В правой части окна редактирования папки, создаем 5 файлов DWORD (32-bit).
2.png

2. Затем каждый из файлов переименовываем в:
CacheHashTableBucketSize
NegativeCacheTime
CacheHashTableSize
MaxCacheEntryTtlLimit
MaxSOACacheEntryTtlLimit
3.png
3. Открываем каждый из файлов (команда изменить), меняем систему исчисления с шестнадцатиречной на десятичную, и только после этого прописываем числовое значение, соответствующее файлам.
CacheHashTableBucketSize = 10
NegativeCacheTime = 300
CacheHashTableSize = 211
MaxCacheEntryTtlLimit = 86400
MaxSOACacheEntryTtlLimit = 120
4.png
5.png

В итоге, у нас должны появиться файлы с прописанным шестнадцатиричным кодом, конвертированные в десятичный код.
6.png
Закрываем окно реестра и перезагружаем машинку.

З.Ы Если я не правильно поняла суть, пусть знающие люди объяснят мне, что именно я не так поняла, заодно и просветят остальных.
9ca1d5762314ad45edf1e648a603f0f1.gif
 
Последнее редактирование модератором:

ClouD

Инквизитор
Команда форума
Модератор
3 Апр 2012
402
136
43
Ярославль
Довольно таки интересное обсуждение.
Как ни странно, но, так называемых пометок в записях кэша не наблюдается.
Кусок моего кеша:
Image20140319210825.png
Вывод производится командой:
Код:
ipconfig  /displaydns
Расшифровка ответа.
- доменное имя в шапке структуры
- имя записи -- в основной части структуры это доменное имя на которое произведено обращение
- тип записи -- так еще называется "ресурсная запись" -- Ресурсные записи DNS — записи о соответствии имени и служебной информации в системе доменных имён. © Википедия
- срок жизни -- время существования записи
- длинна данных -- количество бит информации
- раздел -- два типа разделов, основной (первичное обращение) и дополнительный (первичное и последующие обращения)
- А-запись -- адрес сервера на который ссылается доменное имя.

В дополнительной части структуры все тоже самое, но относится не к доменному имени а к NS-серверам.
Ознакомиться с типами ресурсных записей можно тут -- линк

Нигде не нашел упоминания о том, что кэш делает пометку о "плохих" действиях от сайта. Он лишь собирает информацию о расположении сайта для быстрого поиска ресурса в глобальной сети. Благодаря этому, при повторном посещении сайта поиск пройдет сначала на локальном компьютере (в кэше DNS Windows) и если ресурс не будет найден или не будет найден в сети по имеющимся данным начнется поиск ресурса уже из данных сети (опрос NS-серверов). Если ресурс по каким-либо причинам не найден или не ответил вовремя выдается сообщение о том, что ресурс не был найден.
 
Последнее редактирование:
  • Like
Реакции: Unix

pilad

Любопытный
Пользователь
25 Сен 2012
229
73
28
43
Как очистить DNS-кэш?
Очистка DNS-кэша заставляет DNS запрашивать DNS-сервер вместо использования информации, хранящейся в кэше. При изменении управляемых веб-сайтов или при часто возникающих ошибках после ввода правильного адреса, возможно, понадобится очистить DNS-кэш.

Для выполнения следующих действий необходимо открыть командную строку с расширенными правами. Дополнительные сведения см. в разделе Командная строка: вопросы и ответы.
Нажмите кнопку ПускИзображение кнопки «Пуск».
В поле поиска введите командная строка.
В списке результатов щелкните правой кнопкой Командная строка и выберите команду Запуск от имени администратора. Требуется разрешение администратораЕсли отображается запрос на ввод пароля администратора или его подтверждения, укажите пароль или предоставьте подтверждение.
В командной строке введите ipconfig /flushdns.

Кэширование можно возложить на локальный проксик HandyCache. Кэширует как днс записи, так и файлы.
 

Unix

VIP
VIP
30 Мар 2012
683
341
63
49
Ukraine
action.pvpund.com
я читал в нэте ващще супер пупер байку что если не подключать а просто скотчем прицепить параллельно твоему нэт кабелю ещё один кабель то скорость нэта удвоится - но я допустим бы ещё как-то согласился если бы всё не было шлюзамипровайдера строго ограничено. а так можэт то и правда но только для локальных сетей или для сетей где ****)) короче если провайдер даёт тебе определённую скорость то интересно какими способами можно заставить провайдера дать тебе больше за те же деньги? чистка кэша точно не ускорит
реестр отвечает за регистрацию компонентов. страницы сайтов не являются компонентами
Я бы еще поверил в браузерный кэш))) который сохраняется в любом случаи, на случай если ты на одном и том же сайте, что бы не грузить одни и те же файлы по 100500 раз, и когда браузер твой грузит страницу, он смотрит, что обновил сервер, и что стоит обновить а что стоит загрузить иp кэша. Да скрины твои смогут увидеть только те, кто разеган на твоем форуме))). Ибо не зареганные юзеры не имеют права просмотривать контент.
 
Последнее редактирование модератором:

Detka Sam

Любопытный
Пользователь
3 Окт 2013
102
90
28
37
В ответ Ниоро:
"Как ни странно, но, так называемых пометок в записях кэша не наблюдается.
Кусок моего кеша:" - иногда с детьми проще говорить, чем со взрослыми, только потому, что дети воспринимают, все что им говорят с непосредственной верой, и главное ВНИМАТЕЛЬНО слушают, а взрослые начинают копаться и искать то, чего нет. Когда вы уже научитесь внимательно читать, слушать уж простите сказать не могу, своего собеседника?
Цитирую свое сообщение: Итак, тем кого заинтересовал данный вопрос, и кто не знает на него ответа, своими словами как поняла, объясню почему у нас падает скорость и как ее вернуть.
Але, уважаемые, я не программист, не айтишник, я обычный пользователь. Спуститесь с небес, боги.

В ответ Юниксу: Все тоже самое что и в ответ Ниоро, но цитата меняется на : " у меня последнее время, да и не только у меня, у игроков моих такая же фигня, интернет скорость совсем упала, а провайдер хороший".

Мой провайдер выдает мне скорость 10мб/сек стартом. По всем спидтестерам она у меня вообще больше 20мб/сек, а скачиваю я все7го лишь на 1-2мб/сек. Наверное стоит задуматься почему так, или не? После этого процесса, у меня скорость, возросла до 8 мб/сек.

Ребят, честно мне все равно что вы тут будите разбирать и под какими лупами) Я поделилась тем, что мне помогло. А ваше дело использовать это или нет.

Насчет скринов, не знала. Скину Ниоро в скайп, пусть отредачит и вставит.
 

ClouD

Инквизитор
Команда форума
Модератор
3 Апр 2012
402
136
43
Ярославль

pilad

Любопытный
Пользователь
25 Сен 2012
229
73
28
43
Через какое-то время, вам кто-то из друзей говорит: "Был недавно в этом кафе там все так супер, все такие няши-милаши-уточки", - и вы решаетесь еще раз туда сходить.
(машинка открывает блокнотик и смотрит последнюю запись, а там все плохо, и она решает за вас, что нет смысла туда еще раз ходить и тратить свое время, и выдает вам "Не удается найти сервер или DNS")
У каждой такой записи есть TTL. Запись сама сотрётся.
Жмем Enter.
Нам открылось окно нашего командного интерпретатора.
Прописываем в нем ipconfig /flushdns - это команда на очистку кэша DNS (записей в блокнотике машинки)
В итоге получаем отчет:
1.png
Вот и все, скорость загрузки страниц и скачивания увеличена в несколько раз.
Вы очистили кэш принудительно, и теперь будет небольшая задержка к сайтам. Так как машина будет обращаться к DNS серверу вначале.
Повторно уже будет использовать свой кэш. При чём тут скорость вообще? ДНС сервер он преобразует понятное имя человеку, в цифровое имя(айпи адрес) понятное машине.Скорость зависит от провайдера , от магистрали до сайта, и от нагруженности сайта.
В продолжение темы, рассмотрим вариант увеличения памяти нашего блокнотика, то есть размера кэша DNS, это также позволит нам увеличить скорость загрузки страниц, и позволит просматривать намного быстрее просматривать веб-сайты, особенно, если мы очень часто висим на одних и тех же.
Сейчас будем менять некоторые значения реестра, тут я покажу все скриншотами, хотя там ничего сложного нет, не нужно пугаться.
Не скорость увеличивает, а доступ. Так как вначале смотрим свой кэш, и если записи уже нет, TTL истёк , обращаемся к DNS.
Код:
  Для ускорения доступа к часто посещаемым интернет узлам их можно прописать в файле C:\WINDOWS\system32\drivers\etc\hosts  и таким образом обойти DNS. Для этого можно воспользоваться так же программой CIP, найти которую можно на их домашней странице http://radsoft.net/ 
 
  Другой способ обхода DNS заключается в создании большого кэша для хранения DNS имён в кэше. Создайте текстовый файл с названием dnscache.reg и поместите в  него:
 
[HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ Dnscache\ Parameters]
"CacheHashTableBucketSize"=dword:00000001
"CacheHashTableSize"=dword:00000180
"MaxCacheEntryTtlLimit"=dword:0000fa00
"MaxSOACacheEntryTtlLimit"=dword:0000012d
 

ClouD

Инквизитор
Команда форума
Модератор
3 Апр 2012
402
136
43
Ярославль
это у него внутренняя скорее всего
Внутренняя равна внешней. Тестировал.
За 20 плачу, 20 получаю. 450р в мес (ростелеком)
Ну так сравниваешь оптоволокно и адсл линию. У нас оптика ростелекома тоже от 400 рублей, правда не понимаю методику построения цены. Оптоволокно стоит намного дороже, включая оборудование, по сравнению с адсл технологией. За адсл гребут в 2 раза больше чем за оптику, а качество адсл...даже не знаю как сказать...на телефоне 3G намного лучше :D
 

Detka Sam

Любопытный
Пользователь
3 Окт 2013
102
90
28
37
В ответ pilad : Когда я гуглила инфу, то нашла, что записи не стираются, как ты утверждаешь, а заменяются со старых на более новые. И количество сохраняющихся записей зависит от размера твоего кэша. К тому же кэш сохраняет как положительные данные, так и отрицательные. Именно поэтому я провела паралелль между обслуживанием в кафе. Положительные данные это те данные, при которых поиск ипа удался, а отрицательные это те когда поиск не удался. Но изначально прежде чем обратиться к ипу сервера днс, виндовс обращается к памяти самой машинки. И если у нее уже есть какие то записи, то на основании их он выдает информацию ускоренно, или наоборот замедленно. Но если отрицательных записей больше, то виндовс даже отправлять не будет вас к днсу сервера. Я это все узнала, когда читала как вообще работает запуск страниц интернета в 7-ке. Соответственно, если ты увеличишь память своего кэша, дав возможность сохранять большее количество записей и возможно суммировать их (возможно при запросе виндовс суммирует количество отрицательных и положительных записей и выводит среднесписочное - отрицательное или положительное), я не углублялась прям на столько в это. А стерев старую память машинке, после увеличения ее кэша, ты просто начинаешь записывать все с чистого листа, и о какой загрузке длительной идет речь я не пойму, если ты получишь данные напрямую?! Наоборот изначально, пока идет запись, поиск ипа работает быстро, если конечно же на самом хосте нет проблем.
 
  • Like
Реакции: ClouD

pilad

Любопытный
Пользователь
25 Сен 2012
229
73
28
43
Второй пост:
- срок жизни -- время существования записи
Время записи в секундах. Как в 0 упадёт - запись о кэше исчезнет.
Или принудительно стереть:
ipconfig /flushdns
Прекрасно винда работает и с родным количеством n-записей.
Бывает, что днс сервера провайдера тупят. Можете принудительно сетевой карте сторонний нормально работающий днс вписать, там их минимум 2 можно вписать. Например: 8.8.8.8.
Тогда при подключении к сети с DHCP Вам назначат айпи и шлюз, но айпи адрес днс серверов Вы будете использовать свои нормально работающие.А не то, что Вам назначат.
 
  • Like
Реакции: ClouD

ClouD

Инквизитор
Команда форума
Модератор
3 Апр 2012
402
136
43
Ярославль
Честно, я не могу понять, что ты отстаиваешь и что оспариваешь) Ну я то понятно, отстаиваю свой пост, а ты что?=))))
Как я понял, Пилад остаивает мнение о том, что кэш ДНС ни как не влияет на скорость соединения, либо влияет не значительно. В любом слуячае вы оба правы. Кэш действительно влияет на скорость как и замена дефолтных днс серверов в настройках подключения. Вкупе эти действия дают не плохой результат.
А для удобства можно вообще написать батник, который при выключении ПК будет проводить чистку кэша и завершать работу системы.
P.S. Можно кстати не выполнять рестарт. Есть метод перезагрузки оболочки без перезагрузки ПК, работал такой метод на ХР, на более новых ОС не пробовал...
 

Stranger

Любопытный
Blacklisted
10 Июн 2012
65
85
33
29
Как я понял, Пилад остаивает мнение о том, что кэш ДНС ни как не влияет на скорость соединения, либо влияет не значительно. В любом слуячае вы оба правы. Кэш действительно влияет на скорость как и замена дефолтных днс серверов в настройках подключения. Вкупе эти действия дают не плохой результат.
А для удобства можно вообще написать батник, который при выключении ПК будет проводить чистку кэша и завершать работу системы.
P.S. Можно кстати не выполнять рестарт. Есть метод перезагрузки оболочки без перезагрузки ПК, работал такой метод на ХР, на более новых ОС не пробовал...
MARK8-20140321005806.png
 

Пользователи онлайн

Последние ресурсы

Статистика форума

Темы
3.838
Сообщения
21.199
Пользователи
7.611
Новый пользователь
Shenia