.【故障现象】EG2000K与ELOG对接后,ELOG无法收到网监报文。

.【故障拓扑】

拓扑说明:EG2000K出口连接的是电信线路,与总部防火墙主设备电信出口建立IPSEC,如果电信线路down了,则切换到与防火墙备设备联通出口建立连接。EG网监日志通过图中蓝色实线IPSEC的路径去往总部ELOG。红色虚线为IPSEC链接。

三、【故障分析】

1. 检查EG和ELOG系统时间,确认EG和ELOG连通性

检查ELOG时间配置

2检查EG端的网监的配置

非经对接网点网关EG的的配置如下:其中的示例中的1.1.1.1需根据实际情况,修改为分部的elog地址,其中的2.2.2.2需修改为EG设备的环回口地址(只能配置为IP,不能配置为接口)

police-log set url http://1.1.1.1:8080/elog/ source  2.2.2.2 (2.2.2.2 为EG换回口地址)

police-log auth-type mobile 移动用户认证类型

police-log enable  开启网监日志开关

 

content-policy _AUDIT_DEFAULT 开启默认审计功能

 vid-rule audit-default-enable 虚拟身份ID开启

 mail-rule audit-default-enable 邮件审计开启

 im-rule audit-default-enable  IM聊天记录审计开启

 web-bbs-rule audit-default-enable 网站论坛审计

 web-search-rule audit-default-enable 搜索引擎审计开启

 web-mail-rule audit-default-enable  网页邮箱审计开启

 url-rule audit-default-enable URL审计开启

 

nat-log police  网监NAT日志

content-audit write-plog url   URL日志

content-audit write-plog web-search 搜索引擎日志

content-audit write-plog web-bbs 日志网站日志

content-audit write-plog web-mail 网页邮箱日志

content-audit write-plog mail  邮件审计日志

content-audit write-plog im IM聊天日志

content-audit write-plog vid  虚拟身份ID日志

 3.检查elog配置是否有误

备注:特别设备mac有没有配置错误了

 EG上面通过show member方式获取到MAC地址,ELOG添加的设备MAC地址必须与这个相同。如下图:

 

 必须添加

3. show police-log status 下图表示发送成功

4 抓包验证

抓包验证是否有发送出报文

通过http.request full+url containhttp://172.27.68.4:8080/elog/service/fileUpload(172.27.68.4:8080为ELOG的地址)来过滤EG是否有发送出去报文,如果有内容说明出口有发送出去。

通过抓包已经能够证明设备已经将报文发出去,因此怀疑运营商问题,结合历史处理经验,怀疑是运营商的MTU问题导致。

因此做以下测试:

对EG2000K的接口的MTU做如下测试:

1)   MTU设置为1380,文件一直发送失败

2)   MTU修改为1500,文件发送成功

3)   MTU改为1380,再次发送失败
分析如下:
接口 MTU是1500时,协议栈发出的报文会超过1380,ipsec模块会先分成2个小报文后再封装发出去,这样中间链路收到的报文是小报文,不会触发分片,所以没有问题;
接口的MTU是1380时,协议栈发出的报文不会超过1380,ipsec模块就不会分成2个报文,然后隧道封装后,就变成一个大报文,运营商链路对于这样的大报文处理有问题导致。
综上:协议栈发出报文的大小需要经过接口MTU检查后,还需要通过IPSEC模块的MTU检查,如果接口的MTU和IPSEC的MTU 进行联动后(IPSEC的MTU小于接口MTU),协议栈发出的报文到达IPSEC模块后匹配ipsec的mtu后会变成2个小的报文,就不会被运营商丢弃,故障就不会出现。

四、【故障原因】

1. 首先这个运用商链路肯定是会丢分片报文,不管是EG分片还是中间其他设备分片。

2. EG2000K的接口设置了MTU为 1380,协议栈发出的报文在IPSEC模块中不会进行分片且在隧道封装后,报文变大。

3. 由于EG的ipsec的mtu设置未与接口mtu联动。(因为如果版本优化,进行联动后,IPSEC会对报文进行分片。)
临时规避方案:
在运营商链路会丢弃IP分片报文的场景下,EG需要使隧道需要先内部分片再封装IP报文、并且保证封装后IP头部不会再分片 将接口的MTU值改大为1500

接口下:IP MTU 1500

彻底解决方案:升级到11.1(6)B27P1以上的版本可以解决