`
tiandirensoon
  • 浏览: 596818 次
文章分类
社区版块
存档分类
最新评论

C#独立域名查询

 
阅读更多
whois.aspx



<% @Page Language="C#" %>
<% @Import Namespace="System.Net.Sockets" %>
<% @Import Namespace="System.Text" %>
<% @Import Namespace="System.IO" %>
<% @Import Namespace="System.Collections" %>
<script language="C#" runat="server">
void doQuery(Object sender, EventArgs e)
{
String strDomain = txtDomain.Text;
char[] chSplit = {'.'};
string[] arrDomain = strDomain.Split(chSplit);
// es darf genau ein domain name + ein suffix sein
if (arrDomain.Length != 2)
{
return;
}

// das suffic darf nur 2 oder 3 zeichen lang sein
int nLength = arrDomain[1].Length;
if (nLength != 2 && nLength != 3)
{
return;
}

Hashtable table = new Hashtable();
table.Add("at", "whois.nic.at");
table.Add("de", "whois.denic.de");
table.Add("be", "whois.dns.be");
table.Add("gov", "whois.nic.gov");
table.Add("mil", "whois.nic.mil");

String strServer = "whois.OnlineNIC.com";
if (table.ContainsKey(arrDomain[1]))
{
strServer = table[arrDomain[1]].ToString();
}
else if (nLength == 2)
{
// 2-letter TLD's always default to RIPE in Europe
strServer = "whois.ripe.net";
}

String strResponse;
bool bSuccess = DoWhoisLookup(strDomain, strServer, out strResponse);
if (bSuccess)
{
txtResult.Text = strResponse;
}
else
{
txtResult.Text = "Lookup failed";
}
}

bool DoWhoisLookup(String strDomain, String strServer, out String strResponse)
{
strResponse = "none";
bool bSuccess = false;

TcpClient tcpc = new TcpClient();
try
{
tcpc.Connect(strServer, 43);
}
catch(SocketException ex)
{
strResponse = "Could not connect to Whois server";
return false;
}

strDomain += "/r/n";
Byte[] arrDomain = Encoding.ASCII.GetBytes(strDomain.ToCharArray());
try
{
Stream s = tcpc.GetStream();
s.Write(arrDomain, 0, strDomain.Length);

StreamReader sr = new StreamReader(tcpc.GetStream(), Encoding.ASCII);
StringBuilder strBuilder = new StringBuilder();
string strLine = null;

while (null != (strLine = sr.ReadLine()))
{
strBuilder.Append(strLine+"<br>");
}
tcpc.Close();

bSuccess = true;
strResponse = strBuilder.ToString();
}
catch(Exception e)
{
strResponse = e.ToString();
}

return bSuccess;
}
</script>
<html>
<head>
<title></title>
</head>
<body>

<form runat="server">
域名whois查询(.NET版): <asp:TextBox id="txtDomain" value="3cts.com" runat="server" />
&nbsp;<asp:Button id="btnQuery" OnClick="doQuery" text="Query!" runat="server" />
<BR><HR width="100%"><BR>
<asp:label id="txtResult" runat="server" />
</form>

</body>
</html>
分享到:
评论

相关推荐

    C#独立域名查询代码

     @Page Language=”C#” %&gt; &lt;&#37; @Import Namespace=”System.Net.Sockets” %&gt; &lt;&#37; @Import Namespace=”System.Text” %&gt; &lt;&#37; @Import Namespace=”System.IO” %&gt; &lt;&#37; @...

    asp.net(C#) BBS(论坛)程序源码

    本地调试将论坛压缩包解压到IIS对应的网站目录(如C:\inetpub\wwwroot\bbs),网络调试将解压出来的所有文件通过FTP上传到您的主页空间(如上传到空间中的bbs目录),如果您是独立服务器可参照本地调试的方式进行安装。...

    云枫工作室企业网站源代码(.net)Version 2.0 是云枫工作室基于.net环境独立开发的一套适用于企业使用的企业网站系统

    云枫工作室企业网站源代码(.net)Version 2.0 是云枫工作室基于.net环境独立开发的一套适用于企业使用的企业网站系统。.net+access.网站使用了模板动态生成静态页面技术,前台页面是生成纯静态的。网站包括了信息管理...

    asp.net(C#) BBS(论坛)程序源码 for vs2008

    本地调试将论坛压缩包解压到IIS对应的网站目录(如C:\inetpub\wwwroot\bbs),网络调试将解压出来的所有文件通过FTP上传到您的主页空间(如上传到空间中的bbs目录),如果您是独立服务器可参照本地调试的方式进行安装。...

    asp.net知识库

    多样式星期名字转换 [Design, C#] .NET关于string转换的一个小Bug Regular Expressions 完整的在.net后台执行javascript脚本集合 ASP.NET 中的正则表达式 常用的匹配正则表达式和实例 经典正则表达式 delegate vs. ...

    基于 ASP .net + access 的个人博客系统 源码

    云枫博客系统是由云枫工作室独立开发的一个博客系统,系统环境:asp.net 2.0 +access 开发语言 C#.net。 使用步骤: 1.解压源代码压缩包,然后把源代码上传到服务器空间上(注:服务器空间需支持.net2.0,文件可写...

    清竹虚拟主机管理系统 v5.94

    每个站点独立匿名系统用户,独立磁盘访问权限,防FSO入侵、防跨站等WEB安全弱点 创建虚拟机时系统自动建立系统匿名帐号,并对IIS站点、用户文件夹绑定,无须人工干预 主被控信息加密交互,防止命令信息截获 六、...

    PWBlog 是一套基于php+mysql 数据库平台架构的多用户博客系统,该系统融合了Blog的最新元素

    PWBlog 是一套基于php+mysql 数据库平台架构的多用户博客系统,该系统融合了Blog的最新元素,拥有强大的个人主页系统,独立的二级域名功能,灵活的用户模版系统,丰富的朋友圈和个性相册功.zip

    清竹虚拟主机管理系统最新官方版

    每个站点独立匿名系统用户,独立磁盘访问权限,防FSO入侵、防跨站等WEB安全弱点 创建虚拟机时系统自动建立系统匿名帐号,并对IIS站点、用户文件夹绑定,无须人工干预 主被控信息加密交互,防止命令信息截获 六、集群...

    HdhCmsPaysPC端支付宝收款源码-.net

    HdhCmsPays支付宝在线收款(ASP.NET(C#)版) 本收款功能组件无需数据库,在Self.Config文件中配置好接口与在HdhApp.Config中配置好授权码后即可使用。 演示支付地址:http://testpay.hdhcms.com/ 本系统下属于HDHCMS...

    MIS金智打印通

    1、在网友的热心支持下免费提供空间和域名 www.webmis.com.cn 2004年04月07日 发布不带.dll的源码供交流 2005年01月24日 1、提供VB.NET及C#的使用示例工程 2、发布V2.2测试版 2005年01月22日 将打印示例...

    MF00353-企业级CMS站群系统源码.zip

    开发语言 : C# 数据库 : Access 开发工具 : VS2010 源码类型 : WebForm 前台栏目功能:  公司简介、新闻中心、产品展示、在线留言、企业招聘、友情链接、联系我们。  后台管理功能:  内容管理:基础资料、...

    hishop网店系统 v5.1 beta v5.1 beta

    Hishop 自2008年6月15日发布5.0正式版以来, 吸取了大量用户的宝贵意见和建议,对Hishop5.0产品做了进一步的优化和功能增加,2008年7月21日,Hishop5.1...08、[修改]支付接口实现为独立的插件,方便支付接口的更新维护

    wicket 开发指南

    Wicket 是什么?...Wicket 现在是Sourceforge 上一个非常活跃的项目,开发源码基于Apache 协议(也是最宽松,对商业最友好的的源码协议),项目位于http://wicket.sourceforge.net,另外它还有一个独立的域名网站...

    人才招聘系统全新支持APP客户端、微信招聘、互动问答、智能搜索、会员积分、短信、地图找工作、WAP手机频道等

    40、分站功能独立,支持二级域名访问分站。 41、数据采集 电子地图 企业多模板功能。 42、在首页、企业、职位和新闻页新增分享代码。 43、增加互动问答,更有知识性。 44、增加会员积分,可用税分兑换商品。 ...

    DES算法实现 DES.rar

    支持栏目页,正文页独立设置keywords和description 3.支持SQL server快速切换(留给付费用户) 2015-07-27(V1.7.0) 1.简化了栏目编辑时根据不同模型选择模板的过程 2.修正了删除留言出错的BUG 3.修正了...

    sitrep

    检查是在运行时从独立文件动态加载的。 这使操作员可以快速修改现有支票,或根据需要添加新支票。 支票按类别分组,可以标记为OpSec安全/不安全。 不安全检查仅在提供/ AllowUnsafe标志的情况下加载。 有趣的结果...

    服务器上开设多个站点.doc

    基本有2种方式: 1 独立站点:利用WEB站点向导,可以建立多个站点,不同的是需要输入不同的端口——首个 站点的默认端口是80,后面的站点则需要 修改为81/82/8080/等等了。设置完成后,输入http://ip:端口号/就可以...

    GBlog好文本博客系统 v2.0

    GBlog新版采用C#语言编写,采用全新的静态页生成方式,继承asp版本的标签化设计,模板制作更加简单,搜索引擎优化效果显著提升。好文本个人博客系统(GBlog)吸取之前版本的经验,更重视生成更新速度、易用性和内部...

    《Wicket开发指南一书》PDF版本下载

    Wicket现在是Sourceforge上一个非常活跃的项目,开发源码基于Apache协议(也是最宽松,对商业最友好的的源码协议),项目位于http://wicket.sourceforge.net,另外它还有一个独立的域名网站...

Global site tag (gtag.js) - Google Analytics