Неділя, 26 квітня, 2009 | автор:

Довірся мені. Ми як і раніше маємо справу з регулярними виразами – тільки в кільцевої (і невизначено практично) шлях. Це досить повний перелік того, як йти про промивку DNS кеші, використовуючи регулярні вирази, щоб показати, де подібні методи відхиляються.

Чому ми хочемо, щоб очистити DNS кеш точно?

Є цілий ряд причин, щоб очистити DNS кеші, хоча я вважаю, що ці є найбільш поширеними:

  • An интрасеть служба має власїли (внутрішній) IP-адреса, коли в мережі компанії, але вона має публічний IP-адресу для зовнішнього доступу. При спробі отримати доступ до цієї служби через межі після отримання доступу до його зсередини, є шанс, що ви б кешувати приватний (недоступний) IP. Гарне довгострокове рішення, щоб зробити обслуговування недоступним крім як через VPN. A simpler solution is to leave work at work. 😛
  • An internet service or web site changes their DNS settings and your desktop/laptop is looking at theoldsetting. In this case, the new setting has not yet propagated. Hosting Admins come across this case very often.
  • Конфіденційність: If someone can track your DNS history then it wouldn’t be too hard to figure out which web sites you’ve been viewing. Though the individual pages you’ve viewed can’t be tracked in this way, the hostnames, як от “dogma.swiftspirit.co.za” або “google.comwill be in the DNS cache, likely in the order you first accessed each site. There are better ways to do this though. One example is to use a Tor network for all DNS requests.

Flushing WindowsDNS cache, from command prompt:

Evidence suggests that prior to Windows 2000, Windows ОС не кешують результати DNS. The IPCONFIG команда, запустити з командного рядка, було дано деякий контроль над кеш DNS і залишився приблизно таким же, так як.

Щоб отримати до підказкою при використанні перспектива як не адміністратор: Пуск -> програми -> аксесуари -> Клацніть правою кнопкою миші “Командний рядок” -> Запустити від імені адміністратора

в іншому випадку: Пуск -> Rа -> [CMD ] -> [ добре ]

IPCONFIG / flushdns

Flush the DNS Resolver Cache in Windows

Крім того, можна очистити кеш в Windows, за допомогою перезапуск the “DNS-клієнт” або “DNSCache” послуга.

Кеш DNS Промивання Mac OS X, з командного рядка:

з Mac OS X, яблуко Макs вже працює Unix на основі, POSIX-поступливий, операційна система, заснована на Наступний крок, Сам спочатку містить код з FreeBSD і NetBSD. використання Mac OS X lookupd або dscacheutil для управління кешем DNS, в залежності від версії.

Для того, щоб отримати запрошення до вводу: Області застосування -> утиліти -> термінал

(lookupd|dscacheutil) -Скидання кеша

Що у нас тут? Згідно частина 1, the вертикальна смуга вказує на те, що або “lookupd” АБО “dscacheutil” є прийнятними. The кругла дужка свідчать про те, що вертикальна смуга відноситься тільки до “lookupd|dscacheutil” частина виразу. таким чином, the ” -Скидання кеша” не є опціональною і повинні бути включені в команду для того, щоб працювати. Зверніть увагу, що ці команди не справляють ніякого виведення, якщо немає помилки.

Використовуйте dscacheutil, якщо ви використовуєте Mac OS X 10.5 (леопард) або пізніше.

Mac OS X:

lookupd -flushcache

Mac OS X Leopard:

dscacheutil -flushcache

Use dscacheutil to flush the cache in Mac OS X Leopard

Існує також графічний інструмент, DNS Flusher, який автоматично використовує правильна команда доступна.

Промивання Linux / Unix’ DNS cache, з командного рядка:

N.B. Якщо ви вже не маєте ні прив'язувати (з пошуком кешування включений), Nscd, або встановлена ​​Dnsmasq і запущена на * Nix основі робочого столу / сервері, Ви, ймовірно, НЕ кешування DNS на всіх і немає нічого, щоб позбутися. In that case you will be utilising your DNS server for every web request, probably slowing your web experience.* If so, I recommend at least installing nscd as it is the easiest to set up. **

Flushing nscd’s cache

As with the Mac OS command, this produces absolutely no output unless there is an error:

(|sudo )(|/usr/sbin/)nscd -i hosts
  • Use sudo if you’re not already root otherwise the first selection is blank.
  • Specify /usr/sbin/ if nscd is not already within thepath”. If your distribution has nscd in a strange place, locate it first:
locate -r bin/nscd$

Notice that the abovebin/nscd$is itself a regular expression. 🙂

Using nscd, invalidate thehostscache, logged in as a user:
sudo nscd -i hosts
Using nscd, invalidate thehostscache, logged in as root:
nscd -i hosts
Using nscd, invalidate thehostscache, logged in as root, specifying the full path:
/usr/sbin/nscd -i hosts

Flushing bind’s cache

Для очищення кешу BIND в, ми видаємо команду через rndc. Використовуйте Sudo, якщо ви ще не корінь:

(|sudo )rndc флеш

Перезапуск служби також працює кешування!

Ось як перезапустити або з кешування демонів:

(|sudo )(послуга |/і т.д. /(RC  .d|гс  .d / INIT  .d|INIT  .d)/)(прив'язувати|Dnsmasq|Nscd) перезапуск

Це починає ставати важко читати. *** На щастя, я докладно пояснив:

  • Як і в попередній команді, використовувати Sudo, якщо ви ще не корінь.
  • Другий вибір має перший варіант “послуга “. Це відноситься в основному до систем Red Hat / CentOS і Fedora.
  • The “/і т.д. /(RC .d|гс .d / INIT .d|INIT .d)/” Необхідно ще більше розширити. Це для більшості інших систем. в цілому, rc.d для якщо ви використовуєте систему ініціалізації BSD-стиль (наприклад: Arch Linux, FreeBSD, або OpenBSD). Кращий спосіб, щоб знати напевно, яку команду використовувати, щоб «знайти’ правильний Nscd або Dnsmasq path. Більшість ароматів Unix, навіть Solaris, використовувати Nscd:
знайти -r  .d / Nscd $ ; знайти -r  .d / Dnsmasq $ ; знайти -r  .d / rndc $
  • Останній вибір між “прив'язувати”, “Nscd”, і “Dnsmasq”. Це повністю залежить від того, який встановлений і використання.
  • Останній з шаблону, ” перезапуск”, це інструкція дається сценарій управління демона.

Арка, використовуючи Dnsmasq, перезапуску демона кеша, logged in as root:

/і т.д. / rc.d рестарт / Dnsmasq

Арка, використовуючи Nscd, перезапуску демона кеша, увійшли в систему як користувач:

SUDO /etc/rc.d/nscd перезавантаження

CentOS / червоний капелюх, використовуючи Nscd, перезапуску демона, як корінь:

служба Nscd перезавантаження

nscdrestart

Флеш внутрішній кеш DNS Mozilla Firefox,:

Mozilla Firefox зберігає свій власний кеш DNS для виконання. Firefox 2 буде кешувати тільки 20 записи до 60 секунд. Значення за замовчуванням, як в Firefox 3 здається 512 записи до 60 хвилини, що здається набагато більш розумним для кожного дня перегляду. Якщо ваш робочий стіл має вбудований кеш (які найбільш зараз роблять) то кеш тут насправді зайвим. Я не в курсі будь-яких інших браузерів, які реалізують кешування DNS.

Я знайшов кілька рішень для того, коли вам потрібно очистити кеш. Здається, є багато способів зробити це, однак, це найпростіше, який я поставив в порядку переваги.:

  1. встановити Firefox DNS Flusher аддон – забезпечує кнопку, щоб очистити кеш.
  2. встановити кеш DNS аддон – забезпечує перемикач, який включає або відключає кеш DNS.
  3. Очистити кеш (очищає кеш браузера, а також кеш DNS): вибрати Tнструменти -> ясно Private даних; Видалити всі прапорці C, за виняткомaщо; натисніть [ видалити зараз ].
  4. Вручну робити те, що робить DNS Cache: встановити наступні 2 про:конфиг опції “network.dnsCacheExpiration” і “network.dnsCacheEntries” для 0 а потім назад в стан за замовчуванням.

У мене був поганий записи в кеші, і я очистив кеш-пам'ять браузера. Але його все ще дає мені неправильну інформацію. що дає?

Через те, як працює поширення DNS, Вам бажано потрібно промити DNS на всі DNS-хости між собою і “authoritive” господар, починаючи з хостом найближчого до authoritive хоста (далі від вашого браузера).

Як приклад, якщо у вас є маршрутизатор, кешування DNS, скинути кеш маршрутизатора перед повторним запуском кеша DNS вашої операційної системи, і тільки потім ви повинні очистити кеш в Firefox. Причина полягає в тому, що навіть якщо ви тільки очистити ОСА і кеша браузера Firefox, на робочому столі все ще збирається запитати маршрутизатор для його поганий запис в будь-якому випадку.

Що робити, якщо DNS-сервер є в мережі поза мого контролю?

Ви можете спробувати тимчасово за допомогою іншого сервера імен, можливо, навіть публічно ВІДЧИНЕНО сервер. OpenDNS показує деяку гарну інформацію про те, як це зробити. Якщо ви хочете, Ви також повинні мати можливість отримати відповідну інформацію від вашого власного провайдера про своїх дозвільних DNS-серверах. місцевий приклад (Південна Африка) є Saix котрий списки їх дозволяють DNS-сервери.

* Швидше за все, причина, чому Firefox має кеш DNS вбудований ****
** “((pacman|йогурт) -S|спливати|(ням|доречність|APT-отримати) встановлювати) Nscd” а потім переконайтеся, що служба додається в скрипт запуску. Зверніться до документації з установки вашого дистрибутива.
*** Я шукаю в підсвітку синтаксису плагін, який може працювати з регулярним виразом
**** Я читав заяву, що перезапуск мережі(ІНГ|) Служба також очищає кеш DNS, однак я не бачив будь-яких доказів того, що це правда. Якщо у кого є приклад, де це вірно, будь ласка, надайте мені з деталями.
частка
Категорія: мереж, мережу
Ви можете слідкувати за відповідями до цього запису через RSS 2.0 подача. Ви можете залишити відгук, або трекбек з вашого власного сайту.

2 Відповіді

  1. 1
    Stef 

    Great article-need this..lol..

  2. 2
    John Hall 

    Thanks mate, good explanation helped me understand a little more. Its a bit of a minefield or what also I’m on Ubuntu 10.04 and it works on that to, ok thanks again John.

Залишити коментар » Увійти