栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何从Windows进行真正的Java ping?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何从Windows进行真正的Java ping?

isReachable()
如果可以获取特权,将使用
ICMP ECHO REQUEST
s ,否则将尝试在目标主机的端口7(Echo)上建立TCP连接。 因此,你的问题可能是配置问题,没有足够的权限在客户端计算机上执行此操作,或者是如果客户端没有权限执行此操作,则在服务器上出现了端口7问题。在你的情况下,可能两者都有,你都需要解决另一方面,以使其正常工作。
ICMP ECHO REQUEST

我在OSX和Linux客户端上测试了以下内容,并且在测试其他OSX,Linux和Windows Server计算机的可达性时可以使用。我没有Windows计算机作为客户端来运行。

import java.io.IOException;import java.net.InetAddress;public class IsReachable{    public static void main(final String[] args) throws IOException    {        final InetAddress host = InetAddress.getByName(args[0]);        System.out.println("host.isReachable(1000) = " + host.isReachable(1000));    }}

根据我在这里阅读的内容。它显然是Windows的限制,并且

ICMP PING
Windows 2000之前的系统调用都不支持Windows,因此它默认情况下尝试连接到端口7,并且在你尝试“访问”的计算机上被阻止。Java还不支持新的本机系统调用。权限是针对基于Unix的系统,因为它们需要root才能发送ICMP数据包。

如果要为Windows 2000及更高版本推出自己的Windows本机JNI

ICMP PING
,则可以使用IcmpSendEcho Function。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/411131.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号