বিপরীত ডিএনএস কমান্ড লাইন ইউটিলিটি কী?


71

একটি আইপি ঠিকানা দেওয়া কম্পিউটারের নাম জানতে কমান্ড কি?

আমি সর্বদা এই আদেশটি কী তা ভুলে যাই, তবে আমি জানি এটি উইন্ডোজটিতে বিদ্যমান এবং আমি ধরে নিলাম এটি * নিক্স কমান্ড-লাইনে বিদ্যমান।

উত্তর:


56

আপনি যা খুঁজছেন তা খনন এবং হোস্ট হওয়া উচিত;)

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

* নিক্স সিস্টেমে আপনি এই কমান্ডটি করতে পারেন: dig -x [address]

বিকল্পভাবে আপনি কমান্ডের +shortশেষে digকেবল ডিএনএস ফলাফল আউটপুট যোগ করতে পারেন ।

উইন্ডোজ ব্যবহার করুনnslookup

সম্পাদনা: এনস্লুআপ * নিক্স সিস্টেমে খুব বেশি কাজ করে। এনএসলআপ কমান্ডের আরও ইনফসগুলি এখন থেকে এটি প্রতিস্থাপন করা হয়েছে কিনা তা মনে হচ্ছে: http://linuxreviews.org/man/nslookup/


একই বাক্য drillগঠনটি এলডিএনএস থেকে ইউটিলিটির সাথেও কাজ করে , যেমনdrill -x 123.123.123.123
Tullo_x86

52

* নিক্সে আপনি ব্যবহার করতে পারেন:

dig -x [address]

16
এটি অবশ্যই সহজতম উপায় বলে মনে হচ্ছে। আরডিএন ফলাফল ছাড়া আর কিছু না ফেরার জন্য শেষে সংক্ষিপ্ত যোগ করুন। dig -x [address] +short
কলিনম

3
যে +shortপতাকা সত্যিই দরকারী!
নিল

এই আইপিভি 6 ঠিকানা দিয়ে কাজ করে?
জেরেমিয়া

@ কলিনম ভাল পয়েন্ট। আমি এর ভিত্তিতে আমার উত্তর সম্পাদনা করেছি। ধন্যবাদ!
মার্ক-আন্দ্রে আর।

হ্যাঁ, @Geremia অনুযায়ী man dig, ঠি ডটযুক্ত দশমিক স্বরলিপি একটি IPv4 ঠিকানা, অথবা একটি কোলন-সীমা নির্দেশ করা IPv6, ঠিকানা।
রিকার্ডো

8

আপনার সম্পর্কে আমি সচেতন বেশিরভাগ লিনাক্স সিস্টেমে ব্যবহার করতে পারেন:

 nslookup <ip-number EX: 127.0.0.1>

কমান্ড লাইনে কাজ করবে।

এটি ভাবতে আসুন, উইন্ডোজ এক্সপি-তে এনস্কুলআপ উপলব্ধ নেই?


হ্যাঁ, সত্যিই। এবং উইন্ডোজ এর পূর্ববর্তী সংস্করণে।
কুবাঞ্চাইক

4

এই প্রশ্নের ইতিমধ্যে একটি মিলিয়ন উত্তর রয়েছে, তবে আমি আরও একটি যুক্ত করতে চাই। এখানে খননের সাথে সহজেই বিপরীত ডিএনএস করার জন্য লিখেছিলাম একটি ছোট ফাংশন। এটি আপনার ~/.bashrcফাইলে যুক্ত করুন, আপনার শেলটি পুনরায় লোড করুন এবং তারপরে আপনি বিপরীত ডিএনএস লকআপস এর সাথে করতে পারেন 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}"
}

পয়েন্টার (পিটিআর) রেকর্ডগুলি পরীক্ষা করে বিপরীত ডিএনএস লুকআপগুলি করা হয়। আপনি যদি "1.2.3.3" এর জন্য ডিএনএস বিপরীত করতে চান, আপনাকে "4.3.2.1.in- অ্যাড.আর.আরপা" এর জন্য পয়েন্টার রেকর্ডগুলি অনুসন্ধান করতে হবে। আমার ফাংশন একটি আইপি ঠিকানা গ্রহণ করে, অক্টেটের ক্রমকে বিপরীত করে (যেমন এটি 1.2.3.4 থেকে 4.3.2.1 এ পরিবর্তন করে), এবং তারপরে digআমি স্রেফ বর্ণিত পিটিআর লুকআপ কার্যকর করতে ব্যবহার করি।

আপনি অবশ্যই এটি ব্যবহার nslookup 1.2.3.4করতে পারেন, তবে এটি এই ডিগ-ভিত্তিক সমাধানটিকে আমি পছন্দ করি কারণ এটি এনএসক্লুপ-সরবরাহিতগুলির পরিবর্তে ওএস 'ডিএনএস সার্ভারগুলি ব্যবহার করে (যদি আপনি চান, তবে আপনি অতিরিক্ত ডিগ পতাকা যুক্ত করতে পারেন যখন আপনি কল করবেন revdnsএবং তারা খননের জন্য পাস হবে)


এর সাহায্য অনুসারে dig -x dot-notationহ'ল "বিপরীত অনুসন্ধানের জন্য শর্টকাট"। আমি ভাবছিলাম দীর্ঘ সংস্করণটি কী হবে। ব্যাখ্যা করার জন্য ধন্যবাদ! :)
ওয়েবওয়ার্স্ট

থেকে man dig: যখন -x ব্যবহার করা হয়, নাম, শ্রেণি এবং ধরণের আর্গুমেন্ট সরবরাহ করার প্রয়োজন হয় না। খনন স্বয়ংক্রিয়ভাবে 94.2.0.192.in-addr.arpa এর মতো নামের জন্য একটি অনুসন্ধান করে এবং যথাক্রমে পিটিআর এবং IN এ ক্যোয়ারির ধরণ এবং শ্রেণি নির্ধারণ করে।
রিকার্ডো

3

আমি ভাল করেই জানি যে ডিগ / হোস্ট / এনস্লুআপ এইগুলির জন্য স্ট্যান্ডার্ড সরঞ্জাম, তবে আমি ওএসের রেজোলিউশন পরীক্ষা করার জন্য এগুলি রাখি (মূলত, এনএসওয়িচ। সিএনএফ সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করার জন্য):

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";
}

উদাহরণ:

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

4
আপনি "জেন্টেন্ট হোস্টগুলি [আইপি বা HOSTNAME]" করতে পারেন
হাইয়ালকি

হুমম ... আমি ফাংশনগুলির সাথে খেলতে মূলত এই সরঞ্জামগুলি লিখেছিলাম, যাতে কোনও ক্ষতি হয় না তবে আমি যদি জেন্টেন্ট সরঞ্জামটি সম্পর্কে জানতাম তবে আমি অবশ্যই সেগুলি সার্ভারফল্টে আটকাতে পারতাম না। পয়েন্টারের জন্য ধন্যবাদ।
jj33

-1: এগুলি আইপিভি 4-তে সীমাবদ্ধ, জিথস্টবাইনেম উপস্থিত থাকলে আইপিভি 6 ঠিকানা পুনরুদ্ধার করে না এবং জিথস্টব্যাড্ডার আইপিভি 6 ঠিকানা গ্রহণ করে না।
bortzmeyer

এই ফাংশনগুলি বহু বছর অচল। এটি লেখা হওয়ার পরেও তারা অপ্রচলিত ছিল। পার্ল এবং বেশিরভাগ অন্যান্য ভাষায় আপনার getaddrinfo এবং getnameinfo ব্যবহার করা উচিত।
মাইকেল হ্যাম্পটন

3

উইন্ডোজটিতে আমি ব্যবহার করার অভ্যাসটি পেয়েছিলাম:

ping -a <ip address>

এটি আপনার hostsফাইল এবং ডাব্লুআইএনএস এবং এর থেকেও ডেটা প্রতিফলিত করবে ।


2

"হোস্ট" ব্যবহার করে দেখুন

  • এর সাথে ফরোয়ার্ড লুকআপ 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
    
  • এর সাথে উল্টো চেহারা host:

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

খননের মতোই

  • এর সাথে ফরোয়ার্ড লুকআপ dig:

    $ dig google-public-dns-b.google.com. +short
    8.8.4.4
    
  • এর সাথে উল্টো চেহারা dig:

    $ dig -x 8.8.4.4 +short
    google-public-dns-b.google.com.
    

1

আপনি যদি এনস্লুআপ ব্যবহার করেন তবে এটি এটি (192.168.0.1 কে আইপি হিসাবে বিবেচনা করে)

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

সম্পাদনা: মনে রাখবেন একটি বিপরীত লুকোচুরি কেবল তখনই কাজ করে যদি আইপি-র জন্য কোনও পিটিআর রেকর্ড তৈরি হয় এবং আপনি যে হোস্টের নামটি সন্ধান করছেন এটি ফেরত দেওয়ার নিশ্চয়তা নেই। আপনার পরিস্থিতিতে ডিএনএস কীভাবে কনফিগার করা এবং রক্ষণাবেক্ষণ করা হয় তার উপর সম্পূর্ণরূপে নির্ভর করে।


5
nsloookup আর রক্ষণাবেক্ষণ করা হয় না এবং এর লেখকরা খনন করার পরামর্শ দেন। এছাড়াও, ডিগ-এক্স নিজেই বাইটগুলি উল্টানোর চেয়ে অনেক সহজ।
বোর্টজমায়ার

এটি জেনে রাখা ভাল, ইনপুটটির জন্য অনেক ধন্যবাদ! পুরানো অভ্যাস কঠোরভাবে মারা যায়;)
স্কুইলম্যান


0

ঠিক আছে, কিছু বন্ধুত্বপূর্ণ ব্যক্তি স্রেফ লিখেছিলেন এনস্ক্রুয়াক হ'ল আদেশ, এবং তিনি ঠিক বলেছেন। এটি ইউনিক্স এবং উইন্ডোজ উভয় ক্ষেত্রেই কাজ করে। আপনি কেন নিজের উত্তরটি মুছলেন তা নিশ্চিত নন, তবে আপনি ঠিক স্যার।


ভুল, সম্ভবত না।
পিটার টার্নার

হ্যাঁ, আমি কিছুটা দ্রুত পোস্ট করেছি, এবং একটি চেকের পরেও আমি আমার উত্তরটির মোটেও নিশ্চিত ছিলাম না, আমি কেবল আমার পোস্টটি রেখেছিলাম এবং আরও বিশদ যুক্ত করার জন্য এটি সম্পাদনা করেছি;)
মার্ক-আন্দ্রে আর।

ঠিক আছে, তবে এটি উত্তর আমি গ্রহণ করছি না। খুব খারাপ আমরা এখানে আসল সময় গুগলির এজেএক্সটি পেতে পারি না।
পিটার টার্নার

হ্যাঁ হ্যাঁ, আমাদের সবকিছুই থাকতে পারে না;) আপনার দিনটি শুভ হোক, আশা করি আপনাকে সাহায্য করব;)
মার্ক-আন্দ্রে আর।

0

আমি যে কোনও দিন এনস্কুলআপ করার জন্য উইন্ডোজের জন্য কমান্ড-লাইন খনন (এখানে উপলব্ধ: http://mebers.shaw.ca/nicholas.fong/dig/ ) পছন্দ করি।

যদি আপনাকে উইন্ডোজ ওয়ার্কস্টেশন থেকে ডিএনএস পরীক্ষা / পরিচালনা করতে হয় তবে এই সরঞ্জামটি ধরুন। তারপর:

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

... এছাড়াও, সি যুক্ত করতে মনে রাখবেন: path আপনার পথে খনন করুন!


0

তার আরও একটি সম্পূর্ণ ডিএনএস বিপরীত লুকআপ গ্রহণ আমার। আশা করি এটি এই পৃষ্ঠার ভবিষ্যতের দর্শকদের কাজে আসবে।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.