设为首页收藏本站language 语言切换
查看: 4602|回复: 10
收起左侧

允许ping,不允许traceroute的ACL怎么做?

[复制链接]
发表于 2015-5-29 17:24:00 | 显示全部楼层 |阅读模式
实际工程项目中,客户要求A主机能够pingB主机,但是A主机不能够traceroute到B主机的ACL该怎么写,求大神么给力,谢谢!!!!!!!1
发表于 2015-5-29 17:42:58 | 显示全部楼层
ping 和tracert  同属于ICMP  吧,应该不行
沙发 2015-5-29 17:42:58 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2015-5-29 19:21:49 | 显示全部楼层
试着从ICMP包类型的不同去考虑。
板凳 2015-5-29 19:21:49 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2015-5-29 23:33:55 | 显示全部楼层
本帖最后由 lim203344 于 2015-5-29 23:35 编辑

trace  是UDP封装的,端口号是3343X,一般是3个连续端口,因为trace每跳默认会发3个UDP包,3个包端口不同,不同的设备的端口号你抓包看看就知道了,用扩展列表干掉这3个端口,放行ICMP就可以做到了。另外,如果有其他协议数据包通过的话,也得放行,不然就挂了。。。。切记
地板 2015-5-29 23:33:55 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-6 14:03:25 | 显示全部楼层
感谢感谢,我上次有抓包出来,但是结果没分析到像你这么明确。
5# 2015-6-6 14:03:25 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2015-7-2 13:30:03 | 显示全部楼层
rule 1 deny icmp icmp-type ttl-exceeded    h3C设备命令,有效
6# 2015-7-2 13:30:03 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-2 20:17:06 | 显示全部楼层
谢谢啊,学习了,要工作了什么都要学。。
7# 2015-7-2 20:17:06 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2015-7-4 22:14:49 | 显示全部楼层
traceroute 封装的是 UDP 报文,试图访问一个 33435-65535 之间的端口号。路由器只是关心网络层,如果IP字段中TTL超时,就会返回 ICMP unreachable 报文,主机收到回复,继续将TTL +1 再次发送就可以;如果 UDP 报文到达了要访问的目标主机,目标主机一般会返回 端口不可达 报文,traceroute 完成。
如果禁止访问 33435-65535 之间的port number,如果禁止回复 ICMP unreachable 报文,都能满足你的要求。
8# 2015-7-4 22:14:49 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2015-7-9 11:03:36 | 显示全部楼层
lim203344 发表于 2015-5-29 23:33
trace  是UDP封装的,端口号是3343X,一般是3个连续端口,因为trace每跳默认会发3个UDP包,3个包端口不同, ...

电脑发出的trace包是ICMP的
第一个包是TTL=1的ICMP报文,第一台路由器会回复一个TTL耗尽的ICMP报文给主机。
第二个包是TTL=2的ICMP报文,因此第二台路由器会回复TTL耗尽报文。
依次类推。。。

这样的话可以用6楼的方式解决,deny掉TTL耗尽的ICMP报文。但是这样有个问题,就是如果网络出现环路的话就不能通过TTL耗尽的报文来判断了。
9# 2015-7-9 11:03:36 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2015-9-11 11:25:31 | 显示全部楼层
这个问题还真没想过,学习了
11# 2015-9-11 11:25:31 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-25 15:51 , Processed in 0.065413 second(s), 22 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表