设备型号:9850-4C 版本R6715
这个命令可以匹配回程的syn-ack包吗
原示例(命令写法有问题,IP 后面不要写 http://)
#错误写法(带http://是复制粘贴垃圾字符,配置会报错)
rule 0 permit tcp source host 116.162.48.251 destination host 116.162.222.132 syn 1
这条syn 1规则不能精准匹配回程 SYN‑ACK 报文(SYN=1、ACK=1)H3C。
syn 1:只要求报文 SYN 标志位等于 1,不限制 ACK 位;
缺点:会把两种报文全部命中,无法只筛选 “只有 SYN‑ACK 回程包”,会把原始发起 SYN 也放进来H3C。
Comware7 的 ACL TCP 标志位逻辑:多条 flag 条件之间是逻辑或,不是逻辑与;只写
syn 1,只检查 syn 位为 1,ack 位不管是 0 还是 1 都能匹配上H3C。
acl advanced 3000
rule 0 permit tcp source host 116.162.48.251 destination host 116.162.222.132 syn 1 ack 1
syn 1 ack 1:SYN 标志等于 1,同时 ACK 标志等于 1,才命中,只匹配三次握手的 SYN‑ACK 回程包,不会匹配纯 SYN 发起包H3C。
rule permit tcp established source host 116.162.48.251 destination host 116.162.222.132
established匹配 ACK=1 或者 RST=1的报文;它可以匹配 SYN‑ACK(ack=1),也匹配后续全部带 ack 的业务报文,不区分是不是握手阶段的 SYN‑ACK,会匹配整个 TCP 连接后续所有回复流量,不是专门抓 SYN‑ACK 报文的规则。
#查看ACL规则编译结果
display acl advanced 3000
#报文统计,看规则命中计数增长
display packet‑filter statistics interface 接口名 inbound/outbound
表格
| ACL 规则写法 | 可匹配报文 |
|---|---|
syn 1 | 纯 SYN (SYN=1 ACK=0) + SYN‑ACK(SYN=1 ACK=1) |
syn 1 ack 1 | 仅 SYN‑ACK 回程报文(三次握手第二个包) |
established | SYN‑ACK + 后续所有 ACK/RST 报文(整个连接的回程流量) |
仅配置syn 1,会同时匹配客户端发起的 SYN 包和服务器回复的 SYN‑ACK 回程包,不能单独只匹配回程 syn‑ack;想要精准匹配 SYN‑ACK,需要同时配置 syn 1 ack 1;另外注意 IP 地址不能带 http://,会报语法错误。
提示:S9850‑4C R6715 版本完全支持以上 tcp‑flag 同时配置的语法。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论