在本例中,公司使用一台两接口路由器,一个是Ethernet,另一个是串行接口。
Interface ethernet0 配置E0端口
ip address
ip nat inside
!
interface serial0 配置S0端口
ip address 171.100.1.1 255.255.255.252 设置IP地址为 171.100.1.1 255.255.255.252
ip nat outside
!
ip access-list 1 permit 10.0.0.0 0.255.255.255 配置基于源IP的ACL
!
ip nat inside source list 1 interface serial0 overload 在S0口上配置过载,只有匹配ip access-list 1的源IP才使用OVERLOAD
ip nat inside source list 1 static tc
ip nat inside source list 1 static tc
2 分析
先定义NAT所用的接口,并通过将合适的命令放在每个接口下面来定义接口是NAT内部或外部接口。通常,在定义NAT接口之后,就要定义NAT池来指定所用的内部全局地址。但是,在本例中只使用了一个单一的内部全局地址,并且将该单一内部全局地址用于路由器的serial 0接口上。由于只有一个单一内部全局地址并且用于路由器自己的接口上,所以我们不需要定义NAT池。我们只简单地使用示例中所示的inside source list语句即可。所定义源列表使用路由器接口的IP地址,并且超载该单一IP地址。该命令允许来自
由于只有一个单一的内部全局IP地址,因此要根据IP地址以及TCP或UDP端口来定义静态映射。在本例中,将目的地址为171.100.1.1和目的TCP端口为80的报文地址转换成TCP端口80上的10.1.1.100内部主机地址。我们还将目的地址为171.100.1.1和目的TCP端口为21的报文地址转换成TCP端口21上的10.1.1.101内部主机地址。这样我们就在不同的内部服务器上提供了Web和FTP服务,虽然我们只有一个单一的内部全局地址。注意,由于该命令语法允许指定内部服务器的IP地址和端口,所以可以在内部提供多个Web和FTP服务器。例如,可以创建如下的静态映射:
ip nat inside source static tc
该转换*作将所有目的地址为171.100.1.1且目的端口为27的向内报文的地址转换为FTP端口上的地址10.1.1.102。当然,我们必须保证,外部用户能够知道我们的FTP服务器使用非标准的端口,而大多数的FTP客户机都提供这一能力。显然公司可以使用各种不同的端口转换方法来提供服务,即使公司只有一个全局可路由的IP地址。这些方法使Cisco NAT的功能更加强大。