配置具有无效/不匹配网络配置设置的网络设备的最佳方法是?

时间:2015-10-13 13:29:09

标签: c# networking network-programming

我们正在开发一些公司需要通过网络上的TCP与我们的应用程序进行通信的硬件设备。这些设备有一些限制,例如它们没有显示器或dotmatrix来显示任何当前配置,例如IP或mac地址。因此,无法直接在设备上配置IP配置。

当他们第一次连接到网络时,他们当前的网络配置很可能与所连接的网络不匹配。

E.g。

  • 它们配置为使用DHCP,网络不提供任何DHCP。
  • 它们被配置为使用手动IP,例如192.168.1.1,子网掩码为255.255.0.0,但网络设置为使用10.XXX作为IP范围,网络掩码为255.0.0.0

我们现在想要开发一个独立的应用程序,列出连接到网络的所有设备,并将IP配置更改为特定的(符合网络需求)。

  • 为了能够处理上面发布的内容,需要在设备(运行Linux)上设置什么?
  • 需要在客户端应用程序上设置什么才能显示设备并在不匹配时重新配置它们?如果可能,应用程序应该是.NET WPF / C#应用程序,如果需要,可以获取管理员权限。
  • 我们是否有任何限制/情况无法检测到这些设备或设置新的网络设置?

2 个答案:

答案 0 :(得分:0)

解决任何安全问题我会使用任何设备都会收到的255.255.255.255的udp广播。当您将所有有效的子网放入有效负载时,客户端将知道它被错误地配置并且必须以广播的形式回复(因为它可能位于不同的子网中,并且没有任何有效的路由表就不可能单播)

但请记住,这可能会打开安全问题,因为您将在扫描中发布可能对攻击者非常感兴趣的所有有效子网。

如果您知道,例如所有可能设备的Mac地址,您可以加密UDP有效负载,只能使用正确的Mac地址加密。

答案 1 :(得分:0)

这就是DHCP,BOOTP,RARP的用途。使用DHCP和朋友来做这件事意味着网络上的设备最有可能获得有效配置。

如果您必须拥有自己的应用程序来管理IP配置问题,那么可以考虑在管理/服务器应用程序中使用DHCP协议。

如果您的设备不能与随机DHCP服务器通话,那么请考虑让它们忽略在回复中没有某些属性的响应(由于它可能会一直询问并且可能占用IP,因此效率低下)或使用DHCP在不同的港口......至少你不会重新发明轮子。

使用现有协议的好处是,网络分析师也可以了解发生了什么,系统管理员可以调试并对问题进行直观猜测等。

相关问题