15%

Спести 15% на всички хостинг услуги

Тествай уменията си и получи Отстъпка за всеки хостинг план

Използвайте код:

Skills
За начало
30.10.2024
3 +1

Какво е NSLOOKUP и как да го използвате: Пълното ръководство за отстраняване на DNS проблеми

Проблемите с DNS са сред най-разочароващите проблеми в уеб инфраструктурата — и те често са невидими, докато нещо не се счупи. Независимо дали уебсайт внезапно спре да се зарежда, имейли се връщат обратно или новоконфигуриран сървър откаже да разрешава адреси, виновникът почти винаги е неправилно конфигуриран или неправилно функциониращ DNS запис. Точно тук се намесва NSLOOKUP.

NSLOOKUP (Name Server Lookup) е изпитан, кросплатформен инструмент за командния ред, който ви позволява да правите заявки директно към DNS сървъри, да инспектирате DNS записи в реално време и да диагностицирате проблеми с разрешаването, преди да се влошат. В това изчерпателно ръководство ще научите точно какво е NSLOOKUP, как работи вътрешно и как да го използвате ефективно — от основни справки до напреднали техники за отстраняване на неизправности.

Какво е NSLOOKUP?

NSLOOKUP означава Name Server Lookup. Това е диагностичен инструмент за командния ред, вграден в Windows, macOS и Linux, който позволява на потребителите да правят заявки към системата за имена на домейни (DNS) и да извличат подробна информация за имена на домейни, IP адреси и DNS записи.

В основата си NSLOOKUP ви позволява да:

  • Разрешавате имена на домейни до IP адреси — намирате IP адреса, свързан с всеки домейн.
  • Извършвате обратни DNS справки — идентифицирате името на домейна, свързано с конкретен IP адрес.
  • Правите заявки за конкретни типове DNS записи — включително A, AAAA, MX, NS, CNAME, SOA и TXT записи.
  • Тествате отговорите на DNS сървъри — правите заявки към всеки DNS сървър, не само към стандартния.
  • Проверявате DNS конфигурации — потвърждавате, че записите са правилно зададени след промени.
  • Отстранявате проблеми с DNS разпространението — проверявате дали актуализираните записи са се разпространили в интернет.

NSLOOKUP е незаменим за системни администратори, DevOps инженери, уеб разработчици и всеки, управляващ хостинг инфраструктура. Ако управлявате среда с VPS Хостинг или Dedicated сървър, разбирането на NSLOOKUP е основно умение за поддържане на услугите ви онлайн и правилно конфигурирани.

Как работи NSLOOKUP?

Когато въведете име на домейн в браузър, системата за имена на домейни (DNS) действа като телефонен указател на интернет — превеждайки това четимо от хора име (напр. example.com) в четим от машина IP адрес (напр. 93.184.216.34), за да знае устройството ви къде да се свърже.

NSLOOKUP заобикаля кешираните DNS отговори на вашия браузър и операционна система, правейки заявки към DNS сървъри директно и в реално време. Това го прави точен диагностичен инструмент, отразяващ действителното текущо състояние на DNS записите.

Ето типичния поток на разрешаване, който NSLOOKUP следва:

  1. Издавате команда NSLOOKUP с име на домейн или IP адрес.
  2. NSLOOKUP се свързва с конфигурирания DNS резолвер (или такъв, който посочите).
  3. DNS резолверът прави заявки към съответните авторитетни сървъри за имена.
  4. Резултатът — IP адреси, записи на пощенски сървъри, данни за сървъри за имена и т.н. — се връща и показва в терминала ви.

NSLOOKUP също така прави разлика между авторитетни отговори (идващи директно от собствените сървъри за имена на домейна) и неавторитетни отговори (идващи от кеширащ резолвер, съхранил резултата). Това разграничение е критично при отстраняване на проблеми с разпространението.

Как да използвате NSLOOKUP: Стъпка по стъпка

1. Основна справка за имена на домейни

Най-честият случай на употреба: разрешаване на име на домейн до неговия IP адрес.

В Windows:

  1. Отворете Command Prompt — натиснете Windows + R, въведете cmd и натиснете Enter.
  2. Изпълнете следната команда:
nslookup example.com

В macOS / Linux:

  1. Отворете Terminal — натиснете Command + Space, въведете Terminal и натиснете Enter.
  2. Изпълнете същата команда:
nslookup example.com

Примерен изход:

Server:  dns.google
Address: 8.8.8.8

Non-authoritative answer:
Name:    example.com
Address: 93.184.216.34

Четене на изхода:

  • Server / Address — DNS сървърът, отговорил на вашата заявка (в този случай публичният DNS на Google на 8.8.8.8).
  • Non-authoritative answer — резултатът е дошъл от кеширащ резолвер, а не от собствения сървър за имена на домейна.
  • Name / Address — разрешеният домейн и съответният му IP адрес.

2. Обратна DNS справка

Обратната DNS справка прави обратното — взима IP адрес и връща свързаното с него име на домейн. Това е полезно за идентифициране на сървъри, проверка на PTR записи и откриване на фалшив или подозрителен трафик.

nslookup 93.184.216.34

Примерен изход:

34.216.184.93.in-addr.arpa  name = example.com.

NSLOOKUP автоматично прави заявка към обратната DNS зона in-addr.arpa и връща PTR записа, свързан с този IP адрес.

> Професионален съвет: Ако управлявате пощенски сървър на VPS или dedicated сървър, осигуряването на правилно конфигуриран обратен DNS (PTR запис) е критично за доставяемостта на имейли. Много спам филтри отхвърлят имейли от IP адреси без валиден PTR запис.

3. Заявки за конкретни типове DNS записи

NSLOOKUP може да извлича всякакъв тип DNS запис. Ето най-важните от тях:

#### A записи (IPv4 адрес)

nslookup -query=A example.com

Връща IPv4 адреса(ите), свързани с домейна. Това е стандартният тип заявка.

#### AAAA записи (IPv6 адрес)

nslookup -query=AAAA example.com

Връща IPv6 адреса за домейна, полезно при проверка на конфигурации с двоен стек.

#### MX записи (Mail Exchange)

MX записите указват кои пощенски сървъри са отговорни за получаването на имейли за даден домейн. Това е от съществено значение при конфигуриране или отстраняване на неизправности в Имейл хостинг.

nslookup -query=MX example.com

Примерен изход:

example.com     mail exchanger = 10 mail.example.com.

Числото (10) е стойността на приоритет — по-ниските числа означават по-висок приоритет. Ако съществуват множество MX записи, пощата се доставя първо до сървъра с най-висок приоритет.

#### NS записи (сървъри за имена)

NS записите идентифицират авторитетните сървъри за имена за даден домейн. Правенето на заявки към тях е първата стъпка при диагностициране на проблеми с делегирането или разпространението.

nslookup -query=NS example.com

Примерен изход:

example.com     nameserver = ns1.example.com.
example.com     nameserver = ns2.example.com.

#### TXT записи

TXT записите съхраняват текстови данни, свързани с домейн. Те обикновено се използват за:

  • SPF записи — оторизиране на пощенски сървъри да изпращат имейли от името на вашия домейн.
  • DKIM записи — криптографско удостоверяване на имейли.
  • Проверка на домейн — доказване на собственост пред Google, Microsoft и други услуги.
nslookup -query=TXT example.com

#### CNAME записи (Canonical Name)

CNAME записите създават псевдоними, насочващи един домейн към друг. Полезно за поддомейни като www, насочващи към основния домейн.

nslookup -query=CNAME www.example.com

#### SOA записи (Start of Authority)

SOA записите съдържат административна информация за DNS зона, включително основния сървър за имена, имейла на отговорното лице и интервалите за обновяване.

nslookup -query=SOA example.com

4. Заявка към конкретен DNS сървър

По подразбиране NSLOOKUP използва DNS сървъра, конфигуриран на вашето устройство или мрежа. Можете да го замените, за да правите заявки към всеки DNS сървър — безценно за тестване на DNS разпространението при различни резолвери.

Синтаксис:

nslookup example.com [DNS_SERVER_IP]

Общи публични DNS сървъри за тестване:

DNS доставчикОсновен IPВторичен IP
Google Public DNS8.8.8.88.8.4.4
Cloudflare DNS1.1.1.11.0.0.1
OpenDNS208.67.222.222208.67.220.220

Примери:

nslookup example.com 8.8.8.8
nslookup example.com 1.1.1.1
nslookup example.com 208.67.222.222

Чрез сравняване на резултатите от множество DNS сървъри можете да определите дали DNS промяна се е разпространила напълно или все още е кеширана в определени региони.

5. Използване на NSLOOKUP в интерактивен режим

Интерактивният режим на NSLOOKUP ви позволява да изпълнявате множество заявки в една сесия, без да въвеждате командата всеки път отново. Това е особено ефективно при извършване на серия от диагностични проверки.

За влизане в интерактивен режим:

nslookup

Ще видите подкана >. Оттук можете да въвеждате команди директно:

> example.com
> set querytype=MX
> google.com
> set querytype=NS
> cloudflare.com
> server 1.1.1.1
> example.com

Полезни команди в интерактивен режим:

КомандаОписание
set querytype=AЗаявка за записи на IPv4 адреси
set querytype=AAAAЗаявка за записи на IPv6 адреси
set querytype=MXЗаявка за записи на пощенски обменни сървъри
set querytype=NSЗаявка за записи на сървъри за имена
set querytype=TXTЗаявка за текстови записи
set querytype=CNAMEЗаявка за записи на канонични имена
set querytype=SOAЗаявка за записи за начало на авторитет
set querytype=ANYЗаявка за всички налични типове записи
server [IP]Превключване към различен DNS сървър
set timeout=[seconds]Задаване на времето за изчакване на заявката
set retry=[number]Задаване на броя повторни опити при неуспех
set debugАктивиране на подробен изход за отстраняване на грешки
exitИзлизане от интерактивен режим

За излизане от интерактивен режим въведете exit или натиснете Ctrl + C.

Справочник за команди на NSLOOKUP

Ето таблица за бърза справка с най-полезните команди и флагове на NSLOOKUP:

КомандаПредназначение
nslookup example.comОсновна директна DNS справка
nslookup 93.184.216.34Обратна DNS справка
nslookup -query=MX example.comЗаявка за MX записи
nslookup -query=NS example.comЗаявка за NS записи
nslookup -query=TXT example.comЗаявка за TXT записи
nslookup -query=AAAA example.comЗаявка за IPv6 записи
nslookup -query=SOA example.comЗаявка за SOA записи
nslookup -query=ANY example.comЗаявка за всички типове записи
nslookup example.com 8.8.8.8Заявка чрез Google DNS
nslookup -debug example.comАктивиране на режим за отстраняване на грешки/подробен режим
nslookup -timeout=10 example.comЗадаване на 10-секундно изчакване на заявката

Реални случаи на употреба на NSLOOKUP

1. Отстраняване на неизправности при зареждане на уебсайт

Когато уебсайт не успее да се зареди, проблемът може да е неправилна DNS конфигурация, забавяне на разпространението или проблем от страна на сървъра. NSLOOKUP ви помага да изолирате причината:

  • Изпълнете nslookup yourdomain.com — връща ли очаквания IP?
  • Правете заявки към множество DNS сървъри, за да проверите за несъответствия.
  • Сравнете върнатия IP с действителния IP адрес на вашия сървър.

Ако NSLOOKUP върне правилния IP, но сайтът все още не се зарежда, проблемът вероятно е на ниво сървър, а не DNS.

2. Проверка на DNS записи след промени в конфигурацията

След настройване на нов домейн, мигриране на уебсайт или преконфигуриране на DNS записи, NSLOOKUP ви позволява да потвърдите, че всичко е наред. Това е особено важно при:

  • Стартиране на нов уебсайт на Споделен уеб хостинг или VPS.
  • Насочване на домейн към нов IP адрес на сървър.
  • Конфигуриране на MX записи за доставка на имейли.
  • Добавяне на TXT записи за SPF, DKIM или проверка на домейн.

3. Проверка на DNS разпространението

DNS промените не влизат в сила глобално в момента, в който ги запазите — разпространението може да отнеме от няколко минути до 48 часа, в зависимост от стойностите на TTL (Time to Live) на вашите записи. NSLOOKUP ви позволява да проверите статуса на разпространението, като правите заявки към различни DNS сървъри по света:

nslookup example.com 8.8.8.8       # Google DNS (US)
nslookup example.com 1.1.1.1       # Cloudflare DNS (Global)
nslookup example.com 208.67.222.222 # OpenDNS

Ако различни сървъри връщат различни IP адреси, разпространението все още е в ход.

4. Валидиране на конфигурацията на домейна за SSL сертификат

Преди инсталиране на SSL сертификат, трябва да потвърдите, че A записът на вашия домейн правилно сочи към IP адреса на вашия сървър. Ако DNS не разрешава правилно, издаването на сертификата ще се провали. NSLOOKUP ви дава незабавна проверка.

5. Диагностициране на проблеми с доставката на имейли

Ако имейлите се връщат или не се получават, NSLOOKUP може да ви помогне да проверите:

  • MX записи — сочат ли към правилния пощенски сървър?
  • TXT записи — присъстват ли и правилни ли са SPF и DKIM записите?
  • PTR записи — има ли IP адресът на вашия пощенски сървър валиден запис за обратен DNS?

6. Идентифициране на неоторизирани DNS промени

Ако даден домейн разрешава до неочакван IP адрес, това може да означава DNS отвличане или неоторизирана промяна в конфигурацията. NSLOOKUP ви позволява бързо да сравните текущите DNS отговори с очакваните ви настройки.

NSLOOKUP срещу DIG: Кой да използвате?

Докато NSLOOKUP е универсално достъпен и подходящ за начинаещи, DIG (Domain Information Groper) е предпочитаният инструмент сред опитните Linux/Unix администратори заради по-подробния и скриптируем изход.

ФункцияNSLOOKUPDIG
НаличностWindows, macOS, LinuxmacOS, Linux (инсталирайте на Windows)
Подробност на изходаУмеренаМного подробна
СкриптируемостОграниченаОтлична
Лесота на използванеПодходящ за начинаещиСреден напреднал
Интерактивен режимДаНе
По подразбиране на WindowsДаНе

За бързи проверки и кросплатформена употреба NSLOOKUP е идеален. За задълбочена диагностична работа на Linux сървъри DIG често е предпочитан. На VPS с cPanel обикновено са налични и двата инструмента.

Чести грешки на NSLOOKUP и какво означават

Съобщение за грешкаВероятна причинаРешение
** server can't find example.com: NXDOMAINДомейнът не съществува или не е регистриранПроверете името на домейна; проверете статуса на регистрацията на домейна
** server can't find example.com: SERVFAILDNS сървърът е срещнал грешкаОпитайте различен DNS сървър; проверете конфигурацията на сървъра за имена
** server can't find example.com: REFUSEDDNS сървърът е отказал заявкатаСървърът може да не позволява рекурсивни заявки от вашия IP
Request to [server] timed outDNS сървърът е недостъпен или бавенПроверете мрежовата свързаност; опитайте алтернативен DNS сървър
Non-authoritative answerОтговорът е дошъл от кеширащ резолверНормално поведение; правете заявки директно към авторитетния NS за окончателни резултати
No response from serverЗащитна стена блокира DNS (порт 53)Проверете правилата на защитната стена на вашия сървър или мрежа

Най-добри практики при използване на NSLOOKUP

  1. Винаги правете заявки към множество DNS сървъри — никога не разчитайте на отговора на един резолвер при диагностициране на проблеми с разпространението.
  2. Проверявайте стойностите на TTL — високите стойности на TTL означават, че кешираните записи продължават по-дълго; планирайте DNS промените съответно.
  3. Използвайте режим за отстраняване на грешки за подробен изходnslookup -debug example.com разкрива пълния обмен на заявка/отговор.
  4. Проверявайте и директния, и обратния DNS — особено критично за пощенски сървъри и SSL сертификати.
  5. Документирайте вашите DNS записи — поддържайте запис на очакваната ви DNS конфигурация, за да можете бързо да забележите несъответствия.
  6. Тествайте преди и след промени — изпълнявайте NSLOOKUP преди извършване на DNS промени, за да установите базова линия, след което проверявайте след това.

Заключение

NSLOOKUP е един от най-важните инструменти в набора от инструменти на всеки системен администратор или разработчик. Независимо дали диагностицирате уебсайт, който не се зарежда, проверявате конфигурацията на пощенски сървър, потвърждавате предпоставките за SSL сертификат или наблюдавате DNS разпространението след миграция, NSLOOKUP ви дава директна видимост в реално време към DNS слоя на вашата инфраструктура.

Овладяването на NSLOOKUP — от основни директни справки до заявки за разширени типове записи и сесии в интерактивен режим — ви поставя в контрол на вашата DNS среда и значително намалява времето, необходимо за диагностициране и разрешаване на проблеми.

Ако управлявате уеб инфраструктура и се нуждаете от надеждна хостинг основа, която да допълни вашите DNS познания, AlexHost предлага пълна гама от решения — от Споделен уеб хостинг за прости уебсайтове до високопроизводителни Dedicated сървъри за взискателни натоварвания — всички подкрепени от експертна поддръжка и стабилна мрежова инфраструктура.

15%

Спести 15% на всички хостинг услуги

Тествай уменията си и получи Отстъпка за всеки хостинг план

Използвайте код:

Skills
За начало