资源描述
文档名称
文档密级
USG防火墙故障定位主要命令汇总
故障定位
在现网出现故障时,如何排除和定位防火墙是否转发报文或者丢弃报文,可采用以下方法按顺序进行,总的原则就是先确定是否是防火墙丢包,然后再定位报文是否到达防火墙。
1. 查看会话
使用场合
针对可以建会话的报文,可以通过查看会话是否创建以及会话详细信息来确定报文是否正常通过防火墙。
命令介绍
display firewall session table [ verbose ] [ source { inside ip-address | global ip-address } ] [ destination { inside ip-address | global ip-address } ] [ source-vpn-instance { vpn-instance-name | public } ] [ dest-vpn-instance { vpn-instance-name | public } ] [ applicationprotocol–name1 ] [ protocolprotocol–name2 ] [ nat ][ source-portsource-port ] [ destination-portdestination-port ] [ long-link ]
使用方法
首先确定该五元组是否建会话,对于TCP/UDP/ICMP(ICMP只有echo request和echo reply建会话)/GRE/ESP/AH的报文防火墙会建会话,其它比如SCTP/OSPF/VRRP等报文防火墙不建会话。如果会话已经建立,并且一直有后续报文命中刷新(有报文命中时,Left会被刷新成与TTL相同的值),基本可以排除防火墙的问题。如果没有对应的五元组会话或者对于不建会话的报文,继续后续排查方法。
Global:表示在做NAT时转换后的IP;
Inside:表示在做NAT时转换前的IP。对于现网不做NAT的场景,选择inside和global参数都一样。
使用示例
<USG> display firewall session table verbose destination inside 10.110.40.76
Current total sessions : 1
sqlnet VPN:public --> public
Zone: untrust--> trust TTL: 11:06:40 Left: 10:57:00
Interface: GigabitEthernet9/0/0 NextHop: 0.0.0.0 MAC: 00-00-00-00-00-00
<--packets:2 bytes:88 -->packets:3 bytes:410
10.127.67.34:49161-->10.110.40.76:1521
上面显示目的地址为10.110.40.76的报文的会话,该会话为sqlnet数据库连接会话。关键信息解释如下所示:
Zone: untrust -> trust 源域为untrust,目的域为trust(源域 -> 目的域)
TTL: 11:06:40 Left: 10:57:00 TTL表示会话的老化时间,Left表示还剩余多少时间该会话老化
Interface: GigabitEthernet9/0/0 正向会话出接口
<--packets:2 bytes:88 反向会话的报文数和字节数
-->packets:3 bytes:410 正向会话的报文数和字节数
10.127.67.34:49161-->10.110.40.76:1521 -->表示首包方向
使用限制
对于TCP/UDP/ICMP/GRE/ESP/AH的报文防火墙会建会话,其它比如SCTP/OSPF/VRRP报文,无法使用该方法排查。
2. 检查接口状态
使用场合
在报文不通时,可以先检查接口状态,排除由于接口down而导致报文不通的情况。
命令介绍
display interface brief
使用方法
查看接口物理层和协议层状态,正常情况下接口物理层(Physical)和协议层(Protocol)都是up,如果有down现象,检查连线、光纤、光模块、网线是否有问题,更换光纤、光模块、网线尝试。
使用示例
<USG> display interface brief
PHY: Physical
*down: administratively down
(s): spoofing
InUti/OutUti: input utility/output utility
Interface PHY Protocol InUti OutUti inErrors outErrors
Eth-Trunk0 up up 0.01% 0.01% 0 0
GigabitEthernet0/0/1 up up 0.06% 0.02% 0 0
GigabitEthernet0/0/2 up up 0.06% 0.02% 0 0
GigabitEthernet0/0/3 down down 0% 0% 0 0
GigabitEthernet0/0/4 down down 0% 0% 0 0
GigabitEthernet0/0/0 up up 0.01% 0.01% 0 0
GigabitEthernet0/0/5 down down 0% 0% 0 0
GigabitEthernet0/0/6 down down 0% 0% 0 0
GigabitEthernet0/0/7 down down 0% 0% 0 0
GigabitEthernet0/0/8 down down 0% 0% 0 0
GigabitEthernet1/0/0 down down 0% 0% 0 0
GigabitEthernet1/0/1 down down 0% 0% 0 0
GigabitEthernet1/0/2 down down 0% 0% 0 0
GigabitEthernet1/0/3 down down 0% 0% 0 0
GigabitEthernet1/0/4 down down 0% 0% 0 0
GigabitEthernet1/0/5 down down 0% 0% 0 0
GigabitEthernet1/0/6 down down 0% 0% 0 0
GigabitEthernet1/0/7 down down 0% 0% 0 0
GigabitEthernet8/0/0 up up 0.01% 0.07% 23 0
GigabitEthernet8/0/1 up up 0.07% 0.01% 0 0
GigabitEthernet9/0/0 up up 0.01% 0.02% 0 0
GigabitEthernet9/0/1 up up 0.02% 0.01% 0 0
NULL0 up up(s) 0% 0% 0 0
Vlanif1557 up up -- -- 0 116
使用限制
无
3. 检查接口统计信息
使用场合
在发现报文传输有性能下降或者ping有丢包时,可以检查接口统计信息,确认接口是否有丢包。
命令介绍
display interface [ interface-type [interface-number] ]
使用方法
1、查看接口下是否有error,确认FCS / collisions有无增长,如果有增长,则需要确认接口双工模式和速率是否与对端设备一致。
Align Errors:对齐错误,即传送的包中存在不完整的字节,包括前导码和帧间隙。
Collision Errors:半双工时,发生碰撞的错误包。
runts:超短包,长度小于64字节但CRC值正确的数据包。
giants:超长包,长度大于1618(如果带vlan是1622)字节的CRC值正确的数据包。
FCS/CRC (Input):长度为64至1618字节之间但CRC值不正确的数据包。(路由器中长度为64至1618字节之间的Alignment、Dribble错包也在此类中统计)。
Error(Input):PHY层发现的错误包。
Overrun(Input):接收队列满而丢弃的包。
Late Collision :半双工时,发送64字节后发生碰撞的错误包。
Defferred :包被滞后发送错误。
Lost Carrier : 载波扩展错误。
No Carrier : 无载波错误。
2、查看接口出入方向统计是否正在增加,如果有增加则说明该接口链路正常。
3、查看接口协商的情况,包括协商速率,全双工/半双工等。
4、关注接口五分钟流量统计与正常时的差别,关注业务经过设备的两个方向出入接口流量是否差不多。
使用示例
<USG> display interface GigabitEthernet 1/0/0
GigabitEthernet1/0/0 current state : UP
Line protocol current state : UP
GigabitEthernet1/0/0 current firewall zone : trust
Description : USG Series, GigabitEthernet1/0/0 Interface
The Maximum Transmit Unit is 1500 bytes, Hold timer is 10(sec)
Internet Address is 11.110.30.17/24
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 0018-82fd-9d3b
Media type is twisted pair, loopback not set, promiscuous mode not set
1000Mb/s-speed mode, Full-duplex mode, link type is auto negotiation
flow control is disable
Output queue : (Urgent queue : Size/Length/Discards) 0/50/0
Output queue : (Protocol queue : Size/Length/Discards) 0/1000/0
Output queue : (FIFO queuing : Size/Length/Discards) 0/75/0
Last 5 minutes input rate 1083 bytes/sec, 11 packets/sec
Last 5 minutes output rate 1019 bytes/sec, 10 packets/sec
Input: 15901905 packets, 3060644220 bytes
180 broadcasts, 19745 multicasts
5920 errors, 0 runts, 0 giants, 0 throttles,
0 CRC, 0 frames, 5920 overruns, 0 align errors
Output: 10641815 packets, 1764395150 bytes
200 broadcasts, 0 multicasts
0 errors, 0 underruns, 0 collisions, 0 late collisions,
0 deferred, 0 lost carrier, 0 no carrier
如上显示,Input方向出现了5920个overruns,很有可能之前出现了瞬间很大的流量,导致overruns丢包。
使用限制
无
4. 查看防火墙系统统计
使用场合
通过查看防火墙系统统计,可以得到各种报文的统计值,以及各种丢包情况等信息。
命令介绍
display firewall statistic system
使用方法
1、查看当前系统总会话数,TcpSession、UDPSession、ICMP session这三项统计值的和。
2、查看TCP半连接数,CurHalfCon统计值就是半连接数,通过该值可以确认半连接数是否过多,是否受到syn-flood攻击。
3、查看防火墙转发TCP业务是否丢包,使用RcvTCPpkts、RcvTCPbytes、PassTCPpkts、PassTCPOcts统计值,正常情况下Pass和Rcv不会相差很多,其他协议查看方式类似。
4、查看是否有会话创建失败(SessFailDisPkts)统计。
5、查看各种丢包统计是否与故障业务相关,比如包过滤丢包、分片过多丢包等原因。
使用示例
无
使用限制
无
5. 查看设备的运行状况
使用场合
在发现设备的告警灯亮时或者其他如接口无法UP等异常情况时,可以查看设备的运行状况,确认主控板、接口卡等是否运行正常。如果有器件显示故障,需尽快分析。
命令介绍
display device
使用方法
在任意视图下执行命令display device。
使用示例
<USG> display device
Secoway USG5560's Device status:
Slot # Type Online Status
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
0 RPU Present Normal
1 E8GF Present Normal
5 SACC Present Normal
8 E2XSF Present Normal
9 E2XSF Present Normal
10 PWR Present Normal
11 PWR Present Normal
13 FAN Present Normal
使用限制
无
6. 查看告警信息
使用场合
在发现设备的告警灯亮时或者在日志中发现如风扇灯硬件相关信息时,可以查看告警信息来确定问题。
命令介绍
display alarm urgent
使用方法
在任意视图下执行命令display alarm urgent。
使用示例
<USG> display alarm urgent
Alarm ID Slot Date Time Para1 Para2
4 0 12/01/29 08:01:24 0 255
4 0 12/01/20 14:55:46 0 255
这里显示存在两个告警信息,告警ID是4,即电源异常,原因是设备只有一个电源上电。详细告警ID的解释可以查看产品手册。
使用限制
无
7. 查看内存使用率
使用场合
当防火墙承载的业务出现时延大、丢包或者不稳定时,可以查看一下内存使用率、smbuf使用率,确认是否是内存/smbuf消耗过多导致。内存/smbuf占有率不应过高,超过70%时需要联系办事处协助分析。
命令介绍
display health
display memory smbuf-usage
使用方法
1、 在系统视图下执行命令display health。
2、 在隐藏视图下执行命令display memory smbuf-usage。
使用示例
[USG] display health
Slot CPU Usage Memory Usage (Total)
-----------------------------------------------------
0 MPU(Master) 4% 30% 4096MB
[USG5300-hidecmd]display memory smbuf-usage
==========2K slice smbuf pool status:==========
Total Slice Number : 8192(usage percent 24)
Allocated Slice Number: 2046
Free Slice Number : 6146
Alloc Fail Number : 0
<Below Is Cache Info>
Sets Num In Cache : 64
Sets Num In Full List : 355
Sets Num In Empty List: 228
Element Num Per-Set : 16
==========8K slice smbuf pool status:==========
Total Slice Number : 2048(usage percent 0)
Allocated Slice Number: 0
Free Slice Number : 2048
Alloc Fail Number : 0
<Below Is Cache Info>
Sets Num In Cache : 64
Sets Num In Full List : 255
Sets Num In Empty List: 129
Element Num Per-Set : 8
==========Gmac smbuf pool status:==========
Total gmac smbuf: 2048
Allocated gmac smbuf: 3
Smbuf gmac usage: 0%
==========Spi4 smbuf pool status:==========
Total spi4-0 smbuf: 23039
Allocated spi4-0 smbuf: 128
Smbuf spi4-0 usage: 0%
Total spi4-1 smbuf: 23039
Allocated spi4-1 smbuf: 128
Smbuf spi4-1 usage: 0%
使用限制
无
8. 查看CPU使用率
使用场合
CPU占有率应正常,与当前开展的业务类型和转发流量相符。超过60%应分析当时的业务流量。转发面CPU使用率高需要分析业务流量是否太大导致,管理面CPU高需要分析是否到防火墙自身流量太多导致。
命令介绍
display cpu-usage
使用方法
在系统视图下执行命令display cpu-usage。
使用示例
在系统视图下执行命令display cpu-usage。
<USG> display cpu-usage
===== Current CPU usage info =====
Dataplane CPU Average Usage : 0(5 Seconds)
Mgmtplane CPU Average Usage : 24(60 Seconds)
使用限制
无
9. 检查防火墙双机热备配置和状态
使用场合
双机热备组网发生故障时,需要检查VRRP和HRP的状态。
命令介绍
display hrp state
display vrrp
使用方法
对于双机热备组网,检查两台防火墙VRRP、HRP配置和状态是否正常,使用display hrp state、display vrrp检查两台防火墙主备状态。对于两台设备相对应的VRRP备份组,不能出现双主状态。如果状态不对,请重点检查心跳链接是否正常,调整并检查故障是否消除(再查看会话表和丢包统计)。
使用示例
主设备上:
HRP_M<USG> display hrp state
The firewall's config state is: MASTER
Current state of virtual routers configured as master:
Eth-Trunk0 vrid 1 : master
(GigabitEthernet0/0/1) : up
(GigabitEthernet0/0/2) : up
HRP_M<USG> display vrrp
Eth-Trunk0 | Virtual Router 1
VRRP Group : Master
state : Master
Virtual IP : 192.168.1.3
Virtual MAC : 0000-5e00-0101
Primary IP : 192.168.1.2
PriorityRun : 120
PriorityConfig : 100
MasterPriority : 120
Preempt : YES Delay Time : 0
Timer : 1
Auth Type : NONE
Check TTL : YES
备设备上:
HRP_S<USG> display hrp state
The firewall's config state is: SLAVE
Current state of virtual routers configured as slave:
Eth-Trunk0 vrid 1 : slave
(GigabitEthernet0/0/1) : up
(GigabitEthernet0/0/2) : up
HRP_S<USG> display vrrp
Eth-Trunk0 | Virtual Router 1
VRRP Group : Slave
state : Backup
Virtual IP : 192.168.1.3
Virtual MAC : 0000-5e00-0101
Primary IP : 192.168.1.1
PriorityRun : 120
PriorityConfig : 100
MasterPriority : 120
Preempt : YES Delay Time : 0
Timer : 1
Auth Type : NONE
Check TTL : YES
使用限制
无
10. 检查各器件温度信息
使用场合
在发生硬件故障时,可以查看各器件温度信息,判断是否是温度的异常引起的问题。
命令介绍
display temperature slot
使用方法
在任意视图下执行命令display temperature slot X
使用示例
HRP_M<USG>display temperature slot 1
Unit:C
Address Channel Status Minor Major Fatal Adjust_speed Temp
TMin Tmax
--------------------------------------------------------------------
255 0 NORMAL 62 77 88 0 0 31
255 0 NORMAL 62 77 88 0 0 31 ------------------------------------------------------------------
使用限制
无
11. 查看日志
使用场合
在发生故障以后,可以查看日志,查找之前发生过的和当前故障相关的信息,从而定位故障原因。从日志中能看到,接口UP/DOWN、主备切换、策略匹配等信息。
命令介绍
d
展开阅读全文