09-会话管理配置
本章节下载: 09-会话管理配置 (244.40 KB)
目 录
会话管理是为了实现攻击检测及防范等基于会话进行处理的业务而抽象出来的公共功能。此功能把传输层报文之间的交互关系抽象为会话,并根据发起方和响应方的报文信息对会话进行状态更新和老化,支持多个业务特性分别对同一个业务报文进行处理。
会话管理主要基于传输层协议对报文进行检测。其实质是通过检测传输层协议信息来对连接的状态进行跟踪,并对所有连接的状态信息进行基于会话表和关联表的统一维护和管理。
客户端向服务器发起连接请求报文的时候,系统会创建一个会话表项。该表项中记录了一个会话所对应的请求报文信息和回应报文信息,包括源IP地址/端口号、目的IP地址/端口号、传输层协议类型、应用层协议类型、会话的协议状态等。对于多通道协议(特指部分应用协议中,客户端与服务器之间需要在已有连接基础上协商新的连接来完成一个应用),会话管理还会根据协议的协商情况,创建一个或多个(由具体的应用协议决定)关联表表项,用于关联属于同一个应用的不同会话。关联表项在多通道协议协商的过程中创建,完成对多通道协议的支持后即被删除。
上述会话管理的工作原理描述仅针对目的地址为单播地址的报文,对于目的地址是组播地址的报文稍有不同。组播报文到达设备后通常经由一个入接口到多个出接口进行转发,因此对于同一个应用的组播报文的连接,在入接口和多个出接口均会建立起各自的会话表项,我们称这类组播报文触发建立的会话表项为组播会话表项,以区别于单播报文触发建立的单播会话表项。若无特殊说明,本文中的会话表项不区分单播和组播类型。
在实际应用中,会话管理作为公共功能,只能实现连接状态的跟踪,并不能阻止潜在的攻击报文通过。
目前会话管理在设备上实现的具体功能如下:
· 支持对各协议报文创建会话、更新会话状态以及根据协议状态设置老化时间。
· 支持ICMP/ICMPv6差错报文的映射,可以根据ICMP/ICMPv6差错报文携带的信息查找原始的会话。
· 支持设置长连接会话,保证指定的会话在一段较长的时间内不会被老化。
· 支持应用层协议(如FTP)的控制通道和动态数据通道的会话管理。
· 支持对会话业务报文的热备,实现多台设备之间会话以及基于会话的业务的动态表项的实时备份。
长连接老化时间仅在TCP会话进入稳态(TCP-EST状态)时生效。在会话稳态时,长连接老化时间具有最高的优先级,其次为应用层协议老化时间,最后为协议状态老化时间。
当会话数目过多时,若设备响应速度过慢,建议将协议状态老化时间或应用层协议老化时间调高。
以下配置用于实现根据会话所处协议状态来设置会话表项的老化时间。处于某协议状态的会话,如果在该协议状态老化时间内未被任何报文匹配,则会由于老化而被系统自动删除。
(1) 进入系统视图。
system-view
(2) 配置各协议状态的会话老化时间。
session aging-time state { fin | icmp-reply | icmp-request | rawip-open | rawip-ready | syn | tcp-est | udp-open | udp-ready } time-value
缺省情况下,各协议状态的会话老化时间为:
¡ FIN:30秒。
¡ ICMP-REPLAY:30秒。
¡ ICMP-REQUEST:60秒。
¡ RAWIP-OPEN:30秒。
¡ RAWIP-READY:60秒。
¡ SYN:30秒。
¡ TCP-EST:240秒。
¡ UDP-OPEN:30秒。
¡ UDP-READY:240秒。
对于处于TCP-EST状态的TCP会话以及处于UDP-READY状态的UDP会话,根据所属的应用层协议类型的老化时间进行老化,老化时间可配置。对于进入稳定状态的其它应用层协议的会话,则仍然遵循协议状态的会话老化时间进行老化。
(1) 进入系统视图。
system-view
(2) 配置应用层协议的会话老化时间。
session aging-time application { dns | ftp | gtp | h225 | h245 | ils | mgcp | nbt | pptp | ras | rsh | rtsp | sccp | sip | sqlnet | tftp | xdmcp } time-value
缺省情况下,各协议的会话老化时间如下:
¡ DNS:1秒。
¡ FTP:240秒。
¡ GTP:60秒。
¡ H.225:3600秒。
¡ H.245:3600秒。
¡ ILS:3600秒。
¡ MGCP:60秒。
¡ NBT:3600秒。
¡ PPTP:3600秒。
¡ RAS:300秒。
¡ RSH:60秒。
¡ RTSP:3600秒。
¡ SCCP:3600秒。
¡ SIP:300秒。
¡ SQLNET:600秒。
¡ TFTP:60秒。
¡ XDMCP:3600秒。
可以将符合指定特征且进入TCP-EST状态的TCP会话设置为长连接会话,该类会话的老化时间不会随着状态的变迁而改变。可以设置长连接会话的老化时间,或者将其设置为永不老化。
对于长连接会话规则触发生成的长连接会话不会因为其配置的删除、修改或没有报文命中而被删除,只有当会话的发起方或响应方主动发起关闭连接请求、达到长连接会话老化时间或管理员手动删除该会话时,才会被删除。
(1) 进入系统视图。
system-view
(2) 配置长连接会话规则。
session persistent acl [ ipv6 ] acl-number [ aging-time time-value ]
会话业务热备功能实现了多台设备之间会话以及基于会话的业务的动态表项的热备份。互为备份的两台设备(通常为企业中心网关设备)对外提供一个虚拟IP地址与对端设备(通常为企业分支网关设备)进行通信。当一台设备出现故障时,利用相关冗余设备协商机制将当前设备上的业务流量切换到备份设备上继续进行业务的处理和转发,整个流量切换过程对于对端设备完全透明,不需要对端设备添加任何额外的配置。由于对动态表项进行了热备份,因此当业务流量从发生故障的设备切换到另一台设备后,并不会导致业务中断,可实现业务的平滑切换。
设备同时还支持会话业务的自动热备份功能。自动热备份功能是指系统自动备份启用了ALG功能的某些应用产生的会话表和关联表,这些应用包括H323、SIP和ILS。
对于DNS和HTTP类型的应用协议,通常在很少的报文交互之后就会断开连接,当发生主备切换造成当前连接中断时,客户端会立即重新发起请求,用户通常感知不到连接异常。因此,在大多数情况下这些应用协议不需要进行会话备份。如果用户明确知道当前的HTTP会话或者DNS会话将会持续较长的连接时间,或者确实希望对这两个应用协议创建的会话进行备份,可以通过该命令开启DNS或者HTTP的会话备份功能。
在IRF组网环境中,当开启会话业务热备份功能的情况下,若需要配置NAT业务,则必须保证NAT业务配置在IRF成员设备的全局接口上(例如聚合口、冗余口);若在物理接口上配置了NAT业务,则建议关闭会话业务热备份功能。
(1) 进入系统视图。
system-view
(2) 开启会话业务热备份功能。
session synchronization enable
缺省情况下,会话业务热备功能处于关闭状态。
开启会话业务热备份功能后,缺省情况下,DNS和HTTP协议的会话备份功能处于关闭状态,其它应用协议的会话备份功能处于开启状态。
(3) (可选)开启指定类型会话业务热备份功能。
session synchronization { dns | http }*
缺省情况下,DNS、HTTP应用协议的会话备份功能处于关闭状态。
(4) (可选)配置会话热备份的延迟时间。
session synchronization delay seconds
缺省情况下,会话热备份的延迟时间为5秒。
(5) 进入接口视图。
interface interface-type interface-number
(6) (可选)配置接口识别码。
identity-number number
缺省情况下,未配置接口识别码。
如果两个热备份业务接口上的识别码不同,会导致两个系统上的两个接口业务热备份失败。
开启会话统计功能之后,设备将对收到和发送的基于会话的业务报文数目和报文字节数进行统计。基于单播会话的报文统计信息可通过display session table命令查看,基于单播报文类型的报文统计信息可通过display session statistics命令查看;基于组播会话的报文统计信息可通过display session table multicast命令查看,基于组播报文类型的报文统计信息可通过display session statistics multicast命令查看。
(1) 进入系统视图。
system-view
(2) 开启会话统计功能。
session statistics enable
缺省情况下,会话统计功能处于关闭状态。
CGN(Carrier Grade NAT,运营商级网络地址转换)也称作LSN(Large-scale NAT,大规模网络地址转换),可实现对大量用户的地址转换,并支持用户溯源功能。有关CGN的详细介绍,请参见“NAT配置指导”中的“NAT”。
在CGN部署场景中,需要将NAT会话的流量引流到指定的备份组中进行NAT业务处理。在备份组中的主节点故障又恢复正常的情况下,流量会回切到主节点。由于NAT业务的表项在主节点与备节点之间进行表项备份时需要一定的时间,因此在流量回切到主节点时也需要一定的延迟时间,保证业务不中断。
(1) 进入系统视图。
system-view
(2) 配置处理基于会话业务的备份组。
session service-location acl [ ipv6 ] { acl-number | name acl-name } failover-group group-name
缺省情况下,未配置处理基于会话业务的备份组。
请不要在指定的ACL中配置目的IPv4/IPv6地址或目的端口号信息,否则ACL匹配流量失败。
(3) 配置在备份组中当主节点从故障状态恢复后,流量回切到主节点的延迟时间。
session synchronization preempt-mode delay delay-value
缺省情况下,流量回切到主节点的延迟时间为600秒。
开启会话表项资源的告警功能后,当设备的硬件类会话表项资源用尽时,设备会生成会话表项资源的告警信息进行预警。当设备从资源用尽的状态恢复时,设备也会生成告警信息进行提示。生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。有关告警信息的详细描述,请参见“网络管理和监控配置指导”中的“SNMP”。
(1) 进入系统视图。
system-view
(2) 开启会话表项资源告警功能。
snmp-agent trap enable session resources
缺省情况下,会话表项资源的告警功能处于开启状态。
开启记录会话表项资源的日志功能后,当设备的硬件类会话表项资源用尽时,设备会生成会话表项资源的日志信息进行预警,当设备从资源用尽的状态恢复时,设备也会生成日志信息进行提示。
(1) 进入系统视图。
system-view
(2) 开启记录会话表项资源的日志功能。
undo session resources log disable
缺省情况下,记录会话表项资源的日志功能处于开启状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后会话的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除会话统计信息。
表1-1 会话管理显示和维护
操作 |
命令 |
显示应用层协议的会话老化时间 |
display session aging-time application |
显示各协议状态的会话老化时间 |
display session aging-time state |
显示IPv4单播会话表信息(独立运行模式) |
display session table ipv4 [ slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] [ verbose ] |
显示IPv4单播会话表信息(IRF模式) |
display session table ipv4 [ chassis chassis-number slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] [ verbose ] |
显示IPv6单播会话表信息(独立运行模式) |
display session table ipv6 [ slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] [ verbose ] |
显示IPv6单播会话表信息(IRF模式) |
display session table ipv6 [ chassis chassis-number slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] [ verbose ] |
显示单播会话统计信息(独立运行模式) |
display session statistics [ summary ] [ slot slot-number ] |
显示单播会话统计信息(IRF模式) |
display session statistics [ summary ] [ chassis chassis-number slot slot-number ] |
根据五元组显示IPv4单播会话统计信息(独立运行模式) |
display session statistics ipv4 { source-ip source-ip | destination-ip destination-ip | protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } | source-port source-port | destination-port destination-port } * [ slot slot-number ] |
根据五元组显示IPv4单播会话统计信息(IRF模式) |
display session statistics ipv4 { source-ip source-ip | destination-ip destination-ip | protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } | source-port source-port | destination-port destination-port } * [ chassis chassis-number slot slot-number ] |
根据五元组显示IPv6单播会话统计信息(独立运行模式) |
display session statistics ipv6 { source-ip source-ip | destination-ip destination-ip | protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } | source-port source-port | destination-port destination-port } * [ slot slot-number ] |
根据五元组显示IPv6单播会话统计信息(IRF模式) |
display session statistics ipv6 { source-ip source-ip | destination-ip destination-ip | protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } | source-port source-port | destination-port destination-port } * [ chassis chassis-number slot slot-number ] |
显示IPv4组播会话表信息(独立运行模式) |
display session table multicast ipv4 [ slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ verbose ] |
显示IPv4组播会话表信息(IRF模式) |
display session table multicast ipv4 [ chassis chassis-number slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ verbose ] |
显示IPv6组播会话表信息(独立运行模式) |
display session table multicast ipv6 [ slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ verbose ] |
显示IPv6组播会话表信息(IRF模式) |
display session table multicast ipv6 [ chassis chassis-number slot slot-number ] [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ verbose ] |
显示组播会话统计信息(独立运行模式) |
display session statistics multicast [ slot slot-number ] |
显示组播会话统计信息(IRF模式) |
display session statistics multicast [ chassis chassis-number slot slot-number ] |
显示关联表信息(独立运行模式) |
display session relation-table { ipv4 | ipv6 } [ slot slot-number ] |
显示关联表信息(IRF模式) |
display session relation-table { ipv4 | ipv6 } [ chassis chassis-number slot slot-number ] |
显示所有单板上会话业务批量热备份的状态 |
display session batch-hot-backup state |
删除IPv4单播会话表项(独立运行模式) |
reset session table ipv4 [ slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除IPv4单播会话表项(IRF模式) |
reset session table ipv4 [ chassis chassis-number slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除IPv6单播会话表项(独立运行模式) |
reset session table ipv6 [ slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除IPv6单播会话表项(IRF模式) |
reset session table ipv6 [ chassis chassis-number slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除所有单播会话项(独立运行模式) |
reset session table [ slot slot-number ] |
删除所有单播会话项(IRF模式) |
reset session table [ chassis chassis-number slot slot-number ] |
清除单播会话统计信息(独立运行模式) |
reset session statistics [ slot slot-number ] |
清除单播会话统计信息(IRF模式) |
reset session statistics [ chassis chassis-number slot slot-number ] |
删除IPv4组播会话表项(独立运行模式) |
reset session table multicast ipv4 [ slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除IPv4组播会话表项(IRF模式) |
reset session table multicast ipv4 [ chassis chassis-number slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除IPv6组播会话表项(独立运行模式) |
reset session table multicast ipv6 [ slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除IPv6组播会话表项(IRF模式) |
reset session table multicast ipv6 [ chassis chassis-number slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
删除所有组播会话项(独立运行模式) |
reset session table multicast [ slot slot-number ] |
删除所有组播会话项(IRF模式) |
reset session table multicast [ chassis chassis-number slot slot-number ] |
清除组播会话统计信息(独立运行模式) |
reset session statistics multicast [ slot slot-number ] |
清除组播会话统计信息(IRF模式) |
reset session statistics multicast [ chassis chassis-number slot slot-number ] |
删除关联表项(独立运行模式) |
reset session relation-table [ ipv4 | ipv6 ] [ slot slot-number ] |
删除关联表项(IRF模式) |
reset session relation-table [ ipv4 | ipv6 ] [ chassis chassis-number slot slot-number ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!