《Linux系统静态路由和火墙路由》


本篇主要写的是关于静态路由表的添加,和如何让你不能上网的主机通过火墙路由表实现上网的功能。

 

静态路由表:

要是你的主机是2块网卡,并且做了网卡的绑定,依照我下面的方法是成功不了的,你可以去编辑:

# vim /etc/rc.d/rc.local

 

ip route add 12.0.0.1/24 via 192.168.1.113

sh /etc/rc.d/rc.local        //这样做就行了

下面我们来看常规的路由表的添加:

 

我的系统默认的路由表、

下面添加一块路由表:这样的添加只是临时的。

查看下路由表:

当我们重启网络发现上面的添加都消失了,现在添加永久的静态路由:默认这个文件是没有的我们需要新建,

给那块网卡添加就写那块网卡的路由:route-eth0       route-eth1…

重启网络查看:

查看路由表:

 

通过IPTABLES火墙,让不能上网的主机实现上网的功能:

 

测试环境:

3网段可以上网,ping的通外网

双网卡的主机一块为3网段,一块为4网段,可以上网。

单网卡的主机位4网段,不可以上网,开启apache功能。

下面火墙的策略是在双网卡的主机上写的。

[root@apache ~]# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.3.113

标注:在nat表添加策略:将本机出去的包全部转换成可以上网的网段,POSTROUTING路由之后的意思,-o out出去意思 SNAT源地址转换 eth0 可以上网 eth1 不可以上网。

 

[root@apache ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-dest 192.168.4.111

把从外网进来的apache的包通过目的地址转换发送到4网段。

测试时,客户端只要是apache的包,都可以看得到。

 

简单的来说,就是端口本身不分源端口还是目的端口,只是针对数据包的方向而言,同样一个端口,既可以作为某项服务监听外网数据包的目的端口,也可以作为本机发送连接数据包的源端口。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

相关内容