我有一个设置为“移动”的网络。它包含一些不同的服务器。一切都可以从外面完美地工作。我要配置的是内部连接。
我有一个可以昵称的DD-WRT路由器main,另一个可以打电话的路由器generic。这里的想法是main在我自己的独立DHCP服务器上为我的服务器包含大量的端口转发和静态IP分配。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上的任何端口都应执行相同的操作。)
需要去端口10.0.0.102是80,8080,3000,22,9090,9091,9092和9093。我对IP表不那么熟悉,但是找到了本教程。
我以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在浏览器的地址栏中输入来查看Web服务器,也无法查看。
有什么问题?如何取得这个结果?作为奖励...可以main而不是这样做10.0.0.101吗?
main。Howevet,我尝试通过将路由器的静态IP(10.0.0.1)放在地址字段中来做到这一点。那没用。我宁愿避免更改为WAN IP(192.168.0.10),因为当网络移动时,这将改变。
main,您需要其WAN IP地址。
main是分配的静态IP generic.如果generic要改变,很可能是由指定的静态IP generic,因此main的广域网IP,也将改变。
main在该address=行中使用的“ WAN” IP地址。这可以通过一些脚本和addn-hosts文件来完成。