Как я могу очистить DNS на Ubuntu 17.04?


70

Как я могу очистить DNS на Ubuntu 17.04?

У меня, кажется, есть несколько проблем с DNS с момента обновления до 17.04 с 16.10, и я прошёл очистку DNS, но не могу найти, как это сделать.

Может кто-нибудь сказать мне, пожалуйста?


1
Я столкнулся с тем же самым вчера. Это позаботилось о моей проблеме: superuser.com/a/1200745
Клей Остер,

3
Возможный дубликат Как очистить кеш DNS?
Чай Т. Рекс

1
Я удалил часть решения из вопроса. Но вы можете найти это здесь . Пожалуйста, опубликуйте часть решения в поле «Ваш ответ» ниже. Это вполне нормально, чтобы ответить на свой вопрос и принять ваш ответ. Также, пожалуйста , не добавляйте тег «решено» в заголовок .
Помский

Я не нашел ничего работающего, кроме перезагрузки системы и
обхода

1
Если вы используете Chrome и у вас есть проблемы с кэшем, это также поможет очистить Chrome от DNS-кэша chrome: // net-internals / # hsts
peter

Ответы:


105

Вы можете использовать эту команду: sudo systemd-resolve --flush-caches

Чтобы убедиться, что сброс был успешным, используйте: sudo systemd-resolve --statistics

Образец вывода:

Cache
  Current Cache Size: 0
          Cache Hits: 101
        Cache Misses: 256

Этот ответ лучше предыдущего, поэтому я пометил его как один верный ответ.
бабки

15
Когда я бегу sudo systemd-resolve --flush-caches, я получаю systemd-resolve: unrecognized option '--flush-caches'.
Натан Френд

1
То же, что @NathanFriend - при проверке вывода --help эта подкоманда была удалена в 17.10
Routhinator

2
Я использую Ubuntu 18.04, и там есть подкоманда.
the_drow

1
Нет в Ubuntu 16.04
adamczi

27

Эта команда должна перезапустить локальную службу имен и очистить локальный кэш DNS:

systemctl restart systemd-resolved.service

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


Это похоже на единственный способ очистить все до 0 при запуске --statisticsсразу после. На Ubuntu 18
расовый

0

Я сделал это: https://github.com/dunderrrrrr/dnscache

Может быть, это то, что вы ищете.

Монтаж

$ git clone git@github.com:dunderrrrrr/dnscache.git
$ cd dnscache/
$ sudo cp dnscache /usr/local/bin/
$ sudo chmod +x /usr/local/bin/dnscache

использование

Есть два аргумента, которые могут быть переданы в скрипт, clear или stats. Оба они должны быть самоочевидными.

$ sudo dnscache clear
DNS cache has been cleared!
[...]
Cache
  Current Cache Size: 0
[...]

3
Не могли бы вы расширить ответ и, возможно, добавить процесс установки и использования?
Помский

Это все на GitHub.
Дандерррррр

Я согласен, но ответы только на ссылки не рассматриваются как ответы на сайтах Stack Exchange . Большое спасибо за расширение вашего ответа.
Помский

2
Это только работает systemd-resolve --flush-cachesтогда systemd-resolve --statistics. : github.com/dunderrrrrr/dnscache/blob/master/dnscache
Рики Нотаро-Гарсия

Ну, вот и все. Это гораздо быстрее печатать sudo dnscache clear. Время это деньги, верно.
dunderrrrrr
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.