IP adresini verilen bilgisayarın adını bulma komutu nedir?
Bu komutun ne olduğunu her zaman unuturum, ancak Windows'da bulunduğunu biliyorum ve * nix komut satırında da var olduğunu varsayıyorum.
IP adresini verilen bilgisayarın adını bulma komutu nedir?
Bu komutun ne olduğunu her zaman unuturum, ancak Windows'da bulunduğunu biliyorum ve * nix komut satırında da var olduğunu varsayıyorum.
Yanıtlar:
kazmak ve ev sahibi aradığınız olmalıdır;)
http://www.unix.com/unix-dummies-questions-answers/9866-nslookup-linux.html
* Nix sisteminde şu komutu yapabilirsiniz:
dig -x [address]
Alternatif olarak sadece dns sonucunu vermek +short
için dig
komutun sonuna ekleyebilirsiniz .
Windows'ta kullanınnslookup
EDIT: nslookup da * nix sistemlerinde çalışır. Nslookup komutuyla ilgili daha fazla bilgi, bir süredir değiştirilmiş gibi görünüyor: http://linuxreviews.org/man/nslookup/
Açık * nix kullanabilirsiniz:
dig -x [address]
dig -x [address] +short
+short
bayrak gerçekten çok faydalı!
man dig
, addr noktalı ondalık gösterimde bir IPv4 adresi veya iki nokta üst üste IPv6 adresidir.
Bu sorunun zaten bir milyon cevabı var ama bir tane daha ekleyeceğim. İşte kolayca kazmak ters DNS yapmak için yazdığım küçük bir fonksiyon. Bunu ~/.bashrc
dosyanıza ekleyin , kabuğunuzu yeniden yükleyin ve ardından geriye doğru DNS aramaları yapabilirsiniz revdns 1.2.3.4
:
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ını kontrol ederek 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ına bakmanız gerekir. Benim işlevim bir IP adresi alır, sekizli dizilerinin sırasını değiştirir (yani 1.2.3.4'ten 4.3.2.1'den değiştirir) ve daha sonra dig
tarif ettiğim PTR aramasını yürütmek için kullanır .
Tabii ki, sadece nslookup 1.2.3.4
sahipseniz kullanabilirsiniz , ancak bu kazı tabanlı çözümü tercih ediyorum çünkü nslookup tarafından sağlananlar yerine OS'nin DNS sunucularını kullanıyor (eğer isterseniz, ek kazı bayrakları ekleyebilirsiniz. aradığınızda revdns
ve kazmaya geçecekler)
dig -x dot-notation
"geriye doğru aramalar için kısayol". Uzun versiyonun ne olacağını merak ediyordum. Açıkladığınız için teşekkürler! :)
man dig
: -x kullanıldığında, name, class ve type argümanlarını sağlamaya gerek yoktur. dig otomatik olarak 94.2.0.192.in-addr.arpa gibi bir ad arar ve sorgu tipini ve sınıfını sırasıyla PTR ve IN olarak ayarlar.
Dig / host / nslookup öğesinin bunlar için standart araç olduğunun farkındayım, ancak işletim sisteminin çözünürlüğünü test etmek için bunları sürdürüyorum (aslında, nsswitch.conf dosyasının düzgün ç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";
}
örnek:
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
İleriye doğru ara host
:
$ 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
Şununla geriye doğru ara host
:
$ host 8.8.4.4
4.4.8.8.in-addr.arpa domain name pointer google-public-dns-b.google.com.
İleriye doğru ara dig
:
$ dig google-public-dns-b.google.com. +short
8.8.4.4
Şununla geriye doğru ara dig
:
$ dig -x 8.8.4.4 +short
google-public-dns-b.google.com.
Eğer 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
DÜZENLEME: Geriye doğru aramanın, yalnızca IP için oluşturulan bir PTR kaydı varsa işe yaradığını ve aradığınız ana bilgisayar adını döndürmesinin garanti edilmediğini unutmayın. Tamamen sizin durumunuzda DNS'in nasıl yapılandırıldığına ve korunacağına bağlıdır.
Eh, bazı samimi insanlar az önce nslookup komutunu verdi ve o haklı. Hem Unix hem de Windows üzerinde çalışır. Cevabınızı neden sildiğinizden emin değilim, ama haklısınız efendim.
Ben her gün nslookup için Windows için komut satırı kazığı (burada kullanılabilir: http://members.shaw.ca/nicholas.fong/dig/ ) tercih ederim .
DNS'yi bir Windows iş istasyonundan sınamak / yönetmek zorunda kalırsanız, bu aracı alın. Sonra:
C:\dig>dig -x <IP Address>
... ayrıca, c: \ dig'i yolunuza eklemeyi unutmayın!
drill
, ldns'in yardımcı programıyla da çalışır , yanidrill -x 123.123.123.123