ROS软路由论坛 ROSABC.com 网络方案网络工程交流

 找回密码
 会员注册

QQ登录

只需一步,快速开始

Redhat下使用iptables实现NAT

2014-10-9 18:08| 发布者: admin| 查看: 1178| 评论: 0

摘要:   摘要:Redhat下使用iptables实现NAT:iptabels程序是Linux中实现包过滤功能的应用程序。iptables包含在2.4以后的内核中,它可以实现防火墙、NAT(网络地址翻译)和数据包的分割等功能。本文介绍的是Redhat下使用ip ...

  摘要:Redhat下使用iptables实现NAT:iptabels程序是Linux中实现包过滤功能的应用程序。iptables包含在2.4以后的内核中,它可以实现防火墙、NAT(网络地址翻译)和数据包的分割等功能。本文介绍的是Redhat下使用iptables实现NAT。

  一、注意:

  关于如何驱动双网卡,在X-Windows下配置,详见相关文档。

  二、开始试验:

  在笔记本上进入Linux操作系统,以root用户身份登录到字符界面。

  首先输入setup,进入配置菜单。进入systemservice,选项,关闭里面的ipchains(去掉选项前面的号),启用里面的iptables(在选项前加上号)。这里设置后,Linux的服务并没有按照我们的意愿启动或停止,这只是标记一下并告诉系统下次启动时将要自动启动哪些服务而不启动哪些服务,可以重新启动Linux操作系统(reboot)使设置生效。在不需要重新启动操作系统的前提下,可以重启端口守护进程:/etc/rc.d/init.d/xinetdrestart

  启动好iptables之后,就需要配置它了。

  fast路由器地址首先打开ip转能(相当于让计算机工作在由状态,能够转发各个网络接口上的数据包):

  注意,在“echo1”和“>”之间有一个空格,否则语句就不起效果。

  这一句执行前,我们可以vi/proc/sys/net/ipv4/ip_forward,看到文件内容为一个字符“0”,这表明ipforward功能被禁用。该语句正确执行后,文件内容被改为“1”,表明ipforward功能被启用。

  也可以手工去修改ip_forward文件内容为“1”,启用ip转能,但是下次系统重启后,又会被置为0。

  这是实现iptablesNAT的准备工作,我们可以将这条语句写进/etc/rc.d/rc.local这个启动脚本中,下次操作系统重新启动时,这条语句会被自动执行。

  在iptables的filter面不做任何设置,所有规则为空,默认即为所有包均允许通过。

  同样的

  iptablesCF表示清空包过滤规则,完全写法为iptablesCtfilterCF,再次强调,包过滤规则为空表示对所有通过的数据包均放行不予拦截(ACCEPT)。

  接下来在iptables的NAT面做相应的地址转换设置。

  用以下语句添加两条NAT规则:

  需要说明的是源地址转换(SNAT)是在由后进行的,所以是POSTROUTING,需要确定数据包出防火墙的接口;而目的地址转换(DNAT)是在由前进行的,所以是PREROUTING,需要确定数据包进防火墙的接口。

  对第一条NAT规则解释如下:

  这是一个源地址转换规则,数据包出防火墙(-o)的接口是eth0。这条规则将所有源地址为10.0.0.0/24的数据包在从eth0接口出防火墙的时候,转换其源地址为192.168.59.27。这样就让内部网(10.0.0.0/24)的机器能够共享一个外部网IP(192.168.59.27/24)访问到外部网段(192.168.59.0/24)。这条规则适合部署一台NAT防火墙实现Office或Home的多台机器共享上网。

  对第二条NAT规则解释如下:

  这是一个目的地址转换规则,数据包进防火墙(-i)的接口是eth0。当一个数据包试图访问防火墙的eth0接口(192.168.59.27)2323端口的时候,数据包的目的地址将被改变为10.0.0.1,同时,访问的端口也将被改变为23,也就是说,这个数据包将被防火墙从其eth1接口转发(因为eth1接口IP是10.0.0.0/24这一段的)出去并送达10.0.0.1访问其23端口。这是一个典型的静态端口重定向规则。

  三、开始测试:

  因为10.0.0.1是由器Cisco2621的快速以太口,我们可以telnet上由器,然后确定shiproute显示其缺省由指向10.0.0.254,并确保能在由器上ping通10.0.0.254。然后试图ping192.168.59.1,发现能够ping通,但是速度不稳定有时会丢包,怀疑到192.168.59.1是一台Catalyst6509多层交换机,整个公司均利用其作为网关出口,所以该设备的NAT处理非常频繁,可能会导致处理数据包能力下降。所以从由器上ping另一个IP例如192.168.59.22,发现连通性非常稳定,这表示SNAT功能成功实现。

  接着输入:

不良信息举报Q:2000617
新用户7天后可回帖!

软路由

不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流

GMT+8, 2025-10-29 15:22 , Processed in 0.028941 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部