Java 意外输出\u网络

Java 意外输出\u网络,java,dns,whois,Java,Dns,Whois,以下是我得到的: 这是我的完整代码: import java.net.*; import java.io.*; class whois { public static void main(String args[])throws Exception { int c; Socket s=new Socket("whois.internic.net",43); InputStream in=s.getInputStream(); OutputStream

以下是我得到的:

这是我的完整代码:

import java.net.*;
import java.io.*;
class whois {
  public static void main(String args[])throws Exception {
     int c;
     Socket s=new Socket("whois.internic.net",43);
     InputStream in=s.getInputStream();
     OutputStream out=s.getOutputStream();
     String str=(args.length==0 ? "www.osborne.com" : args[0])+"\n";
     byte buf[]=str.getBytes();
     out.write(buf);
     while((c=in.read())!=-1) {
       System.out.print((char)c);
     }
     s.close();
  }
}
现在,如果我去并键入osborne.com,他们会给我关于这个域名的信息。 但是我得到了不同的输出。 这是什么原因?请解释。

将您的“www.osborne.com”更改为“osborne.com”


osborne.com
是一个注册域名,您可以在whois中搜索
www.osborne.com
是一个主机,而不是一个域。

您在whois页面中键入osborne.com,但在您的代码中使用的是www.osborne.com。将您的代码更改为使用osborne.com而不是www.osborne.com。

如果您拥有一个域,该域已在whois中注册,您可以使用该域创建任意数量的主机。这些主机没有在whois中注册-没有必要,因为基本域是。还要注意whois不是DNS。您需要在DNS中放置主机,但保留域所有权信息的whois只关心“哪个名称服务器处理此域及其所有主机/子域”。但所有域均未在whois中注册?所有域都是-但不同的TLD(.com、.net、.org、.eu等)具有不同的whois服务器。顺便说一句(下次),您可以复制命令框中的文本输出,并将其粘贴到此处,这样更易于阅读(也更易于搜索)。