如何在不设置网关的情况下路由所有客户端流量

如何在不设置网关的情况下路由所有客户端流量

我有 3 个设备,由于某些原因,我无法更改它们的默认网关以及它们的 IP 和网络掩码。

所有设备均具有以下 IP:169.254.11.22 和网络掩码 255.255.255.0

我想为每个客户端放置一个路由器来“更改”他们的可见 IP 地址,然后将路由器的端口 80 转发到内部客户端的端口 80。

实际上该解决方案不起作用,因为我无法设置客户端网关。

是否存在可以安装在 ddwrt 路由器上的设备或软件,允许我强制客户端生成的流量的网关?

到目前为止我发现的唯一解决方案是建立一个 ssh 隧道并转发端口,但这不能成为在生产环境中使用的解决方案。

答案1

169.254.0.0/16 是用于链路本地网络的地址范围。您之所以处于此网络是因为您没有分配 IP 地址的 DHCP 服务器。

在该网络上安装一个 DHCP 服务器,重置这些设备的网络连接,然后您就应该拥有一个正常运行的网络。

路由 169.254.0.0/16 网络无效,因此您需要离开该网络。

答案2

如果您控制客户端的目标 IP 地址,那么您可以使用 PLC 前面的路由器上的 iptables 实现目标网络地址转换 (DNAT)。

然后,您可以构建一个表,将网络本地地址转换为目标地址。(例如 169.254.11.23 -> 192.168.0.2 或 169.254.11.24 -> 8.8.8.8)

否则客户端甚至不会尝试发送任何数据包,因为它们没有路由。也许你可以设置到任何目标的固定主机路由(但这似乎不太可能,因为那时你大多也可以设置标准网关)。

但正如其他人所说,这些盒子不是用来装这些东西的。

相关内容