我们希望使用我们的linux机箱作为内部网络(10.0.0.x)的网关,然后使用linux机箱将传出流量转发到另一个网络上的某个路由器.
我读过的所有内容都是关于两个物理接口卡之间的伪装;但是我们只有一个网卡,可以收听多个IP地址.
在linux盒子上;它可以使用其中一个路由器作为上游网关Ping并访问互联网.
所以我们的配置如下:
: linux Box eth0:0 = 10.0.0.5 eth0:1 = 192.168.137.5 GW: 192.168.137.1: Router#1 IP: 192.168.137.1 Connection to internet via ISP: Network Machines IP: 10.0.0.x GW: 10.0.0.5
所以问题是,我在linux机器上的iptables / nat设置是什么,允许它接受10.0.0.x子网上的数据包并将它们路由到为网关配置的特定IP地址.当我尝试使用eth0:1作为我的-d然后iptables抱怨无效字符和我在互联网上读到的内容时,这在iptables(@L_301_1@)中被禁用.
有人可以协助吗?我相信我错过了一些非常明显的东西;我所有的历史知识都是两个独立的ethX网络接口.
谢谢
更新;这是“Hackity”iptables脚本
WIFIBACKUP=192.168.137.1iptables -F inputiptables -F FORWARDiptables -F OUTPUTiptables -F -t natecho 1 > /proc/sys/net/ipv4/ip_forwardiptables -A FORWARD -m state --state ESTABliSHED,RELATED -j ACCEPTiptables -t nat -A PREROUTING -s 10.0.0.0/32 -j REDIRECT --to $WIFIBACKUPiptables -P input ACCEPTiptables -P FORWARD ACCEPTiptables -P OUTPUT ACCEPT解决方法 -d用于–destination,并期望一个地址(或网络).如果destination是“any”,那么就不要指定它.
重定向不执行NAT.在使用别名时,使用-i和-o不起作用.解决方法是使用-d和-s.你可以用“!”来否定.因此,对于10.0.0.0/24的所有流量,其目的地为非10.0.0.0/24,请进行伪装:iptables -t nat -A POSTROUTING -s 10.0.0.0/24! -d 10.0.0.0/24 -j MASQUERADE
总结以上是内存溢出为你收集整理的Linux网关:一个网卡如何从一个子网伪装成另一个子网全部内容,希望文章能够帮你解决Linux网关:一个网卡如何从一个子网伪装成另一个子网所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)