linux双网卡网段网关流控配置

这个问题困扰我至少2个星期了,反反复复查了很多资料,今天终于能配置完成,现在要写下来激动啊,差点就气馁了。

 

要求:我想做ipp2p的流量控制测试,所以要在公司内部搭建一个测试环境。在我同公司的网之间搭建一台双网卡的linux机器,具体硬件架设图是这样的

 

 

 

 

 

互联网

|

公司的内部网段192.168.4.0(网关是192.168.4.1)

|

eth1(IP 192.168.4.129)

linux主机(双网卡)

eth2(IP 111.111.112.111)

|

我自己的电脑XP系统(IP 111.111.112.112,网关 111.111.112.111)

 

 

 

 

 

 

前期碰到的问题是,linux主机能上网,并且能ping公司的内部网段192.168.4.0,但就是ping不了xp系统机器,这个问题困扰了好几天,最后解决的是关闭了windows防火墙,原来是windows防火墙防火墙挡住了icmp包,使xp系统能ping linux系统的双网卡(不能ping通公司网),但linux ping不了xp系统机器.

 

解决了这个问题,现在就剩下了xp系统能上公司 网段192.168.4.0,还要能上网

 

现在摸索出来的解决方案是,静态路由设置+iptables的nat转换,使得XP系统(IP 111.111.112.112)机器能通过eth1(IP 192.168.4.129)这个ip上网,实现了nat的转换

 

 

现在是静态路由配置命令

route add -net 111.111.112.0/24   gw 111.111.112.111   dev  eth2
route add -net 192.168.4.0/24     gw 192.168.4.129    dev eth1 
route add default gw 192.168.4.1

 

 

接下来是iptables的配置

iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth1 -s 111.111.112.112 -j SNAT --to 192.168.4.129
iptables -t nat -A  PREROUTING -i eth1 -d 192.168.4.129 -j DNAT --to 111.111.112.112

 

 还有个开启内核转发   echo 1 > /proc/sys/net/ipv4/ip_forward

 

我的是red hat 2.6.18-8.el5     iptables v1.3.5

 

 

完成以后,发现XP机器能ping 公司192.168.4.0网段,也能上网了。

 

 

 

 

现在附上脚本

[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
[root@localhost ~]# iptables -t nat -F
[root@localhost ~]# iptables -t nat -A POSTROUTING -o eth1 -s 111.111.112.112 -j SNAT --to 192.168.4.129
[root@localhost ~]# iptables -t nat -A  PREROUTING -i eth1 -d 192.168.4.129 -j DNAT --to 111.111.112.112 
[root@localhost ~]# route add -net 111.111.112.0/24   gw 111.111.112.111   dev  eth2
[root@localhost ~]# route add -net 192.168.4.0/24     gw 192.168.4.129    dev eth1 
[root@localhost ~]# route add default gw 192.168.4.1

你可能感兴趣的:(嵌入式开发)