TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
在J2SE5.0
中的InetAddress
类中增加了一个isReachable
方法。可以使用这个方法来探测主机是否可以连通。这个方法有两个重载形式,它们的定义如下:
public
boolean
isReachable(
int
timeout)
throws
IOException
public
boolean
isReachable(NetworkInterface netif,
int
ttl,
int
timeout)
throws
IOException
第一个重载形 式有一个timeout
参数,可以通过这个参数设置连接超时(单位:毫 秒)。第二个重载形式多了两个参数:netif
和ttl
。通过netif
参 数可以使用一个NetworkInterface
对象来确定客户端使用哪 个网络接口来测试主机的连通性。ttl
是指测试连通性过程中的最大连接跃 点数(从客户机到达远程主机所经过的最大路由数就是最大连接跃点数,一个路由被称为一个跃点,在Windows
网络连接中的“高级TCP/IP
设置”对话框最下面可以设置接口跃点数),如果达到最大连接跃点数,还没找到远程主机,isReachable
方法就认为客户机和远程主机之间是不可连通的。
isReachable
方法是通过连接主机的echo
端口来确定客户端和服务端是否可 连通。但在Internet
上使用这个方法可能会因为放火墙等因素而无法 连通远程主机(实际上,远程主机是可以连通的),因此,isReachable
在Internet
上并不可靠。但我们可以将isReachable
方法应用于局域网中。
|
|