防火墙型号:网神 SecGate3600千兆防火墙
1、拓扑
图 1 网络拓扑
2、网络功能描述
1)网神防火墙工作在混合模式:下级单位和内部网络通信通过防火墙,防火墙采用透明模式传输模式;内部网络访问外网(Internet)防火墙采用路由模式。
2)核心网络设备和防火墙之间的通信是通过管理IP进行路由传输。(即:核心网络设备外网访问的下一跳为172.16.1.1)
3)内部WEB服务器192.168.1.12,提供外部访问的域名为http://www.xxx.com (IP:222.x.x.y)
3、客户要求
内网用户通过域名或外网IP直接访问内部WEB服务器;
4、原先防火墙配置
图 2 端口映射规则
经过以上配置后,外网用户能通过域名和外网IP正常访问内部服务器。但是,内部用户无法通过域名和外网IP访问内部服务器。
分析:内网用户访问数据流走向
图 3 数据流走向
经过网上查找关于这方面的资料和文件,两经过自己抓包分析,明确了数据流走向为:
1)当用户在网址栏中输入 “http://www.xxx.com”时,首先通过DNS域名解析到对应的公网IP地址为222.x.x.y。
2)用户数据流按照上图中的绿色箭头进行传输:内部主机—》网络传输设备—》核心网关设备—》网神防火墙。当数据到达网神防火墙后,根据上边端口映射规则,解析到内部服务器的IP地址为192.168.1.12。匹配规则之后数据在进行传输:网神防火墙—》核心网关设备—》内网交换设备—》服务器。
3)因为原地址在防火墙上未进行转换,IP包中的原IP地址仍为192.168.1.13。服务器经过分析发现该地址和自己属于同一个网段,故服务器返回数据包的目的IP地址为192.168.1.13。根据IP报文传输的原则,数据包不在传给防火墙,数据包走向如蓝色箭头所示:服务器—》网络传输设备—》核心网关设备—》网络传输设备—》内部主机。
4)由于HTTP访问是建立在TCP协议基础之上的,经过上边的数据传输之后TCP连接无法建立。
解决方法
经过分析内部用户在通过域名和外部IP地址进行访问的时候,必须进行IP地址转换(前提内部网段的网关不在防火墙上)。
尝试配置:
图 4 错误配置
经过以上尝试配置之后,内网用户仍然无法访问。
反复测试了几次,但是都没有成功。
最后,向网神售后客服打了一个电话,进行了相关咨询,网神售后工程师进行了如下配置:
图 5 正确配置
把最初配置的端口映射规则中的“源地址转换为”从‘不转换’改成网神防火墙的管理IP‘172.16.1.1’。改完之后,内外网都可以通过域名和外网IP进行WEB服务器访问。