【发布时间】:2011-06-07 06:06:17
【问题描述】:
这学期我开始了我的第一门网络课程。 我的问题是,每当我尝试将我的套接字连接到局域网外的主机时, 返回网络不可达错误。它们是 BSD 套接字还是 Java 套接字。 此外,我的 nmap 探针也返回相同的错误。 有一次我在这里问了一个关于 ping 探测的类似问题,答案是我的 LAN 代理正在拒绝 ICMP 请求。但是在建立 TCP 连接时没有 ICMP 请求,对吧? 为什么,另一方面,我的浏览器可以连接到任何主机......虽然它使用相同的代理...... 另外,(请原谅我这个长期的疑问)当我在我的套接字中将主机名指定为 www.google.com 时,会返回“未知主机”。但我的浏览器很乐意识别同一个主机。
提前谢谢你...
import java.net.*;
import java.io.*;
class Whois {
public static void main(String args[]) throws Exception{
int c;
Socket s=new Socket(args[0],Integer.parseInt((args[1])));
InputStream in=s.getInputStream();
while( (c=in.read()) != -1) {
System.out.print((char) c);
}
s.close();
}
}
【问题讨论】:
-
浏览器在通过的80端口上运行;而我的猜测是您的套接字正在被阻塞的端口上运行。
-
我也试过 80 端口。同样的错误
-
你可能需要发布一些代码,因为它可能是任意数量的东西。
-
将代码放入问题本身。在 cmets 中不可读。
-
忍受我。我对编程论坛有点陌生...
标签: sockets networking