Inledning
I den här handledningen tar vi en titt på de olika sätten att använda kommandot nslookup för Linux.
nslookup-kommandot
nslookup är ett kommandoradsverktyg som används för att fråga ut domännamnsservrar (DNS) och finns tillgängligt för operativsystem som Linux och Windows:
2.1. Interaktiv vs icke-interaktiv
Vi har två lägen för att använda nslookup: interaktiv och icke-interaktiv.
Först kan vi aktivera det interaktiva läget genom att skriva kommandot utan parametrar:
~]$ nslookup>
Därefter får vi en kommandoprompt där vi kan skriva enskilda kommandon utan att skriva nslookup varje gång.
Å andra sidan använder det icke-interaktiva läget samma kommandon som parametrar:
~]$ nslookup -type=a redhat.com
Nu ska vi köra några frågor med nslookup.
2.2. Slå upp en domän
Ta en titt på resultaten för en domännamnssökning:
~]$ nslookup redhat.comServer: 192.168.1.1Address: 192.168.1.1#53Non-authoritative answer:Name: redhat.comAddress: 209.132.183.105
DNS-posten – eller A-posten – börjar efter texten ”Non-authoritative answer” (Icke-auktoritativt svar). Dessa poster visar de IP-adresser som är kopplade till domänen.
Håll dig i minnet att DNS-poster mappar domännamn till IP-adresser för datorsystem.
2.3. Omvänd DNS-uppslag
På samma sätt kan vi slå upp ett domännamn från en IP-adress:
~]$ nslookup> type=ptr> 209.132.183.105105.183.132.209.in-addr.arpa name = redirect.redhat.com.
Bemärk hur det returnerade domännamnet skiljer sig något från den ursprungliga domänen. En annan post som kallas PTR returneras faktiskt.
Vissa domäner har inte PTR-poster registrerade för IP-adresser:
~]$ nslookup> 104.18.62.78Server: 192.168.1.1Address: 192.168.1.1#53** server can't find 78.62.18.104.in-addr.arpa: NXDOMAIN
Typparameter
Nästan, typparametrar lägger till mer information till våra uppslag. Till exempel ger ptr den omvända DNS som nämns ovan.
Nu ska vi prova några andra typer.
3.1. Alla poster
Vi kan få fram alla DNS-poster genom att ange -type=a:
~]$ nslookup -type=a baeldung.comServer: 192.168.1.1Address: 192.168.1.1#53Non-authoritative answer:Name: baeldung.comAddress: 104.18.63.78Name: baeldung.comAddress: 104.18.62.78
3.2. Auktoritativ (SOA)
Nästan tittar vi på den auktoritativa (SOA) informationen om domänen. A-posten innehåller till exempel e-postinformation och annan information som visas här:
~]$ nslookup -type=soa baeldung.comServer: 192.168.1.1Address: 192.168.1.1#53Non-authoritative answer:baeldung.com origin = lakas.ns.cloudflare.com mail addr = dns.cloudflare.com serial = 2033559691 refresh = 10000 retry = 2400 expire = 604800 minimum = 3600
Med många domännamnsservrar utspridda över Internet får vi resultat som inte är förstahandsuppgifter. Dessa kallas icke-auktoritativa svar. De ger dock fortfarande korrekta uppgifter.
3.3. Eventuella poster
Till sist returnerar parametern type=any allt ovanstående, inklusive alla andra typer av poster på servern. Detta är användbart när vi inte vet vilken post vi vill ha.
Varning, type=any är sannolikt inte implementerad på de flesta offentliga namnservrar, men den är fortfarande användbar i interna nätverk.
Namnserverinformation
Ibland vill vi se information om namnservern för att bekräfta var en domänpost finns.
Till exempel kan vi testa för vår domän med type=ns:
~]$ nslookup -type=ns baeldung.comServer: 192.168.1.1Address: 192.168.1.1#53Non-authoritative answer:baeldung.com nameserver = lakas.ns.cloudflare.com.baeldung.com nameserver = meera.ns.cloudflare.com.
Som ett resultat kan vi identifiera vilken DNS som vi ska konfigurera för server-till-server-kommunikation via domänen. Kom ihåg att förfrågan om en ny DNS kräver ändringar i den lokala nätverkskonfigurationen.
Sätt på debug
Det interaktiva läget i nslookup ger dessutom användaren möjlighet att felsöka förfrågningar:
~]$ nslookup -debug baeldung.comServer: 192.168.1.1Address: 192.168.1.1#53------------ QUESTIONS: baeldung.com, type = A, class = IN ANSWERS: -> baeldung.com internet address = 104.18.63.78 ttl = 300 -> baeldung.com internet address = 104.18.62.78 ttl = 300 AUTHORITY RECORDS: ADDITIONAL RECORDS:------------Non-authoritative answer:Name: baeldung.comAddress: 104.18.63.78Name: baeldung.comAddress: 104.18.62.78------------ QUESTIONS: baeldung.com, type = AAAA, class = IN ANSWERS: -> baeldung.com has AAAA address 2606:4700:3030::6812:3e4e ttl = 300 -> baeldung.com has AAAA address 2606:4700:3036::6812:3f4e ttl = 300 AUTHORITY RECORDS: ADDITIONAL RECORDS:------------Name: baeldung.comAddress: 2606:4700:3030::6812:3e4eName: baeldung.comAddress: 2606:4700:3036::6812:3f4e
Slutsats
För att sammanfatta är nslookup-kommandot grundläggande och ganska användbart. Vi tittade på de två lägena och en mängd olika typer av förfrågningar samt möjligheten att felsöka om felsökning någonsin behövs.