在日常的网络探测和故障诊断中,常用到的两个工具是Ping和Tracert。随着网络结构的日益复杂和中间设备(包括但不仅限于路由器和防火墙)的广泛部署,以及为了实现安全要求而在路由器和防火墙上实施了严格的访问控制策略后,网络管理和维护人员想要正常使用Ping/Tracert对网络进行主动有效的探测和故障诊断往往受阻,甚至无法进行。Windows环境下的Ping/Tracert工具都是基于ICMP协议实现的,而在Linux或Cisco等网络设备中,Traceroute还使用了UDP协议,在此不做深入讨论。
确实,在网络中部署了路由器和防火墙后,如果不经过慎重规划和部署,就以“保障网络安全”为由,在实施访问控制策略时,过滤掉ICMP协议流,将给日后正常的网络探测和故障诊断带来极大的困难。ICMP协议数据包的类型多样,有些类型的数据包确实会给网络带来安全威胁,但只要正确部署和配置路由器及防火墙的安全策略,在允许必要的ICMP类型数据包的同时过滤特定的ICMP类型数据包,则既能够使得Ping/Tracert工具正常工作,给网络维护和故障诊断带来便利,又能有效保证网络和设备的安全运行。
在网络中部署了路由器和防火墙后,要使得Ping/Tracert正常应用,需要从两个方面进行考虑:第一,过境设备的Ping/Tracert数据流,需要路由器和防火墙放行;第二,到设备自身或接口的Ping/Tracert数据流,需要路由器和防火墙响应。笔者以Cisco设备为例,来说明如何配置路由器和防火墙的策略,允许必要的包括回显(echo)、回显应答(echo reply)、超时(time exceeded)和目标不可到达(unreachables)等四种类型的ICMP数据包,以保障Ping/Tracert命令的正常使用。
在Cisco路由器中,利用NAT结合ACL实现访问控制时,一般允许从内部接口的到外部接口的所有流量,包括ICMP。所以,需要在路由器的外部应用ACL,为允许必要的ICMP数据包进入网络,ACL中必须包含以下的允许规则:
Access-list 101 permit icmp any any echo
Access-list 101 permit icmp any any unreachable
Access-list 101 permit icmp any any time-exceeded
Access-list 101 permit icmp any any echo-reply
如果在路由器中实现了基于区域的IOS防火墙功能,此时可以把路由器当状态防火墙对待,建议对ICMP流量实施应用审查,则配置更为简单明了。另外,对于从外部或内部到自身接口的需要允许的ICMP流量,也通过防火墙策略(而不是ACL)配置实现即可,在此不列出具体命令了。还有一点要注意的是,作为一种防御DoS攻击的保护措施,默认情况下,路由器将ICMP 不可到达类型的流量限制到每500毫秒一个数据包。在12.1及更新的IOS镜像中,这个速率限制可通过命令”ip icmp rate-limit unreachable”进行配置。
 对于一般的状态化防火墙, 只要策略允许从内到外的所有流量,或对ICMP协议实施了应用审查,Ping/Tracert就能够正常运转,无需额外的策略配置。但是从外到内的Ping/Tracert则需要配置策略以放行流量。在PIX/ASA防火墙中,默认情况下,从外向内的ICMP流量被禁止,从内向外的ICMP流量允许通过,但返回包却被禁止。要改变这一默认行为,需要配置例外的允许策略以放行必要的ICMP类型数据包。此外,可通过命令”icmp unreachable rate-limit n burst-size n ”对ICMP不可到达类型的流量进行必要限制,还可以在防火墙上启用针对ICMP的防DoS功能。要允许穿越防火墙的特定的ICMP流量,配置命令如下:
Object-group icmp-type Permit-ICMPType
Icmp-object echo
Icmp-object unreachable
Imcp-object time-exceeded
Icmp-object echo-reply
Access-list inbound permit icmp any any object-group Permit-ICMPType
access-group inbound in interface outside
允许到防火墙自身接口特定的ICMP类型流量,在则命名接口上的配置命令为:
icmp permit 0.0.0.0 0.0.0.0 echo
icmp permit 0.0.0.0 0.0.0.0 echo-reply
icmp permit 0.0.0.0 0.0.0.0 unreachable
icmp permit 0.0.0.0 0.0.0.0 time-exceeded
icmp deny 0.0.0.0 0.0.0.0

在实际的网络环境中,如果路由器或防火墙丢弃了ICMP超时数据包,那么Tracert会对该跃点显示一系列“*”字符。如果在近侧接口(靠近发起Tracert流的计算机端)上实施了ICMP过滤,那么该路由器或防火墙及其后续的设备上都会显示“*”字符直到完成30个(默认)跃点数尝试。如果Ping/Tracert工具工作正常,那么相应地另一工具即pathping也能正常工作。此外,Ping/Tracert目的为启用了Windows防火墙的主机,需关闭Windows防火墙或进行设置以使得其允许传入的特定类型的ICMP流量。

本文转自 小王 51CTO博客,原文链接:http://blog.51cto.com/xiaowang/812793,如需转载请自行联系原作者

路由器和防火墙对Ping/Tracert工具的影响相关推荐

  1. 比较ping,tracert和pathping等命令之间的关系

    网络测试常用的命令-比较ping,tracert和pathping等命令之间的关系 还是正在学习TCP/IP协议,了解和掌握一些常用的网络测试命令将会有助于您更快地检测到网络故障所在,同时也会有助你您 ...

  2. 解决4G路由器内网无法ping通外网问题总结

    解决4G路由器内网无法ping通外网问题总结 一.概述 在开发调试4G路由器过程中,出现内网计算机(192.168.8.0网段)无法ping通外网基站问题(192.168.11.0网段),主要是对ip ...

  3. Juniper的路由器、防火墙、交换机如何恢复出厂配置

    Juniper的路由器.防火墙.交换机如何恢复出厂配置 有些时候,在正常的业务使用中,逐条删除配置的内容很繁琐,我们可以使用恢复出厂配置,清空设备中的配置:还有的时候,由于设备配置异常,可以使用恢复出 ...

  4. 新一代宽带路由器—Vigor防火墙路由器

    华盖科技隆重推出新一代宽带路由器-Vigor防火墙路由器 上网行为管理时代的来临 一.网络信息乱七八糟  计算机病毒泛滥.******造成信息丢失:不健康的文字.图片.广告,带有淫秽.×××.暴力等有 ...

  5. Ping Tracert result Command explanation

    Ping& Tracert result Command explanation 1, Ping 例如ping   www.yahoo.com     Pinging   www.yahoo. ...

  6. 禁ping也能ping的工具: tcping

    网络管理员常用的查看网络延迟标配工具:ping.但是机房服务器禁止ping的情况也很常见.这时候就用到tcping了. tcping 是类似ping的工具,通过TCP协议工作(ping是通过icmp协 ...

  7. 双心ping GUI工具1.0

    双心ping GUI工具1.0 该软件利用WindowsAPI提供了图形界面的ping程序,同时还可以调用DOS下的ping命令. ping成功后自动加入网址列表框及同目录下的列表文件Pinglist ...

  8. 防火墙策略管理小工具——网络安全

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.防火墙配置文件 1. 地址集合 2. 服务集合 3. 规则集合 二.防火墙策略管理小工具的开发 1. 主要功能 2 ...

  9. python实现的原生ping脚本工具

    1.基于python原生组件的ping批量工具,不依赖系统ping. 2.默认情况下,一个C段扫描花费3s左右. 3.可修改内置结构,精简所需依赖 ''' 基于python原生组件的ping批量工具, ...

最新文章

  1. HRESULT 的判断
  2. 经验 | 在C++平台上部署PyTorch模型流程+踩坑实录
  3. vue rem移动端适配
  4. LAMP兄弟连PHP全民总动员
  5. mysql 线上修改参数_9.10、mysql进程、状态在线修改参数重要知识
  6. SylixOS 网络文件系统 nfs 的使用
  7. indesign排版标点挤压_indesign排版标点挤压设置技巧
  8. termux如何下载metasploit(msf)
  9. excel表格怎么求时间差值_怎么用excel的函数计算日期差值
  10. Wox + Everything = 效率神器(附下载链接)
  11. 平年和闰年c语言程序,C语言平年,平年闰年问题
  12. TensorFlow学习笔记(二)把数字标签转化成onehot标签
  13. 批量清理VS编译产生的文件
  14. 高考首日,为梦想加油!
  15. 【初学疑惑】开发者工具可信度高吗?Python爬虫实战场景
  16. 虚拟语气用法总结及真题解析
  17. 为什么企业要安装局域网监控软件?
  18. 基于Gensim计算文本相似度
  19. 《Comprehensive Privacy Analysis of Deep Learning》补完以及Deepfool对抗样本构造算法
  20. 吴佳明(普空):LVS在大规模网络环境中的应用

热门文章

  1. 【牛客刷题4】倒置字符串的手术刀剖析
  2. Steam VR虚拟现实手柄交互
  3. pd虚拟机Parallels Desktop 17 mac
  4. pd虚拟机共享网络给mac
  5. 2020年最好用的手机是哪一款_2020最值得入手的手机是哪一款_性能最好的手机前十名...
  6. 龙珠超宇宙2服务器中断,龙珠超宇宙2联机服务器说明
  7. [徐州.12.4的一次会议]:知识图谱
  8. 1000题如何高效利用
  9. android+获取荣耀手机内置+存储,这9款华为、荣耀手机正式开启Android9.0内测了,每款机型2000...
  10. Arduino简单实例之四_PS2游戏摇杆