由于第二层路由器而需要进行手动发夹路由?

由于第二层路由器而需要进行手动发夹路由?

在此处输入图片描述

我家里有这样的设置。Router A是我的 ISP 的路由器。这是我个人使用的路由器,等等。Router B是我的服务器的路由器,上面刷了 DD-WRT。

整个设置旨在实现高度移动性。服务器是 Raspberry Pi 3 集群,它们使用集成 WiFi 连接到Router B。(运行 Debian 的最低安装。)

Router B连接到动态 DNS 服务,不断用我当前的外部 IP 更新我的域名。它广播 WiFi 信号,还连接到Router A的 WAP。

Router A分配一个静态 IP 并将所有端口转发到Router B。(我不想进入Router A桥接模式,因为我不想让我的所有个人设备都在开放网络上。)

Router B有一些特定的端口转发MainDevelopment为它们分配静态IP。

我在这里遇到的问题是从 INSIDERouter B的网络访问我域中的某些服务。发夹路由显然不起作用,因为即使配置为进行发夹路由,Router A也会“混淆” 。Router B

我一直在做的是在 DDWRT 上添加一个 DNSMasq 规则,Router B将所有内部请求发送到MyDomain.comMain然后Main进行一些二次路由,最终将几个端口转发到Development

这有点混乱。DNSMasq 没有为我提供一种针对内部请求的端口特定的方法,但我想Router B处理这种二次路由,而不是Main.

我怎样才能做到这一点?(请记住,由于此设置意味着非常灵活,因此我无法进行Router A任何操作,只能转发所有端口Router B并分配Router B一个静态 IP。)

答案1

如果您能够将端口与每个“网络”匹配,则可以完全摆脱 DNSMasq,而只使用常规转发。有很多教程可用。其中一个是。您要做的就是设置一个 NAT(网络地址转换)。

由于 DD-WRT 确实提供了 GUI,因此你应该能够使用路由器的 GUI 进行设置(示例指南)。因此您甚至不必处理 iptables。使用通用端口转发,您将始终重定向到所述目标,因此RouterB:22mydomain.com:22重定向到同一目标。因此,重定向路由器本身使用的端口可能不是最好的主意。

另一种方法是使用 DNSMasq 重定向dev.mydomain.com到开发网络。

相关内容