isReachable 与 ping的关系

问题描述

java中利用isReachable来测试对端是否可达.方法中说isReachable优先使用ICMPrequest测试对方是否存在,如果没有权限的话将使用TCP在对端的7(echo)端口建立TCP连接。问题:截图发现本地一直向对端的7端口发送连接。这是不是意味着本地的ICMPrequest被关闭?另外使用isReachable探测www.baidu.com显示不可达。是因为百度防火墙拦截了么?那ping指令为什么可以直接到达?另外可以直接使用ping指令,为什么isReachable就不能发送ICMPrequest,两者应该是一回事吧?importjava.io.IOException;importjava.net.InetAddress;publicclassInetAddressTest{publicstaticvoidmain(String[]args)throwsIOException{InetAddressip=InetAddress.getByName("www.baidu.com");System.out.println("host是否可达"+ip.isReachable(4000));System.out.println(ip.getHostAddress());}}

解决方案

解决方案二:
isReachable和ping是一样的都是发送ICMP报文如果你isReachable不行而ping可以有可能是你的防火墙禁止了你的java发送ICMP报文需要设置下
解决方案三:
isReachable和ping都是基于ICMP请求回应的服务,那防火墙应该是一块拦截服务啊,怎么能拦截java程序呢?这个防火墙设置如何查看?谢谢
解决方案四:
isReachable使用的是TCP协议去连端口7.ping直接使用icmp协议去连接端口7.两个不一样,如果对端对连接协议做了限制,结果也不一样。
解决方案五:
引用3楼t_jl1979的回复:

isReachable使用的是TCP协议去连端口7.ping直接使用icmp协议去连接端口7.两个不一样,如果对端对连接协议做了限制,结果也不一样。

更正下,icmp没有端口号的说法。也就是ping是没有端口限制的。
解决方案六:
引用4楼t_jl1979的回复:

Quote: 引用3楼t_jl1979的回复:
isReachable使用的是TCP协议去连端口7.ping直接使用icmp协议去连接端口7.两个不一样,如果对端对连接协议做了限制,结果也不一样。

更正下,icmp没有端口号的说法。也就是ping是没有端口限制的。

所以两个是完全不一样的,一个TCP协议检测,一个ICMP协议检测。
解决方案七:
引用2楼byrbupt的回复:

isReachable和ping都是基于ICMP请求回应的服务,那防火墙应该是一块拦截服务啊,怎么能拦截java程序呢?这个防火墙设置如何查看?谢谢

你说的是基于端口的设置但是现在很多是基于进程管理的也就是说你启动一个java去发送ICMP,这个和内置的应用服务肯定是不一样的http://blog.163.com/crazy20070501@126/blog/static/128659465201210910537998/你看下其中的“如果是添加自己的应用程序许可规则,可以通过下面的“允许允许另一程序”按钮进行添加,方法跟早期防火墙设置类似,点击后如下图”你也可以参考这里http://stackoverflow.com/questions/2448666/how-to-do-a-true-java-ping-from-windows/2448719#2448719中间人家是这么说的isReachable()willuseICMPECHOREQUESTsiftheprivilegecanbeobtained,otherwiseitwilltrytoestablishaTCPconnectiononport7(Echo)ofthedestinationhost.

时间: 2024-10-29 00:27:29

isReachable 与 ping的关系的相关文章

Twitter联手苹果 将与其音乐社交网站Ping整合

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 CNET科技资讯网11月12日国际报道 微博网站Twitter周四表示,其服务将与苹果新推出的音乐社交网站Ping整合. 苹果今年9月份推出音乐社交网络Ping,与iTunes一同使用,用户能够跟踪艺术家,并在好友圈内推荐歌曲. Twitter表示,逾1.75亿注册用户可将账户与Ping连接,通过Twitter信息直接从iTunes商店购买音

请问C#如何判断网页能否正常访问,以及如何获取网页上的错误信息。

问题描述 请问C#如何判断网页能否正常访问,以及如何获取网页上的错误信息.例如:网页能访问,其中部分模块报错,如读数据库报错.这些信息如何获取?另外,我通过ie可以访问一个网站的首页,速度较慢,但是我通过c#的ping命令获取到的信息是超时(这个应该是防火墙的原因吧),用HttpWebRequest获取网页信息也是无法访问,这应该如何解决? 解决方案 解决方案二:错误消息自己捕获记录,用log4net好点http访问和ping没有关系解决方案三:我是远程判断别人的网页是否有错

Wordpress做企业站的利与弊

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 说到企业站,耳熟能详的几个系统大家都能脱口而出,良精,万博,Medipro的自助系统等等,这些系统都带有成熟的企业模型,内含了企业宣传的方方面面,是做企业站的首选!在09年,生成html又成了这些系统的主要卖点!与此同时,这些商业化程序也是爆漏洞最多的程序,经常会看到这样那样的漏洞导致站点被入侵,程序被打包,页面被挂马等等! 上面说些题外话,

请教为什么我搞android ping win7或者手机会失败,跟网段有关系,代码应该没问题?

问题描述 请教为什么我搞android ping win7或者手机会失败,跟网段有关系,代码应该没问题? 代码基本都是网上那种类似的例子,我就是单纯的手机ping一下,结果当手机同一个网段时候有时候会ping通,有时候一个手机就不行,单纯ping电脑都是失败,手机用的是360随身wifi,ip与电脑不同,手机IP是172开头,电脑是192.168开头,请问是哪的事情,基本网上我都找了,代码如下: public boolean pingHost(String str) { boolean resa

Ping命令的幕后过程及其返回信息的分析

"Ping"命令是我们在判断网络故障常用的命令,但您真正明白这个命令运行后会发生什么,以及出现的各种信息说明了什么吗?本人将平时工作中积累的经验介绍给大家. "Ping"的幕后过程 我们以下面一个网络为例:有A.B.C.D四台机子,一台路由RA,子网掩码均为255.255.255.0,默认路由为192.168.0.1 1.在同一网段内 在主机A上运行"Ping 192.168.0.5"后,都发生了些什么呢? 首先,Ping命令会构建一个固定格式的

关于防火墙总是被别人PING的问题

问:请问高手,我的电脑总是每4-5分钟就有许多很古怪的IP来PING我的防火墙.这有什么办法解决?另外,我的防火墙是瑞星的,每次遇到这问题,我总是把那些PING我电脑的IP地址输入网络黑名单,使其无法无法向我电脑传播病毒.电脑配置是XP2,微软6.0的浏览器,还有我家电脑的上网方式是电信的光缆,有个拨号程序的.网络连接属性是自动分配的IP地址,是不是一定要设置IP及子掩码的呢?如果设置,对我拨号程序有影响吗? 问题补充1:此外,我还有一个困惑想请教:我电脑的内存是512M的.就是我一打开任务管理

浅析虚拟主机与SEO关系 稳定是王道

做站的朋友都知道,主机是网站的基础,主机的好坏直接影响着网站的命运.只有稳定的主机才非常有利于搜索引擎蜘蛛的爬寻,才不会影响到收录和排名. 如果网站主机不稳定,搜索引擎蜘蛛每次来网站都长时间才能打开或者打不开的,那么搜索引擎会认定网站不能抓取新页面,就会减少蜘蛛爬行的次数和更新的次数,如果长时间主机打不开的话,搜索引擎会认定这个网站已经被关闭,不仅排名无影无踪,网站也会被严重删除收录数量,对于SEOER来说,这个网站就给判了死刑,多么杯具!所以稳定的主机,是SEO的充分必要的因素之一,对SEO意

linux下ping命令使用详解

  •ping命令一般用于检测网络通与不通,也叫时延,其值越大,速度越慢PING(PacketInternetGrope),因特网包探索器,用于测试网络连接量的程序. •ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答.它是用来检查网络是否通畅或者网络连接速度的命令. •原理:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等. 二.

路由器ping不通是怎么回事?

路由器ping不通.原因众多...现在简单讲以下几点 叫别人PING下你的IP看看. 使用PING判断TCP/IP故障--FROM YESKY 1.Ping 127.0.0.1: 127.0.0.1是本地循环地址,如果本地址无法Ping通,则表明本地机TCP/IP协议不能正常工作. 2.Ping本机的IP地址: 用IPConfig查看本机IP,然后Ping该IP,通则表明网络适配器(网卡或MODEM)工作正常,不通则是网络适配器出现故障. 3.Ping同网段计算机的IP: Ping一台同网段计算