我正在尝试查询网址并获取当前的非缓存结果,例如根名称服务器和管理联系人电子邮件。 你能指点我一个指南,里面有关于如何实现这一目标的示例代码。 谢谢 托米
答案 0 :(得分:1)
看起来你需要WhoIs查找。 DNS查找不会返回管理电子邮件。 DNS查找返回DNS记录,例如A,CNAME,MX和TXT记录。
对于whois查询,您需要从域所属的whois服务器查询WhoIs数据。以下代码段使用NetworkStream来读取.com域的WhoIs数据:
// Create new socket object
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp );
string query = "mydomain.com";
NetworkStream nst;
try
{
IPEndPoint endPoint = new IPEndPoint("whois.internic.net", 43)
socket.Connect(endPoint);
nst = new NetworkStream(socket, true);
string str;
StreamWriter writer = new StreamWriter(nst);
writer.WriteLine(query);
writer.Flush();
StringBuilder builder = new StringBuilder();
StreamReader reader = new StreamReader(nst);
while ((str = reader.ReadLine()) != null)
{
builder.Append(str);
builder.Append(
#if !NETCF
Environment.NewLine
#else
"\r\n"
#endif
);
}
result = builder.ToString();
}
finally
{
if (nst != null)
nst.Close();
socket.Close();
}