华为防火墙会话表

会话表是设备转发报文的关键表项。所以当出现业务故障时,通常可以通过查看会话表信息,大致定位发生故障的模块或阶段。

当某个业务发生问题,例如流量不通或者断断续续时,通过查看会话表可以得出以下信息:

  • 如果该项业务已经建立了正确的会话表项,并且根据安全策略允许了该业务的转发。如果业务此时仍然不通,有以下几种可能原因:
    • 出接口发生了硬件故障(例如接口卡损坏,网线接触不良等)
    • 下行设备丢弃了相关报文
    • 路由配置有错误
    • 出接口发送的报文有错误
    • 其他业务层面的丢包(例如带宽管理、攻击防范功能导致的丢包)
    • 其他配置方面的问题
  • 如果该项业务没有建立会话表项,有以下几种可能原因:
    • 由于上游设备的问题或者是路由配置的问题,导致报文没有正确转发到上
    • 设备上配置的安全策略不允许该报文的转发,例如安全策略动作被配置为“拒绝”,源IP被加入了黑名单等
    • 入接口发生了硬件故障(例如接口卡损坏,网线接触不良等)
    • 攻击防范方面,除黑名单之外,可能还有其他功能导致丢包
    • 带宽管理功能可以限制会话数,当会话数超过阈值时,导致会话无法建立而直接丢包
    • 其他配置方面的问题

通过Web方式查看会话表的方法如下:

  1. 选择“监控 > 会话表”。
  2. 显示“会话表”界面,查看会话表信息。
  3. 单击“高级查询”,选择查询条件,可以筛选查看符合条件的会话表项。

项目

描述

虚拟系统

查看指定虚拟系统的会话表项。

协议

查看指定协议的会话表项。

应用

查看指定应用的会话表项。

源安全区域/目的安全区域

查看指定源安全区域/目的安全区域的会话表项。

源地址/目的地址

查看源地址/目的地址为指定地址或地址范围的会话表项。

NAT源地址/NAT目的地址

查看NAT转换后的源地址/目的地址为指定地址或地址范围的会话表项。

源端口/目的端口

查看源端口/目的端口为指定端口的会话表项。

NAT源端口/NAT目的端口

查看NAT转换后的源端口/目的端口为指定端口的会话表项。

安全策略

查看匹配指定安全策略的会话表项。

用户名

查看指定用户的会话表项。

最近一段时间创建的会话

查看指定时间范围内创建的会话表项。

比如,配置为5分钟,表示查看最近5分钟内创建的会话表项。说明:

此处只能查看当前依旧存活的会话信息,假如某条会话创建以后,很快又被删除或是老化掉了,则该条会话信息将不会在此显示。

出接口

查看指定出接口的会话表项。

报文数

查看正向报文数、反向报文数或双向报文数大于等于、小于等于或等于指定值的会话表项。

正向是指与会话表项中源安全区域到目的安全区域相同的方向。同理,反向是指与会话表项中源安全区域到目的安全区域相反的方向。

说明:

仅USG6000和NGFW Module支持按双向报文数筛选。

  • 对于USG9500,当配置了按正向报文数或反向报文数筛选查询会话表项后,在查看某条会话表的详细信息时,可能会出现当前会话已老化无法查看的情况。
  • 对于NAT64会话,基于源/目的地址或端口查询会话时,只能基于NAT转换前的地址/端口查询,不能基于NAT转换后的地址/端口查询

会话表在某一时间段的显示如下:

图5-4 会话表在某一时间段的显示

单击“详细信息”对应的,可以查看会话表的详细信息。具体字段含义如下:

项目

描述

创建时间

会话表创建的时间。

协议

会话表的协议类型。

源虚拟系统/目的虚拟系统

会话表的源虚拟系统和目的虚拟系统。

源安全区域/目的安全区域

会话表的源安全区域/目的安全区域。

源地址/目的地址

会话表的源IP地址/目的IP地址。

NAT源地址/NAT目的地址

会话进行NAT转换后的源地址/目的地址。

源端口/目的端口

会话表的源端口/目的端口。

NAT源端口/NAT目的端口

会话进行NAT转换后的源端口/目的端口。

正向报文数(包)/正向字节数(B)

会话正方向的报文数(单位为包)和字节数(单位为Byte)。

反向报文数(包)/反向字节数(B)

会话反方向的报文数(单位为包)和字节数(单位为Byte)。

出接口/出接口MAC地址

会话的出接口/出接口的MAC地址。

下一跳

会话的下一跳IP地址。

安全策略

会话命中的安全策略。

应用

会话表的应用类型。

用户名

会话表的用户名。

会话超时时间

会话表的老化时间。

会话超时剩余时间

会话表剩余的存活时间。

通过命令行方式查看会话表的方法如下:

  1. 执行命令system-view,进入系统视图。
  2. 执行以下命令查看IPv4会话表信息。
    • display firewall session table [ verbose ] [ vsys vsys-name ] [ source-zone source-zone | destination-zone destination-zone | { default-policy | policy policy-name } | source-cpe start-ipv6-address [ to end-ipv6-address ] | source { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | destination-cpe start-ipv6-address [ to end-ipv6-address ] | destination { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | slot slot-id cpu cpu-id | protocol { id | tcp | udp | sctp | icmp | ah | esp | gre } | application application-name | source-port { inside port-number | global port-number } | destination-port { inside port-number | global port-number } | interface { interface-name | interface-type interface-number } | service service-type | vlan vlan-id | created-in time | long-link | user user-name | { local | remote } | uniderection ] *
    • display firewall session tableverbose [ vsys vsys-name ] [ source-zone source-zone | destination-zone destination-zone | { default-policy | policy policy-name } | source-cpe start-ipv6-address [ to end-ipv6-address ] | source { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | destination-cpestart-ipv6-address [ to end-ipv6-address ] | destination { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | slot slot-id cpucpu-id | protocol { id | tcp | udp | sctp | icmp | ah | esp | gre } | application application-name | source-port { inside port-number | global port-number } | destination-port { inside port-number | global port-number } | interface { interface-name | interface-type interface-number } | service service-type | vlan vlan-id | created-in time | long-link | user user-name | { local | remote } | uniderection | { reverse-packet | forward-packet | total-packet } { over | below | equal } packet-value ] *
    • display firewall session table [ verbose ] all-systems [ source-cpe start-ipv6-address [ to end-ipv6-address ] | source { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | destination-cpe start-ipv6-address [ to end-ipv6-address ] | destination { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | slot slot-id cpu cpu-id | protocol { id | tcp | udp | sctp | icmp | ah | esp | gre } | source-port { inside port-number | global port-number } | destination-port { inside port-number | global port-number } | interface { interface-name | interface-type interface-number } | serviceservice-type | vlanvlan-id | created-intime | long-link | { local | remote } ] *
    • display firewall session tableverboseall-systems [ source-cpe start-ipv6-address [ to end-ipv6-address ] | source { inside start-ip-address [ toend-ip-address ] | global start-ip-address [ to end-ip-address ] } | destination-cpe start-ipv6-address [ to end-ipv6-address ] | destination { inside start-ip-address [ to end-ip-address ] | global start-ip-address [ to end-ip-address ] } | slot slot-id cpucpu-id | protocol { id | tcp | udp | sctp | icmp | ah | esp | gre } | source-port { inside port-number | global port-number } | destination-port { inside port-number | global port-number } | interface { interface-name | interface-type interface-number } | service service-type | vlan vlan-id | created-in time | long-link | { local | remote } | { reverse-packet | forward-packet | total-packet } { over | below | equal } packet-value ] *
    • display firewall session table [ verbose ] slb [ destination { vip start-vip-address [ to end-vip-address ] | rip start-rip-address [ to end-rip-address ] } | source start-source-address [ to end-source-address ] | destination-port { vport vport-number | rport rport-number } | source-port source-port-number | slot slot-idcpucpu-id ] *
    • display firewall session table [ verbose ] session-id session-id

    在双机热备的组网环境中,可以通过选择localremote参数,按需要查看本端设备或对端设备的会话表信息。

    由于通常情况下设备上的会话表数目很大,逐条查看非常困难。所以该条命令中提供多个参数可以选择需要查看的会话表的类型,有效利用这些参数可以减少查看会话表时显示的条目,缩短定位问题的时间。

    对于NAT64会话,基于源/目的地址或端口查询会话时,只能基于NAT转换前的地址/端口查询,不能基于NAT转换后的地址/端口查询。

    如果NAT转换前为IPv4地址,则使用display firewall session table [ verbose ]命令结合以下一个或多个参数组合查询:source inside start-ip-address [ to end-ip-address ]、destination global start-ip-address [ to end-ip-address ]、source-port inside port-numberdestination-port global port-number

    在不使用verbose的情况下,会显示简要会话表项,格式如下:

    Current Total Sessions : NUM
    TYPE VPN:SRCVPN --> DSTVPNSRCIP --> DSTIP

    在使用verbose的情况下,会显示详细会话表项,以USG6000E/USG6000为例,格式如下:

    Current Total Sessions : NUM
    TYPE VPN:SRCVPN --> DSTVPN ID: ID-NUMBER
    Zone: SRCZONE--> DSTZONE Remote TTL: TOTALTIME Left: LEFTTIME
    Interface: OUTINTERFACE Nexthop: IP-ADDRESS MAC: MACADDRESS    
    <-- packets:NUMBER bytes:BYTES   --> packets:NUMBER bytes:BYTES
    SRCIP --> DSTIP PolicyName: POLICYNAME

    各个参数含义如表1所示。其中斜体参数会根据实际情况显示不同内容。

    表5-6 会话表项参数含义

    参数

    含义

    TYPE

    该会话的协议类型,可能出现的情况与display firewall session table命令中的protocol参数的取值范围相同。

    VPN:SRCVPN --> DSTVPN

    该会话的源VPN实例名称和目的VPN实例名称。

    IDID-NUMBER

    该会话的ID号。

    ZoneSRCZONE--> DSTZONE

    该会话的源安全区域名称和目的安全区域名称。

    Remote

    双机热备场景下,当该会话是由主机备份过来的会话,会显示此标记。

    • 双机热备场景下,Remote说明当前会话是备份会话,该会话是从对端设备备份过来的。
    • 对于USG9500,CPU备份场景下,Remote说明该会话是从主CPU上备份过来的。

    TTLTOTALTIME

    会话表项总的存活时间。

    LeftLEFTTIME

    会话表项剩余的存活时间。

    InterfaceOUTINTERFACE

    报文出接口的接口号。

    NexthopIP-ADDRESS

    报文下一跳的IP地址。

    MACMACADDRESS

    报文下一跳的MAC地址。

    <-- packets:NUMBERbytes:BYTES

    反向报文数统计以及字节数统计。

    --> packets:NUMBER bytes:BYTES

    正向报文数统计以及字节数统计。正常情况下应该与收到的报文数以及字节数相同,如果变少,说明存在丢包的情况。

    SRCIP --> DSTIP

    该会话的源IP地址、源端口号、目的IP地址、目的端口号。

    地址的格式是x.x.x.x:portx[y.y.y.y:porty],其中portx和porty分别是源和目的端口号。括号内为NAT转换后地址。如果没有进行NAT转换,则不显示括号内的内容。

    PolicyNamePOLICYNAME

    报文匹配的策略名称。

    TCP State:TCPState

    TCP连接状态,仅TCP会话显示此字段。

    • connecting:表示设备收到SYN首包,TCP连接正在建立。
    • established:表示设备收到ACK包,TCP连接已经建立完成。
    • fin-1:表示设备收到第一个FIN包,TCP连接正在断开。
    • close:表示设备收到第二个FIN包,TCP连接已经断开。
  3. 查看IPv6会话表信息。
    • display firewall ipv6 session table [ verbose ] [ vsysvsys ] [ source-zone source-zone | destination-zone destination-zone| { default-policy | policy policy-name } | source start-ipv6-address [ to end-ipv6-address ] | destination start-ipv6-address [ to end-ipv6-address ] | application application-type | protocol { id | tcp | udp | icmp | ah | esp | gre } | service service-type | source-port port-number | destination-port port-number | interface { interface-name | interface-type interface-number } | vlan vlan-id | created-in time | long-link | user user-name | { local | remote } | slot slot-idcpucpu-id ] *
    • display firewall ipv6 session tableverbose [ vsysvsys ] [ source-zone source-zone | destination-zone destination-zone| { default-policy | policy policy-name } | source start-ipv6-address [ to end-ipv6-address ] | destination start-ipv6-address [ to end-ipv6-address ] | application application-type | protocol { id | tcp | udp | icmp | ah | esp | gre } | service service-type | source-port port-number | destination-port port-number | interface { interface-name | interface-type interface-number } | vlan vlan-id | created-in time | long-link | user user-name | { local | remote } | slot slot-idcpucpu-id | { reverse-packet | forward-packet | total-packet } { over | below | equal } packet-value ] *
    • display firewall ipv6 session table [ verbose ] all-systems [ source start-ipv6-address [ to end-ipv6-address ] | destination start-ipv6-address [ to end-ipv6-address ] | protocol { id | tcp | udp | icmp | ah | esp | gre } | service service-type | source-port port-number | destination-port port-number | interface { interface-name | interface-type interface-number } | vlan vlan-id | created-in time | long-link | { local | remote } | slot slot-id cpucpu-id ] *
    • display firewall ipv6 session tableverboseall-systems [ source start-ipv6-address [ to end-ipv6-address ] | destination start-ipv6-address [ to end-ipv6-address ] | protocol { id | tcp | udp | icmp | ah | esp | gre } | service service-type | source-port port-number | destination-port port-number | interface { interface-name | interface-type interface-number } | vlan vlan-id | created-in time | long-link | { local | remote } | slot slot-idcpucpu-id | { reverse-packet | forward-packet | total-packet } { over | below | equal } packet-value ] *
    • display firewall ipv6 session table [ verbose ] session-id session-id

      对于NAT64会话,基于源/目的地址或端口查询会话时,只能基于NAT转换前的地址/端口查询,不能基于NAT转换后的地址/端口查询。

      如果NAT转换前为IPv6地址,则使用display firewall ipv6 session table [ verbose ]命令结合以下一个或多个参数组合查询:source inside start-ipv6-address [ to end-ipv6-address ]、destination global start-ipv6-address [ to end-ipv6-address ]、source-port inside port-numberdestination-port global port-number

  4. 执行命令export firewall session table ftp-serverserver-addressusernamepasswordfile-name,发送会话详细信息到指定的FTP服务器(如PC)。

    除USG6635E/6640E-K/6655E、USG6680E和USG6712E/6716E/USG9500之外,其他型号均支持该命令。

    目前只支持此FTP服务器使用默认的21端口,否则会话信息无法发送。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值