Почему в днс нет айфона 11
Перейти к содержимому

Почему в днс нет айфона 11

  • автор:

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

В серии предыдущих статей я описывал, почему повсеместно используемые VPN- и прокси-протоколы такие как Wireguard и L2TP очень уязвимы к выявлению и могут быть легко заблокированы цензорами при желании, обозревал существующие гораздо более надежные протоколы обхода блокировок, клиенты для них, а также описывал настройку сервера для всего этого.

Но кое о чем мы не поговорили. Во второй статье я вскользь упомянул самую передовую и недетектируемую технологию обхода блокировок под названием XTLS-Reality, и пришло время рассказать о ней поподробнее, а именно — как настроить клиент и сервер для нее.

Кроме того, что этот протокол еще более устойчив к выявлению, приятным фактом будет и то, что настройка сервера XRay для XTLS-Reality гораздо проще, чем описанные ранее варианты — после предыдущих статей я получил довольно много комментариев типа «А что так сложно, нужен домен, нужны сертификаты, и куча всего» — теперь все будет гораздо проще.

XTLS-Reality

Коротко про XTLS-Reality. Это самое новое изобретение от авторов XRay. Про XRay (и его прородителя V2Ray, он же V2Fly) я рассказывал в предыдущей статье. XTLS-Reality поддерживается в последних релизах XRay, Sing-box и многих клиентах.

Он предназначен для защиты от выявления методом active probing. В отличие от старых протоколов (Shadowsocks, VMess, VLESS, и транспорта XTLS-Vision), определение “свой/чужой” здесь происходит еще на этапе TLS-хендшейка в момент чтения ClientHello. Если клиент опознан как “свой”, сервер работает как прокси, а если нет — вжух! — и TLS подключение передается на какой-нибудь другой абсолютно реальный хост с TLS (например, google.com или gosuslugi.ru), и таким образом клиент (или цензор, желающий методом active probing проверить, а что же прячется на том конце) получит настоящий TLS-сертификат от google.com или gosuslugi.ru и настоящие данные с этого сервера. Полное соответствие. Механизм определения «свой/чужой» во многом схож с механизмом работы Cloak, и позволяет достоверно определить подлинность клиента, но вместе с тем не вызывает подозрения у цензоров и устойчив к replay-атакам — со стороны систем анализа трафика это выглядит как подключение к настоящему популярному сайту, сервер отдает настоящий TLS-сертификат этого сайта, и вообще все (включая TLS fingerprint сервера) выглядит до предела аутентично и не вызывает подозрений. Еще XTLS-Reality может оказаться вариантом для обхода суровых корпоративных прокси с Man-in-the-Middle, которые перешифровывают весь трафик из сети своим сертификатом (нередко подобные прокси имеют список исключений для ресурсов с HSTS и certificate pinning, либо для экономии ресурсов, и подобрав правильный домен можно пролезть во внешнюю сеть без расшифровки трафика). Бонусом еще XTLS-Reality обычно используется в паре с XTLS-Vision, то есть мы имеем очень достоверно выглядящие паттерны трафика из-за отсутствия двойного шифрования TLS-in-TLS (и заодно еще очень высокую производительность, у меня между хостами в Москве и в центральной Европе XRay легко выдает >100 мегабит).

Единственный минус подобного решения — в отличие от более старых протоколов (VLESS без XTLS) нет возможности работать через websocket-транспорт, и, соответственно, через CDN типа Cloudflare. Upd: такая возможность есть если использовать многоуровневую схему с SNI-proxy (типа haproxy) или второй IP-адрес — см. Особенности проксирования через CDN/Websocket/gRPC для обхода блокировок

Установка сервера XRay

А теперь настало время все это настроить. Дано: VPS на Linux (Debian или Ubuntu, на других дистрибутивах плюс-минус то же самое) с IPv4 или IPv6-адресом.

Установку XRay я уже описывал в предыдущей статье, поэтому здесь буду краток.

Можно установить XRay руками:

wget https://github.com/XTLS/Xray-core/releases/download/v1.8.1/Xray-linux-64.zip mkdir /opt/xray unzip ./Xray-linux-64.zip -d /opt/xray chmod +x /opt/xray/xray nano /usr/lib/systemd/system/xray.service systemctl enable xray

xray.service

[Unit] Description=Xray Service Documentation=https://github.com/xtls After=network.target nss-lookup.target [Service] User=nobody CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE NoNewPrivileges=true ExecStart=/opt/xray/xray run -config /opt/xray/config.json Restart=on-failure RestartPreventExitStatus=23 LimitNPROC=10000 LimitNOFILE=1000000 [Install] WantedBy=multi-user.target

А можно установить скриптом от разработчиков (почему-то по умолчанию он ставит старую версию 1.7.5, которая не поддерживает Reality, поэтому нужно явно указать более свежую):

bash -c "$(curl -L https://raw.githubusercontent.com/XTLS/Xray-install/046d9aa2432b3a6241d73c3684ef4e512974b594/install-release.sh)" @ install --version 1.8.1 

Скрипт установит XRay и создаст для него systemd-юнит.

Настройка сервера XRay

Для настройки нам понадобится ряд параметров. Часть из них нам может сгенерировать сам XRay:

/usr/local/bin/xray uuid # /opt/xray/xray если устанавливали вручную /usr/local/bin/xray x25519 # /opt/xray/xray если устанавливали вручную

На выходе вы получите UUID (идентификатор пользователя для протокола аутентификации VLESS), а также приватный и публичный ключи — запишите их, они вам понадобятся.

Еще один параметр, который нужен — short ID, он представляет собой просто шестнадцатиричное число (символы 0-9, a-g) длиной до 8 байт (16 символов) — можно набрать любую абракадабру типа «aabbccdd» или запустить openssl rand -hex 8

А вот дальше начинается самое интересное. Нам нужно найти сайт, под который мы будем маскироваться.

Требования довольно простые:

это должен быть иностранный сервер (вне РФ), не забаненный по домену Роскомнадзором, поддерживающий подключения по TLSv1.3 и HTTP/2, имеющий заглавную страницу, которая не переадресовывает на какой-нибудь другой домен. Если совсем упарываться, то неплохо было бы если бы IP-адрес был из диапазона того же облачного хостера, что и у вас, и чтобы сервер поддерживал Online Certificate Status Protocol (OCSP). Если вы не знаете, что вся эта фигня значит — не заморачивайтесь, выбирайте что-нибудь простое, например

  • www.samsung.com:443
  • www.googletagmanager.com:443
  • www.asus.com:443
  • www.amd.com:443
  • www.cisco.com:443
  • www.microsoft.com:443
  • dl.google.com:443
  • www.linksys.com:443
  • www.nvidia.com:443 и т.д.

Лучше всего выбирать что-нибудь из сети того же хостера, каким пользуетесь вы.
Для этого есть специальный инструмент: https://github.com/XTLS/RealiTLScanner

Скачиваете его под Windows/Linux со страницы Releases, или собираете сами (go build).

Далее, запускаете как-то так:

./RealiTLScanner -addr IP_вашего_VPS -showFail

Сканер будет перебирать IP-адреса из той же подсети, что и ваш сервер, и пытаться к ним подключиться по TLS. Если он что-то найдет — вы это увидите. Пример (я сканирую рандомный IPшник):

89.116.243.206:443 TLS handshake failed: EOF 89.116.243.207:443 TLS handshake failed: EOF 89.116.243.208:443 ----- Found TLS v1.3 ALPN CN=caprover.com,O=CapRover.com,L=Vancouver,ST=British Columbia,C=CA,1.2.840.113549.1.9.1=#0c11696e666f40636170726f7665722e636f6d 89.116.243.209:443 TLS handshake failed: EOF 89.116.243.210:443 ----- Found TLS v1.3 ALPN CN=patentpath.io 89.116.243.211:443 ----- Found TLS v1.3 ALPN CN=vps3.gecon.pl 89.116.243.212:443 TLS handshake failed: EOF 89.116.243.213:443 TLS handshake failed: EOF 89.116.243.214:443 TLS handshake failed: EOF 89.116.243.215:443 TLS handshake failed: read tcp 192.168.136.132:55142->89.116.243.215:443: i/o timeout 89.116.243.216:443 ----- Found TLS v1.3 ALPN CN=localhost,OU=none,O=none,L=Sometown,ST=Someprovince,C=US,1.2.840.113549.1.9.1=#0c137765626d6173746572406c6f63616c686f7374 89.116.243.217:443 TLS handshake failed: EOF 89.116.243.218:443 TLS handshake failed: EOF 89.116.243.219:443 TLS handshake failed: EOF 89.116.243.220:443 TLS handshake failed: EOF 89.116.243.221:443 TLS handshake failed: EOF 89.116.243.222:443 ----- Found TLS v1.3 ALPN 89.116.243.223:443 ----- Found TLS v1.3 ALPN CN=milapanel.milahosting.com 89.116.243.224:443 ----- Found TLS v1.3 ALPN CN=vps-us.workx.dev 89.116.243.225:443 ----- Found TLS v1.3 ALPN CN=www.google.com 89.116.243.226:443 ----- Found TLS v1.3 ALPN CN=www.bookifynow.com 89.116.243.227:443 ----- Found TLS v1.3 ALPN CN=next.tasosvl.cc 89.116.243.228:443 TLS handshake failed: EOF 89.116.243.229:443 ----- Found TLS v1.3 ALPN CN=alpaca-dreams.com 89.116.243.230:443 TLS handshake failed: EOF

Если сканер нашел какие-то домены — попробуйте сходить на них браузером — должен открыться соответствующий сайт без каких-либо ошибок сертификатов. Если не открывается, или лезут ошибки — такой домен нам не подходит, а если открывается и ошибок нет — можно попробовать маскироваться под него.

Сервер выбрали, настало время редактировать конфиг. Если вы ставили XRay вручную то он будет лежать в /opt/xray/config.json, если скриптом — то в /usr/local/etc/xray/config.json.

Приводим его к следующему виду:

< "log": < "loglevel": "info" >, "routing": < "rules": [], "domainStrategy": "AsIs" >, "inbounds": [ < "port": 23, "tag": "ss", "protocol": "shadowsocks", "settings": < "method": "2022-blake3-aes-128-gcm", "password": "aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbb", "network": "tcp,udp" >>, < "port": 443, "protocol": "vless", "tag": "vless_tls", "settings": < "clients": [ < "id": "4c3fe585-ac09-41df-b284-70d3fbe18884", "email": "user1@myserver", "flow": "xtls-rprx-vision" >], "decryption": "none" >, "streamSettings": < "network": "tcp", "security": "reality", "realitySettings": < "show": false, "dest": "www.microsoft.com:443", "xver": 0, "serverNames": [ "www.microsoft.com" ], "privateKey": "GOTPj_klK7_j_IvjxiCtyBL80RYotYSOdBBBSfFOMH4", "minClientVer": "", "maxClientVer": "", "maxTimeDiff": 0, "shortIds": [ "aabbccdd" ] >>, "sniffing": < "enabled": true, "destOverride": [ "http", "tls" ] >> ], "outbounds": [ < "protocol": "freedom", "tag": "direct" >, < "protocol": "blackhole", "tag": "block" >] >

На что обратить внимание: в «serverNames» указан домен, под сервер которого вы маскируетесь (в данном случае www.microsoft.com), «id» в секции «clients» — это тот самый UUID, что мы сгенерировали выше. «privateKey» и первый элемент в массиве «shortIds» — это приватный ключ и short ID, что мы тоже сгенерировали выше. Публичный ключ не теряйте, он будет нужен на клиенте.

В этом конфиге так же на 23 порту настроен Shadowsocks-2022, на всякий случай, вдруг пригодится. Если не надо, или хочется полной маскировки — можно удалить этот элемент из «inbounds».

Перезапускаем еще раз xray:

$ systemctl restart xray

Проверяем что все нормально запустилось:

$ journalctl -u xray

Например, XRay может ругнуться что не удается распарсить JSON-файл, обычно это связано с лишними запятыми в конце <> блока, в этом случае он укажет, на какой строке ошибка. Исправляем ошибки, перезапускаем еще раз, и переходим к настройке клиентов.

Настройка клиентов

Сначала Nekobox на десктопе (Windows, Linux, и есть неофициальные билды под MacOS).

Если вы раньше им не пользовались, нужно переключить его на использование движка sing-box, Preferences -> Basic Settings -> Core:

Идем в Server -> New profile и заполняем все вот так:

Address — IP-адрес вашего сервера, UUID — соответственно, UUID, SNI должен соответствовать домену, под который вы маскируетесь (один из списка «serverNames» из конфига сервера), uTLS — я выбираю Chrome (это маскировка клиента под обычный браузер), Reality Pbk — публичный ключ (не приватный, а второй, публичный), Reality Sid — shortId из конфига выше.

Сохраняем, кликаем правой кнопкой мыши на новый сервер в списке, жмем Start, и проверяем подключение выбрав там же Current Select -> URL test.

Если все нормально, то галочками «VPN Mode» или «System proxy» можно завернуть трафик всех приложений на прокси.

Настройка v2rayN под Windows аналогична, набор параметров тот же, вот скриншот (не мой, из гугла):

Автор Nekobox перестал собирать версии под macOS, поэтому я рекомендую использовать Wings X / FoXray. Настройки точно такие же.

Если вдруг вам нравятся Clash-based клиенты (например, Clash Verge под Windows, Linux, MacOS или для мобильных устройств), то нужно использовать ядро Clash.Meta и специальный конфиг для Clash. В случае с Clash Verge можно сделать так:

  1. Settings -> Clash Core -> Выбрать Meta
  2. Сохранить конфиг в какой-нибудь локальный файл:
mode: global mixed-port: 7890 allow-lan: false log-level: info ipv6: true secret: '' external-controller: 127.0.0.1:9090 proxies: - name: vless-reality-vision type: vless server: xxx.xx.xx.xx # ваш IP port: 443 uuid: 4c3fe585-ac09-41df-b284-70d3fbe18884 # ваш UUID network: tcp tls: true udp: true flow: xtls-rprx-vision servername: www.microsoft.com # ваш фейковый домен reality-opts: public-key: kbITklNKTdfvB6e3xy97pTV7gjl3Z3irv246oRZ5Gnk # public key short-id: aabbccdd # short ID client-fingerprint: chrome 
  1. Profiles -> New — Type : Local -> выбрать ваш файл и кликнуть по нему в окне Clash
  2. Proxies -> выбрать ваш новый прокси на вкладке Global -> кликнуть по полю справа чтобы протестировать подключение, должно появиться значение пинга
  3. Settings -> System proxy: вкл — после этого трафик всей системы пойдет через прокси. Можно использовать и TUN, но для этого надо запускать Clash Verge от рута.

Далее, мобильные клиенты. Вариант раз: в Nekobox или в v2ray кликнуть правой кнопкой мыши на ваш сервер из списка, выбрать Share -> QR code или Link, и получить ссылку или QR-код, которые потом можно отсканировать/вставить в мобильные клиенты. Либо вбить все те же данные руками, вот как это выглядит в андроидовском v2rayNG (версия из Google Play еще не обновилась и не умеет работать с Reality, скачиваем APK с Гитхаба):

Под iOS я рекомендую использовать Shadowrocket (3$) или Wings X / FoXray (он бесплатный). Настройки подключения полностью аналогичны описанному выше.

Советы бывалых

  1. Очень рекомендуется настраивать на клиентах правила маршрутизации (пример в комментариях), чтобы трафик до .ru-доменов и хостов с российскими IP шел напрямую, а не через прокси (в клиентах для такого поставляется GeoIP база данных).
  2. Обязательно используйте uTLS на клиентах, выставляя правильный TLS fingerprint (например, Chrome).
    Если при использовании XTLS вы почему-то не можете подключиться, в логах сервера видна ошибка типа «failed to use xtls-rprx-vision, found outer tls version 771», попробуйте сменить версию uTLS. У меня, например, при выборе «android» клиент не подключается, а при выборе «chrome» все окей.
  3. Для увеличения производительности можно настроить на сервере Bottleneck Bandwidth и Round-trip propagation time (BBR) congestion control algorithm:
    echo «net.core.default_qdisc=fq» >> /etc/sysctl.conf
    echo «net.ipv4.tcp_congestion_control=bbr» >> /etc/sysctl.conf
    sysctl -p
  4. Чтобы проверить, что маскировка работает как надо, добавьте IP-адрес вашего сервера и домен, под который вы маскируетесь, в hosts-файл (на Linux это /etc/hosts, на Windows это c:\windows\system32\drivers\etc\hosts), например, «38.25.63.10 www.microsoft.com», и после этого попробуйте зайти на этот адрес браузером — должна открыться настоящая страница этого домена с настоящим TLS-сертификатом: Другой вариант: использовать CURL.
    curl -v —resolve www.microsoft.com:443:151.101.65.69 https://www.microsoft.com (вместо 151.101.xx.xx должен быть IP вашего сервера)

О VLESS

Мы настроили протокол VLESS. Иногда в интернете можно встретить утверждения, что, мол VLESS не шифрует данные, а значит он небезопасен. Это не так. То, что VLESS не предусматривает шифрования на уровне протокола, не значит, что данные передаются в нешифрованном виде. VLESS всегда работает поверх TLS, трафик шифруется именно механизмами TLS, а не самого VLESS. Никакой проблемы с безопасностью тут нет, все секьюрно 🙂 То же самое с XTLS. XTLS отключает свой слой шифрования только в случае, если определяет, что обмен между пользователем и конечным сервером уже зашифрован TLS v1.3.

О надежности

Как сделать хорошую, правильную маскировку для XTLS-Reality? Внимание к мелочам.

  1. Выбирайте домен для маскировки от сайта, который хостится у того же хостера, что и вы (см. начало статьи).
  2. Перевесьте SSH на вашем сервере с 22 порта на какой-нибудь другой сильно повыше, а то слишком палевно
  3. Если вы используете панель типа X-UI или 3X-UI — то перевесьте ее тоже со стандартного порта на какой-нибудь нестандартный сильно повыше. В идеале стоит вообще заставить ее слушать на 127.0.0.1 (localhost), а подключаться к ней через SSH: например, если панель у вас на 127.0.0.1 и порту 48888, то сделав
    `ssh -L 8080:127.0.0.1:48888 user@serveradd -p `
    вы сможете попасть на панель пройдя браузером по адресу http://127.0.0.1:8080
  4. Сделайте проброс порта не только на 443/TCP-порт (его делает XTLS-Reality), а еще на 443/UDP и 80/TCP до сервера, под который вы маскируетесь. Например, если вы маскируетесь под www.microsoft.com, то отрезолвте его IP-адрес (с помощью nslookup, ping или какого-нибудь онлайн-сервиса), а потом добавьте правила iptables (можно засунуть в /etc/rc.local, если он у вас есть — см. инструкции для вашего Linux-дистрибутива):
    iptables -t nat -A PREROUTING -i eth0 -p udp —dport 443 -j DNAT —to-destination fake_site_ip:443
    iptables -t nat -A PREROUTING -i eth0 -p tcp —dport 80 -j DNAT —to-destination fake_site_ip:80
    (вместо eth0 должен быть ваш сетевой интерфейс, иногда бывает ens3, например).
  5. Если ваш хостер позволяет менять PTR-записи для IP-адресов (так называемые «обратные DNS»), то поменяйте ее на такую, какая есть у IP-адреса сайта, под который вы маскируетесь, или хотя бы просто на сам этот домен.

О клиентах

Весьма важно настроить на клиентских устройствах правила, чтобы доступ к внутренним (российским, если вы в РФ) ресурсам не шел через прокси-сервер.

Там же есть ответы на многие другие частые вопросы и советы по устаранению проблем.

Удачи, и да прибудет с вами сила.

Если вы хотите сказать спасибо автору — сделайте пожертвование в один из благотворительных фондов: «Подари жизнь», «Дом с маяком», «Антон тут рядом».

Attention: Пользователь в Telegram с таким же ником, как у меня — мошенник, не имеющий никакого отношения к автору статьи.

   Pi-hole  ®  

You can run Pi-hole in a container, or deploy it directly to a supported operating system via our automated installer.

2. Install Pi-hole

Our intelligent, automated installer asks you a few questions and then sets everything up for you. Once complete, move onto step 3.

3. Use Pi-hole as your DNS server

Configure your router’s DHCP options to force clients to use Pi-hole as their DNS server, or manually configure each device​ to use the Pi-hole as their DNS server.

4. Block ads everywhere, even on the go

By pairing your Pi-hole with a VPN, you can have ad blocking on your cellular devices, helping with limited bandwidth data plans.

Network-wide protection

Instead of browser plugins or other software on each computer, install Pi-hole in one place and your entire network is protected.

Block in-app advertisements

Network-level blocking allows you to block ads in non-traditional places such as mobile apps and smart TVs, regardless of hardware or OS.

Improve network performance

Since advertisements are blocked before they are downloaded, network performance is improved and will feel faster.

Monitor statistics

Our Web interface offers control of your Pi-hole and a central place to view statistics. We also include an API for extending these stats.

The Pi-hole Team

The Pi-hole Developers are spread across the globe and work on the project in their spare time. We are a 100% remote-work team.

Dan Schaper

Co-Founder
Core Developer

Adam Warner

Docker Maintainer
Core Developer

Dominik Derigs

FTL Designer
Core Developer

Web Interface

In addition to blocking advertisements, Pi-hole has an informative Web interface that shows stats on all the domains being queried on your network.

Built-in DHCP Server

Pi-hole works fine with an existing DHCP server, but you can use Pi-hole’s to keep your network management in one place.

Manage White And Black Lists

Fine-tune your experience by blacklisting or whitelisting domains. Extend this capability with powerful regex statements.

Query Log

See all the domains being queried on your network, where they originated, and more.

Long Term Statistics

Queries are stored in a database and can be queried at any time. Learn about what’s happening on your network over time.

Audit Log

Keep track of the most queried domains and add them to a white or blacklist from a central page.

Privacy Modes

Choose from four different privacy modes that works for your environment.

Other Settings

Control and configure other settings from the Web interface.

Почему в днс нет айфона 11

Frequently asked questions

How can Namecheap help me make more online for less?

Namecheap exists to help EVERYONE get, make, and achieve more online with less cost, hassle, and headaches. We offer everything you need to get online and thrive, from domains to hosting to security to specialist services and products — all with value built in. Great prices, world-beating customer support, and extra resources come as standard.

Why buy a domain name from Namecheap?

Above all else, we strive to deliver outstanding customer experiences. When you buy a domain name from Namecheap, we guarantee it will be handed over to you with superior standards of service and support. Our primary goal is to build a customer-focused atmosphere filled with the happiest customers in the galaxy. The Namecheap guarantee is our mark of excellence.

Why is domain name registration required?

When you build a website, you want visitors to come and see what you’ve done. To get them there, you need a unique domain name that connects to your site’s servers. Domain name registration is required to ensure that no one else in the world can claim ownership of your site’s address and to make finding your website simple. Find your one of a kind domain name.

How does domain registration work?

Think of the name you want to register. The answer is typically your company or website name. It is best to keep your domain name short and easy to understand. Say it out loud, and make sure it sounds great. Next, search to see if it is available. If the name you desire is taken with the .com top-level domain, there are hundreds of others available. Finally, add the top choices to your cart and complete the domain registration.

What domains are available from Namecheap?

At Namecheap, you can register brand new domain names using hundreds of popular TLDs. In our Marketplace, you will find thousands of domain names that have already been registered but are now for sale. While .com domains are available, of course, you’ll also see options using .net, .us, and many more.

Can you buy domain names and sell them?

If you have a website domain for sale, Market is the place for you. Our dedicated platform offers in-house auctions and Buy It Now listings, visited by thousands of people every day. List your domains at a fixed price and we’ll take care of the rest.

What’s the best way to find a cheap domain?

It’s all about knowing where to look. We’ve gathered together our most popular deals on one page so you can easily find your perfect domain name, hosting, and more at affordable prices. Just take a look.

How do I choose the right domain registrar?

While price is a big factor, there are also other areas to consider when choosing the right domain registrar. These include customer support, security, and effortless account management. All of which come as standard with Namecheap — alongside a great price, of course.

How do I pick the right domain name?

So you’ve discovered that simply Googling ‘register website domain’ and finding a great provider isn’t the whole story. You also need to consider which domain extension to pick, and which name to register. So check out our simple guide to choosing the best domain.

Why do you have different offers for the same products?

Products might be the same, but every customer is different. That’s why we tailor our deals to suit as many people as possible. So you get exactly what you need, for less.

*What are the details of the $5.98 .COM offer?

This promotion applies to new 1st year registrations for new customers. One purchase per household.

How to Fix DNS_PROBE_FINISHED_NXDOMAIN (Desktop & Mobile)

For those of you working with websites on a regular basis, errors specific to the CMS such as the white screen of death or database connection errors are somewhat common occurrences. But another subset of errors you will probably stumble upon are those tied to your internet connection and DNS. A very common error that Google Chrome users get when trying to browse to a web page is “This site can’t be reached – Server IP address could not be found,” together with DNS_PROBE_FINISHED_NXDOMAIN. This can be downright frustrating as suddenly you can’t browse to your website or perhaps even anywhere at all. �� If you’re seeing this error while trying to get to your site, don’t worry, this is fairly easy to fix. Check out the recommendations below on how to get connected again. This can also work for other browsers, such as Firefox, Edge, etc.

What Is DNS_PROBE_FINISHED_NXDOMAIN?

DNS_PROBE_FINISHED_NXDOMAIN Error

DNS_PROBE_FINISHED_NXDOMAIN is an error that occurs when your DNS fails to resolve the domain name or address. It happens when the Domain Name System (DNS) fails to connect domain names with actual web servers. The NXDOMAIN part stands for Non-Existent Domain.

Error Code DNS_PROBE_FINISHED_NXDOMAIN
Error Type DNS error
Error Variations This site can’t be reached
Hmm. We’re having trouble finding that site
Hmmm… can’t reach this page
Safari Can’t Find the Server
Error Causes Internet connection error
Firewall is blocking access
DNS misconfiguration
DNS not yet propagated
Unresponsive server

What Does the DNS_PROBE_FINISHED_NXDOMAIN Error Look Like on Browsers?

There are a couple different variations of this error depending upon the browser you’re running.

Google Chrome

In Google Chrome this error will show as DNS_PROBE_FINISHED_NXDOMAIN (as seen below), highlighting that this site can’t be reached, followed by server IP address could not be found.

This site can’t be reached or This webpage is not available.

DNS_PROBE_FINISHED_NXDOMAIN error message returned in Chrome

Mozilla Firefox

In Mozilla Firefox it will simply show as Hmm. We’re having trouble finding that site (as seen below).

We can’t connect to the server at domain.com.

DNS_PROBE_FINISHED_NXDOMAIN error message returned in Firefox

Microsoft Edge

In Microsoft Edge, it will simply show as Hmmm… can’t reach this page (as seen below). Which isn’t very helpful.

Make sure you’ve got the right web address: domain.com.

DNS_PROBE_FINISHED_NXDOMAIN error message returned in Edge

Safari

In Safari, it will simply show as Safari Can’t Find the Server (as seen below).

Safari can’t open the page “domain.com” because Safari can’t find the server “domain.com”.

DNS_PROBE_FINISHED_NXDOMAIN error message returned in Safari

Main Causes of the DNS_PROBE_FINISHED_NXDOMAIN Error

  • You typed the site name incorrectly into the search bar.
  • There is an internet connection error preventing your access.
  • Your firewall is blocking access to the website.
  • An antivirus or a VPN is interfering with your network settings.
  • The domain has expired or is not registered.
  • Your DNS settings are not configured the right way.

How to Fix DNS_PROBE_FINISHED_NXDOMAIN on Desktop

Here are some recommendations and things to check to fix the error (sorted in order by most common reasons we see):

1. Release and Renew IP Address

Due to the fact that this is usually a client-side DNS issue, the very first thing you should do is try releasing and renewing the IP address on your computer. This also includes flushing your local DNS cache, which is similar to browser cache.

Windows

In Windows simply open up Command Prompt by pressing the Windows logo key and R. Then type “cmd” and hit Enter.

Command Prompt box

Type in ipconfig /release and hit Enter. This will release your current IP address.

command prompt containing ipconfig /release

Then type in ipconfig /flushdns and hit Enter. This will flush your local DNS cache. You should see a “Successfully flushed the DNS resolver Cache” if it worked.

command prompt containing ipconfig /flushdns

Then type in ipconfig /renew and hit Enter. This will renew your IP address.

command prompt containing ipconfig /renew

You might also try resetting your IP settings and Winsock catalog with the following commands: netsh int ip set dns and netsh winsock reset .

An alternative way to flush and renew your DNS is simply by disabling your network adapter and re-enabling it.

Mac

To release and renew your IP address on a Mac, go to System Preferences…

Mac system preferences menu

Click on the network icon and then click “Advanced.”

Mac network advanced menu

Click the TCP/IP tab heading if you aren’t already in there. Then click on the “Renew DHCP” lease button.

Just like we did above in Windows, Mac users can also clear their local DNS cache. Although this is done in a different place. Go to Utilities and then click on “Terminal.”

Mac terminal with utilities section selected

Enter in the following command:

dscacheutil -flushcache

Mac terminal showing how to Flush DNS cache

Note: There is no success message on Macs.

2. Restart DNS Client Service

If you’re running Windows you can try restarting the DNS client services which resolves and caches DNS domain names.

Simply open up Command Prompt by pressing the Windows logo key and R. Then type “services.msc” and hit Enter.

Command prompt containing services.msc

Scroll down to “DNS Client,” right click on it, and select “Restart.”

Services options highlighted to show how to Restart DNS client service in Windows

If the restart option is greyed out for you (as it was for us), an alternative way to do it is via the command prompt.

Open up Command Prompt by pressing the Windows logo key and R. Then type “cmd” and hit Enter.

Command prompt containing

Then enter the following commands:

net stop dnscache net start dnscache

Depending on the version of Windows you’re running you might get an error saying:

The requested pause, continue, or stop is not valid for this service.

This is most likely because you need to run CMD as a network service to issue the command. If you’re running into this error, we suggest trying the other alternatives below first.

3. Change DNS Servers

The next thing you can try is changing your DNS servers. By default, DNS servers are automatically assigned by your ISP. But you could try temporarily changing these to a public DNS server, such as Google or Cloudflare.

  • Some prefer to use Google’s public DNS (8.8.8.8 and 8.8.4.4) long-term due to them sometimes being more reliable.
  • Cloudflare also just launched their new secure and blazing fast free DNS (1.1.1.1 and 1.0.0.1) which we will be using in this example. If you want to use Google’s the steps are the same, you simply replace the DNS server addresses with Googles.

Tip: If you’re already using a free DNS server and having issues, removing it and defaulting back to your ISP’s DNS servers also sometimes fix things. Google and Cloudflare aren’t perfect 100% of the time and there have been a few instances where we’ve noticed switching back has resolved the issue.

Windows

In Windows simply open up Command Prompt by pressing the Windows logo key and R. Then type “control panel” and hit Enter.

Command prompt showing how to Run Control Panel in Windows

Click on “Network and Internet” and then “Network and Sharing Center.” On the left-hand side, click on “Change Adapter Settings.”

Network and Sharing Center in Change adapter settings section

Right click on your current connection, this will either be Local Area Connection or Wireless Network Connection based on how you’re connecting. Then click on “Properties.”

Wireless connection menu with properties selected

Select Internet Protocol Version 4 (or IPv6 if desired) and click on “Properties.”

Wireless network connection properties with

Make a note of any existing settings in case you need to revert back. Click “Use the following DNS server addresses.” Enter the following, or replace the existing with these:

For IPv4: 1.1.1.1 and 1.0.0.1
For IPv6: 2606:4700:4700::1111 and 2606:4700:4700::1001

DNS server addresses with Preferred DNS Server set to 1.1.1.1 and alternative DNS server set to 1.0.0.1

Click OK, then Close. Restart your browser.

Mac

To change DNS servers on a Mac, go to System Preferences…

Mac system preferences

Click on the network icon and then click “Advanced.”

Mac network advanced button

Click on the “DNS” tab.

Mac Network DNS menu box

Then add Cloudflare’s DNS server addresses.

For IPv4: 1.1.1.1 and 1.0.0.1
For IPv6: 2606:4700:4700::1111 and 2606:4700:4700::1001

4. Reset Chrome Flags

Sometimes Chrome settings or experimental features can get accidentally changed or messed up. You reset these back to default by entering chrome://flags into your browser and clicking on “Reset all to default.”

Reset all to default button in Chrome flags

Then restart your browser.

5. Disable VPN and Antivirus Temporarily

Sometimes VPNs and Antivirus software can conflict or override your network settings, including your DNS servers, etc. If you have any running, try temporarily disabling them (closing them) to see if it resolves the DNS probe finished nxdomain error in Chrome.

6. Check Your Local Hosts File

Every computer has what they call a local hosts file. This is a file that contains manual DNS entries which are mapped to specific IP addresses. Typically this is only edited when you want to preview your DNS before switching over domains to a new host.

However, there is a multitude of different ways this file could have been changed or edited. Therefore, if none of the above options worked for you, it’s worth double checking your local hosts file to ensure the website you’re trying to access isn’t in there.

Windows

The hosts file typically requires additional access. So the first step is to open up your text editor as an administrator. Simply click on your start menu, search for your text editor, right-click on it and select “Run as administrator.” This can be done in any text editor such as Notepad, Notepad++, Atom, etc. We are using Sublime in our example below.

Run text editor as administrator

Within your text editor click File → Open and browse to the following location:

C:\Windows\System32\drivers\etc\

Click on the hosts file and “Open.”

open hosts file with hosts selected

Double check and make sure the website you’re trying to visit isn’t listed in there. If it is, remove it.

Mac

To check your hosts file on a Mac, we recommend getting Gas Mask. It’s a free application which can be used as hosts file manager, hosts files editor, and switch between them. It makes everything quick and easy! Otherwise, you can follow the steps below to edit your hosts file on Mac manually.

Go to Utilities and then click on “Terminal.”

Mac terminal with Utilities menu highlighted

Enter in the following command and press Enter (you will most likely be prompted for your administrator password as well).

sudo nano /private/etc/hosts

Mac terminal with Hosts file

Double check and make sure the website you’re trying to visit isn’t listed in your hosts file. If it is, remove it.

7. Check DNS of Your Domain

If you’re only getting the DNS_PROBE_FINISHED_NXDOMAIN error on a single domain, even after checking your hosts file, you might need to check the DNS settings on the domain name itself.

If you’re a Kinsta client we have an in-depth post on how to point your domain and or DNS to Kinsta. If you recently migrated your website to a new hosting provider, it could be the DNS was cached incorrectly on your computer. In which case, Step 2 above should have resolved that.

8. Restart Your Computer

We know it’s annoying, but it has to be mentioned. �� If none of the above options work, trying restarting your computer and even your router. We realize many of you probably have hundreds of tabs or applications open and that’s why we made this the last option. But rebooting devices actually clears out a lot of temporary cache.

How to Fix DNS_PROBE_FINISHED_NXDOMAIN on Mobile (Android & iOS)

These are the most common ways to fix this error on your mobile device:

1. Restart Your Device

You know that famous tech support question “Have you tried turning it off and back on again?”

Well, the phrase is popular for a reason: A reboot does often fix the problem! Before attempting any of the other solutions on this list, start first with a simple device restart.

Android

To restart your Android device, press and hold your device’s power button to bring up the Options menu, then tap on the Restart option:

A screenshot of Android

Wait for your device to restart, then open the Chrome app and check for the error.

iPhone/iOS

To restart your iPhone or other iOS device, begin by pressing and holding the power button and either of the two volume buttons:

A screenshot with arrows pointing to the power button and one volume button on an iOS device.

Keep these held down until the power-off slider appears on the screen:

A screenshot of the iOS power-off slider on an iPhone, showing a power icon and the words

Drag the slider from one side to the other, then wait for the device to turn off.

Once it’s completely off, press and hold the device’s power button to turn it back on. Then check to see whether you’re still encountering the error.

2. Check for Chrome App Updates

The next step is to make sure that you’re using the very latest version of the Google Chrome app on your Android device

You can check for any Chrome updates and install them by following these steps:

  1. Open the App Store app (this is called Google Play Store on Android devices).
  2. Tap your profile icon at the top right (in the search bar).
  3. Tap the Manage apps and device menu option.
  4. Tap the Updates available button.
  5. Look for Google Chrome in the list. If you see it, tap the Update button next to it.

After the update has finished installing, relaunch the Chrome app and check to see if you’re still getting the error. If you are, move on to the next solution below.

3. Clear Chrome’s Browser and App Data

Caches are useful because they speed up your browsing experience. In fact, our tests show that Edge Caching reduces the time it takes to deliver full pages to browsers by more than 50%.

However, this cached data can also frequently be the source of errors like DNS_PROBE_FINISHED_NXDOMAIN.

Luckily, you don’t actually need this cached data, and clearing it out may fix the error.

You can clear your mobile device’s Chrome cache and app data with just a few taps:

  1. Open the Chrome app.
  2. Tap the hamburger menu icon ( or ) at the top or bottom.
  3. Tap History > Clear browsing data.
  4. Check Browsing history and Cached images and files. Leave the other options unchecked.
  5. If prompted with a “Also clear data from these sites?” message, confirm by tapping Clear.
  6. Wait for Chrome to finish clearing the data, then tap the OK, got it confirmation message.

Now, try visiting the page again to see if the error has vanished. If it hasn’t, don’t lose heart! Just move on to the next option below.

4. Check for System Updates

As with Chrome, you’ll want to be sure you’re running the latest version of the Android operating system (OS) that’s available for your device.

Android

Here’s how to see if your Android device has any pending system updates:

  1. Navigate to Settings > System.
  2. Tap System Update.
  3. This screen may tell you that your system is up to date. Regardless, tap the Check for update button at the bottom.
  4. Wait for the system to look for any available OS updates.
  5. If an update is found, agree to install it, then follow any further prompts to complete the installation.
  6. Restart your device if the update process doesn’t do so automatically.
iPhone/iOS

You can check for pending updates on your iPhone or other iOS device with these steps:

  1. Navigate to Settings > General > Software Update.
  2. Review the screen to see if there’s an update available. If there is, tap the Download and install button.
  3. Tap Install Now when prompted.
  4. Restart the device.

Once your device’s system has been updated and rebooted, check again for the error in the Chrome app. If it’s still there, try the next solution on this list.

5. Change Your Mobile Device’s Network Settings

We talked earlier about modifying desktop devices’ DNS settings to fix the DNS_PROBE_FINISHED_NXDOMAIN error. This same approach can also work with mobile devices.

Android

To change the DNS settings on your Android, follow these steps:

The Android Wi-Fi

  1. Navigate to Settings > Network & Internet > Internet.
  2. Make sure Wi-Fi is toggled “On.”
  3. Press and hold your Wi-Fi network connection, then tap Modify.
  4. Under Advanced options, locate the DNS 1 and DNS 2 fields and enter this information:
    • DNS 1: 8.8.8.8
    • DNS 2: 8.8.4.4
  5. Tap Save.

After saving your new settings, re-open the Chrome app and check to see if the error’s gone.

iPhone/iOS

You can change the DNS settings on your iPhone or other iOS device with these steps:

The iOS Wi-Fi DNS server settings menu with a highlighting box around the

  1. Navigate to Settings > Wi-Fi.
  2. Tap on your network in the menu.
  3. Tap Configure DNS > Manual.
  4. Remove the current listings under DNS Servers and add the following listings instead:
    • 8.8.8.8
    • 8.8.4.4
    • 2001:4860:4860::8888
    • 2001:4860:4860::8844

Now, restart the Chrome app and check again for the error message.

Summary

Even though it’s frustrating, the DNS_PROBE_FINISHED_NXDOMAIN error is usually pretty easy to get resolved. Between flushing your DNS cache, renewing your IP, and trying different DNS servers, you should hopefully be back up and surfing the web in no time.

FAQ

What Is DNS_PROBE_FINISHED_NXDOMAIN?

The DNS_PROBE_FINISHED_NXDOMAIN error indicates that the Domain Name System (DNS) failed to resolve the domain name or address. NXDOMAIN stands for Non-Existent Domain.

What Causes DNS_PROBE_FINISHED_NXDOMAIN?

The DNS_PROBE_FINISHED_NXDOMAIN is typically caused by a misconfiguration or problem with your DNS.

How Do You Fix DNS_PROBE_FINISHED_NXDOMAIN?

Here are some recommendations and things to check to fix the error (sorted in order by most common reasons we see):

  1. Release and Renew IP Address
  2. Restart DNS Client Service
  3. Change DNS Servers
  4. Reset Chrome Flags
  5. Disable VPN and Antivirus Temporarily
  6. Check Your Local Hosts File
  7. Check DNS of Your Domain
  8. Restart Your Computer

How Do You Fix DNS_PROBE_FINISHED_NXDOMAIN on Mobile?

These are the most common ways to fix this error on your mobile device:

  1. Restart Your Device
  2. Check for Chrome App Updates
  3. Clear Chrome’s Browser and App Data
  4. Check for System Updates
  5. Change Your Mobile Device’s Network Settings

Get all your applications, databases, and WordPress sites online and under one roof. Our feature-packed, high-performance cloud platform includes:

  • Easy setup and management in the MyKinsta dashboard
  • 24/7 expert support
  • The best Google Cloud Platform hardware and network, powered by Kubernetes for maximum scalability
  • An enterprise-level Cloudflare integration for speed and security
  • Global audience reach with up to 35 data centers and 260 PoPs worldwide

Get started with a free trial of our Application Hosting or Database Hosting. Explore our plans or talk to sales to find your best fit.

Is your WordPress site slow?

Uncover your website’s performance bottlenecks to deliver a better user experience.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *