当设备内存占用超过80%,并且并发连接较多,或者有访问不通时,可以用此命令查看是否会话容量满。
用于查看 session的使用数量,剩余数量,输出如下:
- admin# show session generic
- 查看会话常规信息
- ================
- ipv4: 1080000, alloc 18, free 1079982, alloc failed 0
- ipv6: 540000, alloc 0, free 540000, alloc failed 0
- max : 1080000, alloc 18, free 1079982, alloc failed 0
- ================
复制代码从输出中可以看出,此设备session表容量最大为108w,ipv6最大为54w,v4为108w。
free还有很多,没有申请失败发生,比较正常。
2、show session
显示全部会话的具体信息
- admin# show session
- total: 12, totalPages: 1
- ======================================================================
- session: id 409, life 7, block 0, policy 0, app 0, flag request, vlanid 0
- magic 0x6c9fe, index 0, maintain 0x1, recheck 0x0, masterid -1
- qosvlineid 0, qosexclude 0, qoschannelid 0, hagroupid 0, tcpproxy 0x0
- flow0: 22.22.22.25:54585 > 114.114.114.114:53, proto UDP
- xlate 22.22.22.25:54585 > 114.114.114.114:53
- public -> public
- route gateway 0.0.0.0, next hop type 28(GATEWAY DEFAULT), in eth5, out eth5
- source mac 00-00-00-00-00-00, dest mac 00-00-00-00-00-00, flag 0x580e, coreid 1
- bitmap forward 0x0 v27, output 0x0 v27, tcpproxy 0x0 v27, decrypt 0x20 v27, fastpath 0x819
- flow1: 114.114.114.114:53 > 22.22.22.25:54585, proto UDP
- xlate 114.114.114.114:53 > 22.22.22.25:54585
- public -> public
- route gateway 0.0.0.0, next hop type 1(HOST), in eth5, out eth5
- source mac 00-00-00-00-00-00, dest mac 00-00-00-00-00-00, flag 0x280e, coreid 0
- bitmap forward 0x0 v27, output 0x0 v27, tcpproxy 0x0 v27, decrypt 0x0 v27, fastpath 0x919
复制代码输出内容中信息如下:
信息字段所对应的含义如下:
- id:后台为每条session分配的编号
- life:session剩余时间,到期后会销毁
- block:策略是否丢包, 0 放通,1 丢包
- policy:匹配到的策略 id
- app:应用识别结果的 crc(应用识别id无法在前端或者cli查看对应的应用,需要在后台用工具查询:idcache_tool -h)
- vlanid:报文的 vlan 信息,如果原始包文不带,从access、native口接收,会显示对应的pvid
- masterid:单条session无用,多用于alg等父子连接,子连接的masterid是父session的session id。比如ftp下载时有控制连接和数据连接,数据连接的masterid就指向控制连接
- qosvlineid:匹配到的流控线路ID(show dp-qos-vline可查看对应ID的线路信息)
- qosexclude:匹配到的流控排除策略ID(show dp-qos-exclude)
- qoschannelid:匹配到的流控通道ID(show dp-qos-channel)
- 五元组:源IP、源Port、目的IP、目的Port、协议号
- flow0:AF首次收包该五元组的报文方向信息
- 源IP -> 目的IP 协议类型
- xlate:转换后的源IP、源Port、转换后的目的IP、目的Port
- public -> public:虚拟系统报文流转
- route:下一跳IP、下一跳路由类型、报文入接口(不一定是收包的物理口)、出接口
- 源MAC地址、目的MAC地址
- 下一跳路由类型包括:HOST、CONNECT、GATEWAY、DEFAULT
- //AF8.0.79及以后版本新增的字段有:
- <blockquote>policy name:匹配的策略名称
- policy action:匹配的策略动作,PERMIT or DENY
- app:应用识别结果名称
- seen reply:是否有回包
- up packets:上行报文数量
- down packets:下行报文数量
- up bytes:上行报文中字节数
- down bytes:下行报文总字节数
- create time:会话创建时间
- life time:会话已存在时间
- life time out:会话剩余时间
- 增加下一跳路由表类型:
- CONNECTED TABLE
- DST TABLE
- VPN TABLE
- SSLVPN TABLE
- PBR0 TABLE
- PBR1 TABLE
- src zone:报文源区域
- dst zone:报文目的区域
- mac 为空一般是 :1、HOST 路由类型为本机报文,不显示MAC地址;2、对端没有回包
复制代码3、show session 查看某个具体连接信息
在发现某个流量不通或者未按预期命中策略或nat时,可以通过此命令查看是否在设备上建立会话,相关ip的nat转换、策略匹配、路由查找是否正确。
可以使用如下关键字匹配,包括ip协议类型,源目的ip,端口(8.0.79及以后支持匹配nat后的源和目的ip、port)等:
- admin# show session
- detail 查看会话详细信息
- dst-ip 目的ip
- dst-port 目的端口号
- generic 查看会话常规信息
- id 会话id
- ipv4 ipv4会话
- ipv6 ipv6会话
- origin-core 原始核心号码
- policy 应用策略
- protocol 3层协议
- reply-core 回复核心号码
- src-ip 源ip
- src-port 源端口号
- vsys 虚拟系统名称
复制代码例如:
show session ipv4 dst-ip 114.114.114.114(表示匹配目的ip为114.114.114.114的会话)
- admin# show session ipv4 dst-ip 114.114.114.114
- total: 11, totalPages: 1
- ======================================================================
- session: id 409, life 1, block 0, policy 0, app 0, flag request, vlanid 0
- magic 0x6cbe0, index 0, maintain 0x1, recheck 0x0, masterid -1
- qosvlineid 0, qosexclude 0, qoschannelid 0, hagroupid 0, tcpproxy 0x0
- flow0: 22.22.22.25:36226 > 114.114.114.114:53, proto UDP
- xlate 22.22.22.25:36226 > 114.114.114.114:53
- public -> public
- route gateway 0.0.0.0, next hop type 28(GATEWAY DEFAULT), in eth5, out eth5
- source mac 00-00-00-00-00-00, dest mac 00-00-00-00-00-00, flag 0x580e, coreid 1
- bitmap forward 0x0 v27, output 0x0 v27, tcpproxy 0x0 v27, decrypt 0x20 v27, fastpath 0x819
- flow1: 114.114.114.114:53 > 22.22.22.25:36226, proto UDP
- xlate 114.114.114.114:53 > 22.22.22.25:36226
- public -> public
- route gateway 0.0.0.0, next hop type 1(HOST), in eth5, out eth5
- source mac 00-00-00-00-00-00, dest mac 00-00-00-00-00-00, flag 0x280e, coreid 0
- bitmap forward 0x0 v27, output 0x0 v27, tcpproxy 0x0 v27, decrypt 0x0 v27, fastpath 0x919
复制代码
4、clear session 删除会话
需要在cli的config模式下执行,首先运行config进入配置模式后,可以执行此命令。
当更新安全规则或者nat、策略路由时,某个长连接没有匹配时,可通过此命令删除会话触发重新命中策略。
当某个异常流量会话过多导致session资源不足时,可通过此命令删除异常流量会话释放资源。
可以通过session的id、源目的ip和端口等信息删除符合条件的会话
- admin(config)# clear session
- dst-ip 目的ip
- dst-port 目的端口号
- id 会话id
- ipv4 IPV4地址
- ipv6 IPV6地址
- origin-core 原始核心号码
- policy 应用策略
- protocol 网络协议
- reply-core 回复核心号码
- src-ip 源ip
- src-port 源端口号
- vsys 虚拟系统名称
复制代码例如:
clear session ipv4 dst-ip 114.114.114.114 protocol 17 src-port 33800
删除目的ip为114.114.114.114,四层协议udp,源端口33800的会话。
删除会话可能导致断网,建议删除前先show session查看确认匹配条件是否正确:
首先执行:
show session ipv4 dst-ip 114.114.114.114 protocol 17 src-port 33800
确认待删除的会话后,再执行:
clear session ipv4 dst-ip 114.114.114.114 protocol 17 src-port 33800
注意:clear session不带参数时,会删除所有会话,使用时慎重。