如何配置NAT (网络地址转换),从而使得互联网上的计算机通过其思科路由器访问其内部的Web和电子邮件服务器。这需要在专门公用的IP地址和专门私用的IP地址之间配置一个静态的NAT转换。下面笔者谈一下解决这个问题的一些具体做法。
近来,绝大多数人都使用NAT来连接到互联网。NAT将私有的IP地址转换为公有的IP地址,从而使得用户能够访问公共的互联网。我们中的多数人都使用这样一种形式的NAT,称为端口地址转换(Port Address Translation (PAT)),思科称之为NAT overload.
要开始这项工作,让我们先看一下我们需要操作的对象是什么。请看下图:
这就是我们的目标:我们想通过处于外部的网络(也就是Internet)与内部的网络(也就是私有网络)之间的路由器配置一个静态的IP转换。
在一个拥有基本的Web接口的Linksys路由器上,这并不难做。然而,在一个使用命令行界面(即CLI)的路由器上,如果你并不知道正确的命令或者在什么地方运用它们,你就会面临着困难。
在开始之前,收集你需要的数据是一个不错的主意。下面是我们这个例子中所需要的信息:
路由器内部接口E0/0: IP 10.1.1.1
路由器外部接口S0/0: IP 63.63.63.1
Web/邮件服务器私有IP地址:10.1.1.2
Web/邮件服务器公有IP地址:63.63.63.2
要获取你网络内部和到达你的Web/邮件服务器的数据通信,你可以采用两个重要的措施:
1.NAT配置
2.防火墙配置
在本文中,笔者将提供基本的NAT配置。然而,一定要确保不管你为你的防火墙采用了什么配置,一定要允许这些数据通信通过。
不管你正运用基本的访问控制列表(ACL)或者是正使用思科的IOS防火墙属性集(详细信息见:Cisco IOS firewall feature set),一定要确信你理解了思科IOS的操作顺序,这样才能为适当的IP地址(不管是公有的还是私有的)配置你的防火墙。换句话说,哪一个先发生呢?是 NAT转换,还是防火墙过滤?例如,在使用ACL时,一个输入的ACL检查要先于NAT转换。因此,你需要在头脑中牢牢记住拥有公有IP地址的ACL.
既然我们已经清楚了这些背景信息,下面就开始我们的静态NAT配置之旅吧。对我们例子来说,我们要从如下的这个基本配置开始:
interface Serial0/0
ip address 63.63.63.1 255.255.255.0
ip nat outside
interface Ethernet0/0
ip address 10.1.1.1 255.255.255.0
ip nat inside
我们需要NAT转换将Web/电子邮件服务器的外部IP地址从63.63.63.2 转换为 10.1.1.2 (从 10.1.1.2 转换为 63.63.63.2)。下面就是在外部和内部NAT配置之间缺少的环节中的操作:
router(config)#ip nat inside source static tcp 10.1.1.2 25 63.63.63.2 25
router(config)#ip nat inside source static tcp 10.1.1.2 443 63.63.63.2 443
router(config)#ip nat inside source static tcp 10.1.1.2 80 63.63.63.2 80
router(config)#ip nat inside source static tcp 10.1.1.2 110 63.63.63.2 110
我们使用了上述的端口数字,因为它们适合我们想要执行操作的描述。但是需要记住,你的端口数字可能会有所不同。笔者关闭了用于SMTP(发送邮件)的 25号端口、用于HTTPS(安全Web)的443号端口,用于HTTP(Web通信)的80号端口,还关闭了用于POP3(从邮件服务器接收邮件)的 110号端口。
这个配置需要假定你有一组IP地址。如果你没有,你可以使用路由器(此例中就是Serial 0/0)上的外部IP地址,你可以进行如下配置:
router(config)#ip nat inside source static tcp 10.1.1.2 25 interface serial 0/0 25
如果你有一个从ISP那里得到的动态的DHCP IP地址,你甚至也可以使用这个命令。
我们还需要在公网Internet DNS服务器中注册这个邮件和Web服务器的IP地址。因此,当用户在其Web浏览器中键入www.mywebserver.com时,浏览器就会将其转化为63.63.63.2,路由器将会把它转换为10.1.1.2.Web服务器会接收这个请求,并通过路由器给予回应,路由器会再将其转换回公网IP地址。
除了配置静态的NAT,你可能想到在这同时使用动态的NAT.有鉴于此,你内部的PC可以使用动态的NAT为访问互联网(即NAT过载或PAT)。不过,这样就有点儿更加复杂。如果大家感兴趣,可以参考思科的Configuring Static and Dynamic NAT Simultaneously文档。