20-连接限制配置
本章节下载 (158.42 KB)
内网用户访问外部网络时,如果某一用户在短时间内经过设备向外部网络发起大量连接,将会导致设备系统资源迅速消耗,其它用户无法正常使用网络资源。另外,如果一台内部服务器在短时间内接收到大量的连接请求,将会导致该服务器无法及时进行处理,以至于不能再接受其它客户端的正常连接请求。因此,为了保护内部网络资源(主机或服务器)以及合理分配设备系统资源,需要制定相应的连接限制策略来对设备上建立的连接进行统计和限制。
目前,设备支持的连接限制策略可通过限制用户发起的连接数来实现。
表1-1 连接限制配置任务简介
配置任务 |
说明 |
详细配置 |
|
创建连接限制策略 |
必选 |
||
配置连接限制策略 |
配置缺省连接限制动作和参数 |
可选 |
|
配置基于ACL的连接限制策略 |
必选 |
||
应用连接限制策略 |
必选 |
连接限制策略用于定义具体的连接限制规则,其中的规则规定了策略生效的范围和实施的参数。
表1-2 创建连接限制策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建连接限制策略,并进入连接限制策略视图 |
connection-limit policy policy-number |
必选 |
一个连接限制策略中可定义多条连接限制规则,每条连接限制规则中可指定一个连接限制的对象或范围,与之匹配的用户的连接建立将受到该规则中指定参数的限制。对于未匹配连接限制规则的用户所建立的连接,设备将根据配置的缺省连接限制动作对其进行处理。
缺省连接限制动作和参数的涵义如下:
· 若缺省的连接限制动作为deny,则表示不对这些连接进行统计和限制;
· 若缺省的连接限制动作为permit,则需按照缺省连接限制参数的设置来限制用户连接,即按照指定的连接数上限值来控制用户最大可建立的连接数,并在连接数下降到指定的下限值后允许新建连接。
需要注意的是,只有应用连接限制策略之后,缺省的连接限制配置才能生效。关于应用连接限制的配置请参见“1.5 应用连接限制策略”。
表1-3 配置缺省连接限制动作和参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入连接限制策略视图 |
connection-limit policy policy-number |
- |
设置缺省连接限制动作 |
connection-limit default action { deny | permit } |
可选 缺省情况下,连接限制动作为deny,表示不对用户连接进行统计和限制 |
设置缺省连接限制参数 |
connection-limit default amount upper-limit max-amount lower-limit min-amount |
可选 |
可以根据ACL来限定用户范围,对匹配ACL规则的用户连接数进行统计和限制。
连接数限制是指,当某类型的连接数达到上限值时,设备将不接受该类型的新建连接请求,直到设备上已有连接因老化而删除,使得当前该类型的连接数等于或者低于连接数下限后,才允许新建连接。
设备可支持如下三种类型的连接限制规则:
· per-destination:按目的IP地址方式统计和限制,即到同一个目的IP地址的连接数目受限。
· per-service:按服务方式统计和限制,即同一种服务(或应用)的连接数目受限。
· per-source:按源地址方式统计和限制,即同一个源IP地址发起的连接数目受限。
如果在一条规则中同时指定per-destination、per-service、per-source类型中的多个,则各种统计和限制类型组合生效。例如,同时指定per-destination和per-service类型,则表示对同一个目的地址的同一种服务的连接进行统计和限制。
表1-4 配置基于ACL的连接限制规则
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入连接限制策略视图 |
connection-limit policy policy-number |
- |
配置基于ACL的连接限制规则 |
limit limit-id acl acl-number [ { per-destination | per-service | per-source } * amount max-amount min-amount ] |
必选 |
· 在连接限制规则中未配置的参数,将采用缺省连接限制参数的配置。缺省的连接限制参数配置请参见命令connection-limit default amount。
· 连接限制规则按照规则编号从小到大的顺序进行匹配,因此在配置连接限制规则时,需要从整体策略考虑,根据各规则的内容来合理安排规则的编号顺序,推荐按照限制粒度和范围由小到大的顺序来设置规则序号。
将已经配置好的连接限制策略应用到NAT业务模块上,实现对指定网络资源的连接限制。
表1-5 应用连接限制策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
在NAT模块上应用连接限制策略 |
nat connection-limit-policy policy-number |
必选 |
NAT模块上同时只能应用一个连接限制策略。
在完成上述配置后,在任意视图下执行display命令可以显示连接限制配置后的运行情况,通过查看显示信息验证配置的效果。
操作 |
命令 |
显示连接限制策略的配置信息 |
display connection-limit policy { policy-number | all } [ | { begin | exclude | include } regular-expression ] |
显示连接限制统计信息 |
display connection-limit statistics [ source src-address { mask-length | mask } ] [ destination dst-address { mask-length | mask } ] [ destination-port { eq | gt | lt | neq | range } port-number ] [ vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
显示NAT模块的连接限制统计信息 |
display nat connection-limit [ source src-address { mask-length | mask } ] [ destination dst-address { mask-length | mask } ] [ destination-port { eq | gt | lt | neq | range } port-number ] [ vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
不同的连接限制规则中网段存在包含关系时,规则顺序错误:
在Router上进行如下配置,希望限制主机192.168.0.100最多向某公网服务器发起100条连接请求,以及192.168.0.0/24网段的其他主机最多向某公网服务器发起10条连接请求。
<Router> system-view
[Router] acl number 2001
[Router-acl-basic-2001] rule permit source 192.168.0.0 0.0.0.255
[Router-acl-basic-2001] quit
[Router] acl number 2002
[Router-acl-basic-2002] rule permit source 192.168.0.100 0
[Router-acl-basic-2002] quit
[Router] connection-limit policy 0
[Router-connection-limit-policy-0] limit 0 acl 2001 per-destination amount 10 5
[Router-connection-limit-policy-0] limit 1 acl 2002 per-destination amount 100 10
实际运行过程中,主机192.168.0.100最多只能同时向外部网络的同一个目的地址发起10条连接,后续连接被拒绝。
在上述配置中,limit 0和limit 1中指定的源IP地址范围存在包含关系,192.168.0.100发起的连接既符合limit 0又符合limit 1。由于在进行连接限制规则的匹配时,设备以匹配到的第一条有效规则为准,因此对192.168.0.100向公网服务器发起的连接将只按照limit 0进行限制,而不会使用limit 1来限制。
为实现本需求,需要对limit 1与limit 0的顺序重新安排,将两个规则的序号进行调换,即将限制粒度更细、限制范围更精确的规则置前。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!