C# 如何以编程方式查找网络路由器的模型

C# 如何以编程方式查找网络路由器的模型,c#,router,C#,Router,我在本地网络模型中有一个路由器:D-Link Micro Httd,我知道它的IP地址。我想用C语言编程查找路由器的型号。在路由器上,SNMP服务被禁用,我忘记了管理员密码。 我使用了NMS,它找到了模型,我也使用了,它也找到了模型。 我还使用了UPnPAPI,但即使它也找不到路由器 这个应用程序如何找到路由器的型号,而SNMP服务被禁用,我忘记了管理员密码?如果你可以获得设备的MAC地址,那么你可以使用类似于这里的在线服务来获取存储在MAC地址上的相关元数据 例如: 返回以下内容: [

我在本地网络模型中有一个路由器:D-Link Micro Httd,我知道它的IP地址。我想用C语言编程查找路由器的型号。在路由器上,SNMP服务被禁用,我忘记了管理员密码。 我使用了NMS,它找到了模型,我也使用了,它也找到了模型。 我还使用了UPnPAPI,但即使它也找不到路由器


这个应用程序如何找到路由器的型号,而SNMP服务被禁用,我忘记了管理员密码?

如果你可以获得设备的MAC地址,那么你可以使用类似于这里的在线服务来获取存储在MAC地址上的相关元数据

例如:

返回以下内容:

[
   {
      "startHex":"0023AB000000",
      "endHex":"0023ABFFFFFF",
      "startDec":"153192759296",
      "endDec":"153209536511",
      "company":"CISCO SYSTEMS, INC.",
      "addressL1":"170 W. TASMAN DRIVE",
      "addressL2":"M\/S SJA-2",
      "addressL3":"SAN JOSE CA 95134-1706",
      "country":"UNITED STATES",
      "type":"oui24"
   }
]
更新:但是您特别提到了型号。遗憾的是,这在面向公众的API上不可用,UPNP可能适合您。但是,如果路由器没有启用UPNP或它被阻止,那么这也不会起作用。查看用Java编写的端口映射器,获得一些灵感


它们是显示完整的型号,还是仅显示制造商?他们可以从MAC地址得到,他们从MAC地址得到制造商,但他们得到型号名称,例如,他们给我型号的Micro_Httpd。我不知道他们是怎么做到的?也许他们正确地使用了UPnp,而你没有?我在GitHub和CodePlex中找到了一些使用UPnp的项目,但他们找不到路由器。这篇文章说端口扫描可以提供更多信息,我该怎么做?端口扫描仅表示特殊端口已打开或关闭。是吗?谢谢你的回复。我知道,我使用此服务查找制造商名称,但我想查找设备型号。我深表歉意。事后看来,我的回答并没有完全解决你问题的所有方面。我建议你试试这样的工具。它有几个UPNP实现,可能会帮助您确定使用的最佳库/方法。它是开源的,但它是用Java编写的,但应该会让您走上正轨。