那篇文章,我们不预备大规模的讨论手艺问题。只是向各人介绍一下我们将若何获得一台主机的IP地址。在Win32 API中我们能够利用NetWork API完成那项工做,但是在.Net平台下我们应当若何做呢?其实操做办法与API差不多,只是各人要理解一下Namespace与Class。本站那方面的文章良多,关于Namespace与Class的内容就不介绍了。
.Net平台存在System.Net定名空间,此中的DNS类,供给了一些办法能够获取办事器的办事名或者是IP地址。DNS是一个静态类,所以它可以间接创建类实例。闲话少说,我们来看详细的法式:
namespace NKUtilities
using System;
using System.Net;
public class DNSUtility
public static int Main (string [] args)
String strHostName = new String ("");
if (args.Length == 0)
// 获得当地的IP地址
//起首获了当地机的主机名
strHostName = DNS.GetHostName ();
Console.WriteLine ("Local Machine's Host Name: " + strHostName);
else
strHostName = args[0];
// 接着利用主机名,获取IP地址列表
// 一台主机可能不但一个IP哦,不要被某些人误导了,呵呵,想想以前的163与169就晓得了
IPHostEntry ipEntry = DNS.GetHostByName (strHostName);
IPAddress [] addr = ipEntry.AddressList;
for (int i = 0; i addr.Length; i++)
Console.WriteLine ("IP Address {0}: {1} ", i, addr[i].ToString ());
return 0;
假设你想获得主机名,你能够利用不带参数的GetHostName办法,接着利用那个主机名做为参数交给GetHostByName办法,以获取IPAddress列表。最初是输出列表中的IP地址。
小鬼就该做小鬼该做的事。饿就说饿,痛就说痛,想哭就哭,想生气就生气,想做什么就做什么,用不着顾忌那么多。闯祸、惹事、浪费钱、无事惹事那些都是我们做小鬼的义务,用不着想太多!