স্থানীয় নেটওয়ার্কে সমস্ত ডিভাইস (আইপি ঠিকানা, হোস্টনাম, ম্যাক ঠিকানা) কীভাবে সন্ধান করবেন?


14

আমি এটি সম্পর্কিত প্রায় প্রতিটি থ্রেড পড়েছি, তবুও কেউ নীচের মত একটি টেবিল অ্যাক্সেস করা যথেষ্ট সহজ করেনি।

  IP Address     Hostname        MAC Address
  192.168.1.10 | myAppleTV     | 02:78:42:9b:bb:12
  192.168.1.10 | myiPhone      | b2:18:4a:3a:42:22
  192.168.1.10 | myiMac        | 09:17:a2:95:c4:00
  192.168.1.10 | myCanonPrinter| a0:ea:72:77:b4:aa

বেশিরভাগ সময় আমি ব্যবহার করি arp -aএবং এটিও রয়েছে dns-sb, তবে যখনই আমি নেটওয়ার্কে আইপি অ্যাড্রেস, হোস্টনাম এবং ম্যাক অ্যাড্রেস নিয়ে ঘোরাঘুরি করছি তখন তাদের মধ্যে 3 টি মূল টুকরো খুঁজে পাওয়া সহজ করে না। আমি অবাক হয়েছি যে এটির কোনও সাফল্য নেই!


এই ধরণের তথ্য মূলত রাউটারে হতে চলেছে
ব্যবহারকারী 151019

উত্তর:


12

যদি তৃতীয় পক্ষের ইউটিলিটি ব্যবহার করা আপনার পক্ষে সমস্যা না হয় তবে আমি এগুলি ব্যবহার করে দেখার পরামর্শ দিই:

আরপ-স্ক্যান ( হোমব্রিউয়ের মাধ্যমে উপলব্ধ )

brew install arp-scan
arp-scan --localnet

fing ( fing.com থেকে বা হোমব্রিউয়ের মাধ্যমে "ডেস্কটপ এম্বেডেড সিএলআই" প্যাকেজটি ডাউনলোড এবং ইনস্টল করুন brew cask install fing)

sudo fing -r 1 -d true -o table,text

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

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

#!/usr/bin/env bash
tab=$'\t'
pIF=$(echo "show State:/Network/Global/IPv4" | scutil | awk -F: '/PrimaryInterface/{sub(/ /,"",$2); print $2}')
sn=$(ipconfig getifaddr $pIF | sed -En 's/^([0-9]+\.[0-9]+\.[0-9]+).*/\1/p')
for i in {1..254}; do ping -i0.1 -W100 -c1 $sn.$i | grep from; done
arp -a | grep $pIF | sed -e 's/^\?/unnamed/' -e "s/\ at\ /${tab}/g" -e "s/\ on\ /${tab}/g" -e 's/\ ifscope.*$//g' | awk 'BEGIN { FS="\t"; OFS="\t"; printf "%-17s\t%-15s\t%s\n", "MAC","INTERFACE","HOSTNAME (IP)" } { if($2!="(incomplete)") {printf "%-17s\t%-15s\t%s\n",$2,$3,$1}}'

এটির মতো কিছু আউটপুট করা উচিত:

MAC                 INTERFACE       HOSTNAME (IP)
0:90:b:7a:85:62     en0             r1.lan (192.168.20.1)
2c:36:f8:48:2b:47   en0             cisco-sg300-10p.lan (192.168.20.2)
84:78:ac:a6:95:a0   en0             cisco-sg300-20.lan (192.168.20.3)
b4:fb:e4:cb:93:85   en0             wap1.lan (192.168.20.10)
0:11:32:10:cd:c1    en0             nas.lan (192.168.20.20)
0:11:32:3d:99:c9    en0             nas2.lan (192.168.20.21)
0:11:32:10:cd:c1    en0             unnamed (192.168.20.23)
d4:4b:5e:fe:6a:75   en0             brwd44b5efe6a75.lan (192.168.20.90)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.