我有一个设置为“移动”的网络。它包含几个不同的服务器。从外部看,一切都运行正常。我试图配置的是内部连接。
我有一个 DD-WRT 路由器,我们可以给它起个昵称main
,还有另一个路由器,我们可以称之为generic
。这里的想法是,它main
包含大量端口转发和静态 IP 分配,用于我在其自己的独立 DHCP 服务器上的服务器。Generic
是我想要main
通过它访问互联网的任何路由器。(Main
连接到 的generic
WiFi 并使用其外部 IP)
我现在的情况Generic
是 ISP 提供的普通路由器/调制解调器一体机。所有端口generic
都转发到main
。这很有效。从外部看,一切都连接正确。
然而,由于generic
它位于路由器main
和互联网之间,因此发夹弯路由不起作用。
为了解决这个问题,我对 进行了 DNSMasq 设置main
。myDomain.com
如下10.0.0.101
所示...
address=/mydomain.com/10.0.0.101
和10.0.0.101
都是10.0.0.102
Debian 服务器。10.0.0.101
是我网络中的“管理”服务器。它处理电子邮件和一些其他管理事务。
我正在尝试使用 IP 表来10.0.0.101
模拟网络外部的效果。(myDomain.com 上的任何端口都应该执行相同的操作,无论我是在 LAN 内部还是外部。)
需要访问的端口10.0.0.102
是80
、8080
、3000
、22
、和。我对 IP 表不太熟悉,9090
但发现9091
9092
9093
本教程。
我以 root 身份登录并运行...
echo "1" > /proc/sys/net/ipv4/ip_forward
然后我运行以下命令,替换(MY_LOCAL_PORT)
上面列出的每个端口......
iptables -t nat -A PREROUTING -p tcp -s 0/0 -d 10.0.0.101 --dport (MY_LOCAL_PORT) -j DNAT --to 10.0.0.102:(MY_LOCAL_PORT)
然后我就跑了……
iptables -t nat -A POSTROUTING -o eth0 -d 10.0.0.102 -j SNAT --to-source 10.0.0.101
这不起作用。traceroute
对于mydomain.com:22
收益10.0.0.101
。我无法查看网络服务器,myDomain.com
尽管我可以通过输入10.0.0.102
浏览器的地址栏来查看它。
main
有什么问题?我该如何实现这个结果?还有额外的好处...可以在而不是上完成吗10.0.0.101
?