<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[DNS&#x2F;CLI: Could not resolve host — причины и как исправить ошибку]]></title><description><![CDATA[<p dir="auto">Ошибка <strong>Could not resolve host</strong> в CLI знакома всем, кто работает с командной строкой. Она выскакивает при попытке пинга, curl или wget — система просто не может перевести доменное имя в IP-адрес. Это мешает скачать файлы, проверить API или развернуть проект.</p>
<p dir="auto">Разберёмся, почему это происходит и как починить. Вы узнаете основные причины и шаги исправления для разных систем. После этого команды снова заработают без сбоев, а диагностика сети станет проще.</p>
<h2>Основные причины ошибки</h2>
<p dir="auto">Ошибка <strong>Could not resolve host</strong> возникает, когда DNS-резолвер не находит IP для домена. Это может быть из-за кэша, настроек сети или проблем у провайдера. Например, вы запускаете <code>curl api.example.com</code>, и терминал выдаёт ошибку — домен не резолвится, хотя браузер открывает сайт нормально.</p>
<p dir="auto">Часто виноват локальный кэш DNS, который хранит устаревшие записи. Или файл hosts содержит неверные записи, переопределяющие DNS. Плюс, если DNS-сервера провайдера барахлят, резолв не проходит. В CLI это заметнее, чем в GUI, потому что инструменты вроде ping напрямую зависят от системного резолвера.</p>
<p dir="auto">Вот типичные сценарии:</p>
<ul>
<li><strong>Кэш DNS</strong>: После смены IP домена старые записи мешают.</li>
<li><strong>Файл hosts</strong>: Локальные записи блокируют правильный резолв.</li>
<li><strong>DNS-сервера</strong>: Медленные или недоступные серверы провайдера.</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Причина</th>
<th>Симптомы</th>
<th>Быстрая проверка</th>
</tr>
</thead>
<tbody>
<tr>
<td>Кэш DNS</td>
<td>Ошибка на известных доменах</td>
<td><code>nslookup google.com</code> работает, ping — нет</td>
</tr>
<tr>
<td>Файл hosts</td>
<td>Только на конкретном домене</td>
<td>Проверить /etc/hosts или C:\Windows\System32\drivers\etc\hosts</td>
</tr>
<tr>
<td>DNS-сервера</td>
<td>На всех внешних доменах</td>
<td><code>cat /etc/resolv.conf</code> показывает плохие серверы</td>
</tr>
</tbody>
</table>
<h2>Очистка DNS-кэша и проверка hosts</h2>
<p dir="auto">Сначала стоит сбросить кэш — это решает 70% случаев. На Windows команда <code>ipconfig /flushdns</code> очищает локальный кэш. На macOS и Linux набор <code>sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder</code> или <code>sudo systemd-resolve --flush-caches</code> делает то же самое. После этого протестируйте <code>ping google.com</code>.</p>
<p dir="auto">Дальше проверьте файл hosts. Он переопределяет DNS локально, и неверная запись вроде <code>127.0.0.1 badsite.com</code> ломает всё. Откройте файл в редакторе с правами root: на Linux <code>/etc/hosts</code>, на Windows <code>C:\Windows\System32\drivers\etc\hosts</code>. Закомментируйте (#) подозрительные строки и сохраните.</p>
<p dir="auto"><em>Не забудьте</em>: После правок hosts перезапустите сеть или терминал.</p>
<p dir="auto">Шаги по очистке:</p>
<ol>
<li>Выполните flush DNS для вашей ОС.</li>
<li>Откройте hosts: <code>sudo nano /etc/hosts</code>.</li>
<li>Удалите или закомментируйте записи домена.</li>
<li>Тест: <code>curl -I https://example.com</code>.</li>
</ol>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>ОС</th>
<th>Команда flush</th>
<th>Путь к hosts</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows</td>
<td><code>ipconfig /flushdns</code></td>
<td>C:\Windows\System32\drivers\etc\hosts</td>
</tr>
<tr>
<td>Linux</td>
<td><code>sudo systemd-resolve --flush-caches</code></td>
<td>/etc/hosts</td>
</tr>
<tr>
<td>macOS</td>
<td><code>sudo dscacheutil -flushcache</code></td>
<td>/etc/hosts</td>
</tr>
</tbody>
</table>
<h2>Смена DNS-серверов</h2>
<p dir="auto">Если кэш чист, проблема в серверах — провайдерские DNS часто тормозят. Перейдите на публичные: Google (8.8.8.8, 8.8.4.4) или Cloudflare (1.1.1.1). На Linux отредактируйте <code>/etc/resolv.conf</code>: добавьте <code>nameserver 8.8.8.8</code>. Но это временно — NetworkManager перезапишет.</p>
<p dir="auto">Для постоянных изменений правьте конфиг интерфейса. На CentOS/RHEL: <code>sudo vim /etc/sysconfig/network-scripts/ifcfg-eth0</code>, добавьте <code>DNS1=8.8.8.8</code>. Затем <code>systemctl restart NetworkManager</code>. На Windows зайдите в настройки адаптера, IPv4 → Свойства → Укажите DNS вручную.</p>
<p dir="auto"><strong>Важно</strong>: После смены перезапустите сеть и проверьте <code>nslookup site.com</code>.</p>
<p dir="auto">Варианты DNS:</p>
<ul>
<li>Google: 8.8.8.8 (быстрый, надёжный).</li>
<li>Cloudflare: 1.1.1.1 (приватность).</li>
<li>Яндекс: 77.88.8.8 (для РФ).</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Метод</th>
<th>ОС</th>
<th>Команда/Шаги</th>
</tr>
</thead>
<tbody>
<tr>
<td>Временный</td>
<td>Все</td>
<td><code>echo "nameserver 8.8.8.8" &gt; /etc/resolv.conf</code></td>
</tr>
<tr>
<td>Постоянный Linux</td>
<td>RHEL/CentOS</td>
<td>Добавить в ifcfg-eth0: DNS1=8.8.8.8</td>
</tr>
<tr>
<td>Windows</td>
<td>GUI</td>
<td>Настройки → Сеть → IPv4 → DNS</td>
</tr>
</tbody>
</table>
<h2>Дополнительные проверки сети</h2>
<p dir="auto">Иногда ошибка от роутера или предсказания DNS. Перезагрузите роутер — это сбрасывает его кэш. В Chrome отключите <em>DNS prefetching</em>: Настройки → Дополнительно → Системные → Сними галку “Использовать предсказание DNS”. Проверьте URL в CLI: без http:// или с лишним слешем резолв сломается.</p>
<p dir="auto">Тестируйте инструментами: <code>dig example.com</code> покажет DNS-цепочку, <code>traceroute</code> — маршрут. Если ничего не помогает, проблема у провайдера — звоните в поддержку.</p>
<ul>
<li><strong>Перезагрузка роутера</strong>: Очищает NAT и DNS.</li>
<li><strong>Проверка URL</strong>: <code>curl https://api.example.com</code> без опечаток.</li>
<li><strong>Тест инструментами</strong>: <code>nslookup</code>, <code>dig</code>, <code>ping -c 4</code>.</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Инструмент</th>
<th>Что проверяет</th>
<th>Пример</th>
</tr>
</thead>
<tbody>
<tr>
<td>nslookup</td>
<td>DNS-резолв</td>
<td><code>nslookup google.com</code></td>
</tr>
<tr>
<td>dig</td>
<td>Полную цепочку</td>
<td><code>dig +short example.com</code></td>
</tr>
<tr>
<td>traceroute</td>
<td>Маршрут</td>
<td><code>traceroute ya.ru</code></td>
</tr>
</tbody>
</table>
<h2>Когда ошибка прячется глубже</h2>
<p dir="auto">Эти шаги решают большинство случаев, но есть нюансы вроде файрвола или VPN, блокирующих UDP 53. Стоит поэкспериментировать с DoH (DNS over HTTPS) в браузере или systemd-resolved. Или поднять локальный резолвер типа dnsmasq для разработки.</p>
]]></description><link>https://forum.exlends.ru/topic/609/dns-cli-could-not-resolve-host-prichiny-i-kak-ispravit-oshibku</link><generator>RSS for Node</generator><lastBuildDate>Wed, 20 May 2026 08:16:02 GMT</lastBuildDate><atom:link href="https://forum.exlends.ru/topic/609.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 20 Feb 2026 13:43:39 GMT</pubDate><ttl>60</ttl></channel></rss>