it-swarm-tr.com

Ters DNS komut satırı yardımcı programı nedir?

IP adresi verilen bir bilgisayarın adını bulma komutu nedir?

Her zaman bu komutun ne olduğunu unutuyorum, ancak Windows'ta olduğunu biliyorum ve * nix komut satırında var olduğunu varsayıyorum.

75
Peter Turner

Dig ve Sunucu aradığınız şey olmalıdır;)

http://www.unix.com/unix-dummies-questions-answers/9866-nslookup-linux.html

* nix sisteminde bu komutu yapabilirsiniz: Dig -x [address]

Alternatif olarak, yalnızca dns sonucunu çıkarmak için Dig komutunun sonuna +short Ekleyebilirsiniz.

Windows'ta , nslookup kullanın

EDIT: nslookup * nix sistemlerde de çalışır. Nslookup komutunun bir süredir değiştirilip değiştirilmediğine dair daha fazla bilgi: http://linuxreviews.org/man/nslookup/

59
Marc-Andre R.

* Nix'te şunları kullanabilirsiniz:

Dig -x [address]
54
palehorse

Sizin farkında olduğum Linux sistemlerinin çoğunda şunları kullanabilirsiniz:

 nslookup <ip-number EX: 127.0.0.1>

komut satırında çalışacaktır.

Bir düşünün, Windows XP'de nslookup kullanılamıyor mu?

8
mdpc

Bu sorunun zaten bir milyon cevabı var, ama başka bir soru daha ekleyeceğim. İşte Dig ile kolayca ters DNS yapmak için yazdığım küçük bir fonksiyon. Bunu ~/.bashrc Dosyanıza ekleyin, Kabuğunuzu yeniden yükleyin ve ardından revdns 1.2.3.4 İle ters DNS aramaları yapabilirsiniz:

function revdns() {
    octets=""
    addr="in-addr.arpa"

    # split the IP address into an array of octets
    IFS="." read -r -a octets <<< "$1"

    # add each octet to our $addr string in reverse order
    for octet in "${octets[@]}"; do
         addr=$octet"."$addr
    done

    # run a DNS pointer lookup with Dig
    # `+short` makes Dig's output very terse (un-verbose)
    # `"${@:2}"` passes any extra params from this command to Dig
    Dig ptr +short $addr "${@:2}"
}

Ters DNS aramaları işaretçi (PTR) kayıtları kontrol edilerek yapılır. "1.2.3.4" için DNS'yi ters çevirmek istiyorsanız, "4.3.2.1.in-addr.arpa" için işaretçi kayıtlarını aramanız gerekir. İşlevim bir IP adresi alır, sekizlilerin sırasını tersine çevirir (yani 1.2.3.4'ten 4.3.2.1'e değiştirir) ve daha sonra az önce açıkladığım PTR aramasını yürütmek için Dig kullanır.

Elbette, eğer varsa nslookup 1.2.3.4 Kullanabilirsiniz, ancak bu Dig tabanlı çözümü tercih ediyorum, çünkü nslookup tarafından sağlananlar yerine işletim sisteminin DNS sunucularını kullanıyor (eğer isterseniz, revdns'yi çağırdığınızda ek Dig bayrakları ekleyebilirsiniz; bunlar Dig'e geçirilir)

4
Hayden Schiff

"Ana Bilgisayar" ı deneyin

  • Host ile ileriye doğru arama:

    $ Host google-public-dns-b.google.com.
    google-public-dns-b.google.com has address 8.8.4.4
    google-public-dns-b.google.com has IPv6 address 2001:4860:4860::8844
    
  • Host ile geriye doğru arama:

    $ Host 8.8.4.4
    4.4.8.8.in-addr.arpa domain name pointer google-public-dns-b.google.com.
    

Dig benzer

  • Dig ile ileriye doğru arama:

    $ Dig google-public-dns-b.google.com. +short
    8.8.4.4
    
  • Dig ile geriye doğru arama:

    $ Dig -x 8.8.4.4 +short
    google-public-dns-b.google.com.
    
3
StackzOfZtuff

Dig/Host/nslookup'ın bunlar için standart araçlar olduğunun farkındayım, ancak işletim sisteminin çözünürlüğünü test etmek için bunları saklıyorum (esas olarak, nsswitch.conf'un doğru çalıştığını test etmek için):

Gethostbyname:

#!/usr/bin/Perl

use Socket;

my @t = gethostbyname($ARGV[0]);
print "\$name     = $t[0]\n"; shift(@t);
print "\$aliases  = $t[0]\n"; shift(@t);
print "\$addrtype = $t[0]\n"; shift(@t);
print "\$length   = $t[0]\n"; shift(@t);

foreach (@t) {
  print "          = ", inet_ntoa($_), "\n";
}

gethostbyaddr:

#!/usr/bin/Perl

use Socket;

my @t = gethostbyaddr(inet_aton($ARGV[0]), AF_INET);
print "\$name     = $t[0]\n"; shift(@t);
print "\$aliases  = $t[0]\n"; shift(@t);
print "\$addrtype = $t[0]\n"; shift(@t);
print "\$length   = $t[0]\n"; shift(@t);

foreach (@t) {
  print "          = ", inet_ntoa($_), "\n";
}

misal:

g3 0 /home/jj33/swap > gethostbyname www.google.com
$name     = www.l.google.com
$aliases  = www.google.com
$addrtype = 2
$length   = 4
          = 72.14.205.147
          = 72.14.205.103
          = 72.14.205.104
          = 72.14.205.99
g3 0 /home/jj33/swap > gethostbyaddr 72.14.205.147 
$name     = qb-in-f147.google.com
$aliases  = 
$addrtype = 2
$length   = 4
          = 72.14.205.147
3
jj33

Windows'da kullanma alışkanlığına girdim:

ping -a <ip address>

çünkü bu ayrıca hosts dosyanızdaki verileri ve WINS vb.).

3
Dave Webb

Nslookup kullanıyorsanız, bu (söz konusu IP olarak 192.168.0.1 olduğu varsayılarak)

> set type=ptr
> 1.0.168.192.in-addr.arpa

EDIT: Geriye doğru aramanın yalnızca IP için oluşturulmuş bir PTR kaydı varsa ve aradığınız ana bilgisayar adını döndürmesi garanti edilmediğinde unutmayın. Tamamen DNS'in durumunuzda nasıl yapılandırıldığına ve sürdürüldüğüne bağlıdır.

1
squillman

Güç kalkanı:

[net.dns]::gethostentry("69.59.196.212").HostName
1
Richard

Windows için Dig komut satırını tercih ediyorum (burada bulunabilir: http://members.shaw.ca/nicholas.fong/Dig/ ) herhangi bir gün nslookup'a.

Bir Windows iş istasyonundan DNS'yi test etmeniz/yönetmeniz gerekiyorsa, bu aracı alın. Sonra:

C:\Dig>Dig -x <IP Address>

... ayrıca yolunuza c:\Dig eklemeyi de unutmayın!

0
Cory J

Bazı dost canlısı bir kişi nslookup komutunu yazdı ve haklı. Hem Unix hem de Windows üzerinde çalışır. Cevabınızı neden sildiğinizden emin değilsiniz, doğrusınız efendim.

0
Peter Turner

Daha eksiksiz bir DNS geriye doğru arama benim. Bu sayfanın gelecekteki izleyicileri için yararlı olacağını umuyoruz.

for ip in {1..254..1}; do Dig -x 1.1.1.$ip | grep $ip >> dns.txt; done;
0
Boschko