需求:router做端口映射,OutPc及Pc用户使用out接口的IP访问WebServer.。
interface eth 0/0
description out_interface
ip add 202.96.127.1 255.255.255.252
nat outbound 2000
nat server protocol tcp global 202.96.127.1 www inside 192.168.1.100 80 \\端口映射
#
interface eth 0/1
description in_interface
ip add 192.168.1.1 255.255.255.0
#
acl number 2000
description Lan_interface_outbound
rule 0 permit
#
OutPc用户访问WebServer,完成上述端口映射后便可实现,但此时Pc用户是无法以公网IP地址访问webserver的。原因如下:
一、在outpc用户访问webserver时,IP地址的转换经历如下:
1、outpc发出请求的IP格式是以“outpc用户IP"为源IP、以“Out接口IP”为目标IP,目标端口80。
2、router收到outpc的请求后,因为有nat server的存在,因此将IP格式改为以“outpc用户IP"为源IP、以“webserver的IP”为目标IP后,转发给webserver。
3、webserver收到请求后,以“webserver的IP"为源IP、以“outpc用户IP”为目标IP的格式回复请求。
4、router收到webserver发送的回复报文后,将IP格式改为以“Out接口的IP"为源IP、以“outpc用户IP”为目标地址后,发送给outpc用户。
5、至此,整个请求访问过程顺利完成。
二、pc用户以out接口ip请求访问webserver时,IP地址的转换过程如下:
1、pc用户发出请求的IP格式以"pc的IP"为源IP地址、以“Out接口IP”为目标IP的请求报。
2、路由器收到后,发现"out接口IP'直连OUT接口,因此将该包文发给OUT接口。
3、OUT接口上有NAT server的命令,也因此将PC用户的请求报文IP格式改为以"pc的IP"为源IP地址、以“webserver的IP”为目标IP的请求报后发给webserver
4、webserver收到请求,发现请求报文的源IP地址是pc用户的IP地址,回复的报文IP格式为以"webserver的IP"为源IP地址、以"pc的IP"为目标IP发给pc用户。
5、pc用户收到回复报文后,发觉源IP地址不是out接口的IP地址(pc用户请求的目标IP地址是out接口IP地址,回复的地址也应是out接口IP地址),因此将该报文丢掉。。
6、到此,pc用户以out接口ip请求webserver访问失败。
在IN接口启用nat outbound功能,匹配的ACL为高级ACL,ACL的目标地址直接是webserver的IP地址;启用nat server 功能,将OUT接口的IP地址直接映射给webserver服务器。
interface eth 0/1
description in_interface
ip add 192.168.1.1 255.255.255.0
nat outbound 3000
nat server protocol tcp global 202.96.127.1 www inside 192.168.1.100 80 \\端口映射
#
acl number 3000
description Lan_to_server
rule 0 permit ip source 192.168.1.0 0.0.0.255 destination 192.168.1.100 0
在IN接口上启用nat功能及映射后,pc用户pc用户以out接口ip请求webserver访问过程如下:
1、pc用户发出请求的IP格式以"pc的IP"为源IP地址、以“Out接口IP”为目标IP的请求报。
2、路由器IN接口收到请求报文后,由于IN接口上启用了nat outbound和nat server功能、而匹配ACL 3000,因此将pc用户发出请求的IP格式改为以"IN接口IP地址"为源IP地址、以"webserver的IP”为目标IP后,发给webserver。
3、webserver收到后,回复报文的IP格式是以"webserver的IP”为源IP地址、以"IN接口IP地址"为目标IP。
4、路由器收到webserver回发的回复报文后,根据nat会话表,将报文的IP格式改为以"OUT接口IP地址"为源IP地址、"pc的IP"为目标IP后发给pc用户。
5、pc用户收到后,发觉回复的IP地址和请求的目标IP一致,因此会话成功。