كيف يمكنني الحصول على قائمة النشطة عناوين IP, MAC عناوين و أسماء NetBIOS على الشبكة المحلية ؟

StackOverflow https://stackoverflow.com/questions/90755

سؤال

كيف يمكنني الحصول على قائمة النشطة عناوين IP, MAC عناوين ، NetBIOS أسماء على الشبكة المحلية ؟

أود أن أحصل على اسم NetBIOS الملكية الفكرية ، عناوين MAC لكل المضيف على الشبكة المحلية ، ويفضل أن لا وجود سيرا على الأقدام إلى كل كمبيوتر واحد علما الأشياء بنفسي.

كيف تفعل ذلك مع Windows Script Host/PowerShell/أيا كان ؟

هل كانت مفيدة؟

المحلول

كما دارين توماس وقال استخدام nmap.

 nmap -sP 192.168.1.1/24

لمسح الشبكة 192.168.1.*

 nmap -O 192.168.1.1/24

للحصول على نظام التشغيل المستخدم.لمزيد من المعلومات قراءة manpage

 man nmap

تحياتي

نصائح أخرى

arp -a

أن يحصل على كل شيء الجهاز الحالي يعرف على الشبكة.

(أنا أضع هذا هناك كخيار ثان ، منذ nmap ليست مثبتة عالميا).

إذا كنت تستخدم DHCP ثم الملقم سوف تعطيك قائمة من كل تلك المعلومات.

هذا الموقع لديه تعليمي جيد على باستخدام powershell للحصول على معلومات الشبكات http://www.powershellpro.com/powershell-tutorial-introduction/powershell-scripting-with-wmi/

إذا كنت عمالا على لائحة سريعة من أسماء أجهزة الكمبيوتر يمكنك استخدام "net view".يكون أيضا نظرة على nbmac على الرغم من أنني متأكد من أنها حالة العمل تحت XP.خيار آخر يمكن أن يكون استخدام nbtstat -a (مرة واحدة كنت قد استخدمت net view إلى قائمة محطات العمل)

في PowerShell يمكنك أن تفعل شيئا مثل:

$أجهزة الكمبيوتر = "server1","server2","server3"

الحصول على-لكن الشعب الأذربيجاني Win32_NetworkAdapterConfiguration -الكمبيوتر $أجهزة الكمبيوتر -تصفية "IPEnabled ='true'" | حدد __الخادم,IPAddress,MACAddress

في PowerShell:

function Explore-Net($subnet, [int[]]$range){
    $range | % { test-connection "$subnet.$_" -count 1 -erroraction silentlycontinue} | select -Property address | % {[net.dns]::gethostbyaddress($_.address)}
}

على سبيل المثال:

Explore-Net 192.168.2 @(3..10)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top