允许ping,不允许traceroute的ACL怎么做?
实际工程项目中,客户要求A主机能够pingB主机,但是A主机不能够traceroute到B主机的ACL该怎么写,求大神么给力,谢谢!!!!!!!1ping 和tracert同属于ICMP吧,应该不行 试着从ICMP包类型的不同去考虑。 本帖最后由 lim203344 于 2015-5-29 23:35 编辑
trace是UDP封装的,端口号是3343X,一般是3个连续端口,因为trace每跳默认会发3个UDP包,3个包端口不同,不同的设备的端口号你抓包看看就知道了,用扩展列表干掉这3个端口,放行ICMP就可以做到了。另外,如果有其他协议数据包通过的话,也得放行,不然就挂了。。。。切记
感谢感谢,我上次有抓包出来,但是结果没分析到像你这么明确。 rule 1 deny icmp icmp-type ttl-exceeded h3C设备命令,有效 谢谢啊,学习了,要工作了什么都要学。。 traceroute 封装的是 UDP 报文,试图访问一个 33435-65535 之间的端口号。路由器只是关心网络层,如果IP字段中TTL超时,就会返回 ICMP unreachable 报文,主机收到回复,继续将TTL +1 再次发送就可以;如果 UDP 报文到达了要访问的目标主机,目标主机一般会返回 端口不可达 报文,traceroute 完成。
如果禁止访问 33435-65535 之间的port number,如果禁止回复 ICMP unreachable 报文,都能满足你的要求。 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耗尽的报文来判断了。 学习了 这个问题还真没想过,学习了
页:
[1]