在网络上识别设备

时间:2017-01-11 09:43:10

标签: c# sockets network-programming

我能够扫描设备的IP范围(比如192.168.0.1-192.168.0.255)并获取其MAC地址,在某些情况下还可以获取主机名。以下是获取主机条目的代码 -

var host = System.Net.Dns.GetHostEntry(ip));

我无法理解的是,此设备是打印机,VOIP电话,相机,Android手机/苹果手机还是电脑,并获取型号名称和制造商。对于计算机/服务器,我可以获取数据 - 但是我必须将每个设备视为计算机并尝试在它们上运行发现。

我的要求是能够在范围扫描期间识别它是什么类型的设备,如果可能的话,获取主机名,型号和制造商。此后,我可以决定如何继续使用该设备。我已经经历了很多关于stackoverflow的问题并在网上搜索但是我无法得到答案。

我得到的最接近的一个是Android的网络发现服务。不幸的是,这对我不起作用,因为我可以尝试创建一个在Windows上运行的.NET应用程序。有些文章称,MacID可用于根据分配来识别制造商。它根本不吸引我。我不能使用第三方网络扫描仪软件,如nmap(这可以很好地工作)

请您指导我使用免费提供的.NET程序集/库获取设备类型及其主机名,型号和制造商需要采取的方法,或者如果此类项目之前已经尝试过......请链接我那个。谢谢。

0 个答案:

没有答案