zoukankan      html  css  js  c++  java
  • [转载]C#.NET中Dns类的常用方法及说明

    IP是一种普遍应用于因特网、允许不同主机能够相互找到对方的寻址协议。IP地址由4个十进制的数字号码所组成,而每一个号码的值介于0~255之间,它虽然解决了网络上计算机的识别问题,但是IP地址确不容易记,因此域名系统(DNS)被开发出来,它专门用于将IP地址转换成有意义的文字,以方便识别记忆。

      .Net FrameWork类库内置了相关类用于处理IP地址的问题,这些类在System.Net命名空间下。这里主要对DNS类进行详细介绍。DNS类中的常用方法及说明如表所示。

      表 DNS类的常用方法及说明

     

    名称 说明
    BeginGetHostAddresses 异步返回指定主机的Internet 协议 (IP) 地址
    BeginGetHostByName 开始异步请求关于指定DNS主机名的IPHostEntry信息
    BeginGetHostEntry 已重载。 将主机名或IP地址异步解析为IPHostEntry实例
    BeginResolve 开始异步请求将DNS主机名或IP地址解析为IPAddress实例
    EndGetHostAddresses 结束对DNS信息的异步请求
    EndGetHostByName 结束对DNS信息的异步请求
    EndGetHostEntry 结束对DNS信息的异步请求
    EndResolve 结束对DNS信息的异步请求
    GetHostAddresses 返回指定主机的Internet协议(IP)地址
    GetHostByAddress 已重载。 获取IP地址的DNS主机信息
    GetHostByName 获取指定DNS主机名的DNS信息
    GetHostName 获取本地计算机的主机名
    GetType 获取当前实例的类型
    GetHostEntry 已重载。 将主机名或IP地址解析为IPHostEntry实例
    Resolve 将DNS主机名或IP地址解析为IPHostEntry实例

     

      下面对比较重要的方法进行详细介绍。

      (1)GetHostAddresses方法

      返回指定主机的Internet协议(IP)地址。

      语法:

     

    双击代码全选
    1
    2
    3
    public static IPAddress[] GetHostAddresses (
      string hostNameOrAddress
    )

     

      参数:

      hostNameOrAddress:要解析的主机名或IP地址。

      返回值:一个IPAddress类型的数组,该类型保存由hostNameOrAddress参数指定的主机的IP地址。

      (2)GetHostByAddress方法

      获取IP地址的DNS主机信息(以发生成重载),重载方法为为Dns.GetHostByAddress (IPAddress)和Dns.GetHostByAddress (String),下面分别进行介绍。

      l     Dns.GetHostByAddress (IPAddress)

      根据指定的IPAddress创建IPHostEntry实例。

      语法:

     

    双击代码全选
    1
    2
    3
    4
    public static IPHostEntry GetHostByAddress
    (
      IPAddress address
    )

     

      参数:

      address:一个IPAddress。

      返回值:一个IPHostEntry。

      l     Dns.GetHostByAddress (String)

      根据IP地址创建IPHostEntry实例。

      语法:

     

    双击代码全选
    1
    2
    3
    4
    public static IPHostEntry GetHostByAddress
    (
      string address
    )

     

      参数:

      address:IP地址。

      返回值:一个IPHostEntry实例。

      (3)GetHostName方法

      获取本地计算机的主机名。

      语法:

      public static string GetHostName ()

      返回值:包含本地计算机的DNS主机名的字符串。

      (4)Resolve方法

      将DNS主机名或IP地址解析为IPHostEntry实例。

      语法:

     

    双击代码全选
    1
    2
    3
    4
    public static IPHostEntry Resolve
    (
      string hostName
    )

     

      参数:

      hostName:DNS样式的主机名或IP地址。

      返回值:一个IPHostEntry实例,包含有关hostName中指定的主机的地址信息。

      下面列举几种常用的DNS类的使用方法。

      获得主机名的实现代码如下:

     

    双击代码全选
    1
    2
    3
    4
    5
    6
    7
    private void button1_Click(object sender, EventArgs e)
     {
       String hostName = Dns.GetHostName();
       IPHostEntry ipH = new IPHostEntry();
       ipH = Dns.Resolve(hostName);
       this.textBox1.Text = hostName;
     }

     

      根据IP或计算机名获得计算机名的实现代码如下:

     

    双击代码全选
    1
    2
    3
    4
    5
    6
    private void button2_Click(object sender, EventArgs e)
       {
         IPHostEntry hostInfo = Dns.Resolve(this.textBox1.Text.Trim().ToString());
         string strHost = hostInfo.HostName.ToString();
         MessageBox.Show(strHost);
       }

     

      获得IP列表的实现代码如下:

     

    双击代码全选
    1
    2
    3
    4
    5
    6
    7
    private void button4_Click(object sender, EventArgs e)
        {
          IPHostEntry IPH = Dns.GetHostByName(this.textBox1.Text);
          IPAddress[] myIp = IPH.AddressList;
          foreach (IPAddress ips in myIp)
            MessageBox.Show(ips.ToString());
        }

     原文地址:http://tech.ddvip.com/2008-11/122587395089331.html

  • 相关阅读:
    泛海精灵Alpha阶段回顾
    [Scrum]1.6
    【Scrum】1.5
    泛海精灵 Beta计划 (草案)
    【scrum】1.7
    学术搜索的Bug
    Linux下查看文件和文件夹大小
    求7的34次方
    去除给定的字符串中左边、右边、中间的所有空格的实现
    身份证18位验证
  • 原文地址:https://www.cnblogs.com/iack/p/3558649.html
Copyright © 2011-2022 走看看