System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName()).AddressList ;

解决方案 »

  1.   

    The .Net DNS class can be used to get a host name or an IP of a given host name. To use DNS class in your project, you need to include System.NetInclude System.Net ReferenceAnd say I want to get IP address if www.mindcracker.com. The given code will do that for you.using System;
    using System.Net;
    namespace DNSName
    {
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class Class1
    {
    static void Main(string[] args)
    {
    IPHostEntry ipEntry = Dns.GetHostByName ("www.mindcracker.com");
    IPAddress [] IpAddr = ipEntry.AddressList;
    for (int i = 0; i < IpAddr.Length; i++)
    {
    Console.WriteLine ("IP Address {0}: {1} ", i, IpAddr[i].ToString ());
    }
    }
    }

     
     Get Local System's host name and IPUse GetHostName with no parameter to return the host name of a local machine. Once you have host name, pass this host name as a parameter in GetHostByName. See above.string strHostName = Dns.GetHostName (); 
      

  2.   

    但是我用localhost的话得出的是127.0.0.1,怎么样才能得到自己的ip啊?
      

  3.   

    using System.Net;
    using System.Net.socket;
    IPHostEntry ipHostInfo = Dns.Resolve(Dns.GetHostName());
    IPAddress ipAddress = ipHostInfo.AddressList[0];
    string ip = ipAddress.ToString();
      

  4.   

    四.读取计算机名称本机固定IP地址源程序   IP01.cs源程序:  //导入程序用到的名称空间  using System ;  using System.Net;  using System.Windows.Forms ;  using System.Drawing ;  public class Form3 : Form  {  //定义二个标签  private Label label1 ;  private Label label2 ;  public static void Main ( )  {  Application.Run ( new Form3 ( ) ) ;  }  // 构造窗体  public Form3 ( )  {  // 建立标签并且初始化  this.label1 = new System.Windows.Forms.Label ( ) ;  this.label2 = new System.Windows.Forms.Label ( ) ;  //先继承一个Label 类  label1.Location = new System.Drawing.Point ( 24 , 16 ) ;  label2.Location = new System.Drawing.Point ( 44 , 36 ) ;  //设定 Label的显示位置  label1.Text = "主机名称:" + System.Net.Dns.GetHostName ( ) ;  // 显示本机的计算机名称  label2.Text = "IP 地址:" + getIPAddress ( ) ;  // 显示本机的局域网IP地址  label1.Size = new System.Drawing.Size ( 200 , 50 ) ;  label2.Size = new System.Drawing.Size ( 200 , 80 ) ;  //设定标签的大小  label1.TabIndex = 0 ;  label2.TabIndex = 1 ;  label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter ;  label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter ;  // 设定标签的对齐方式  this.Text = "获得主机名称和IP地址!" ;  this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent ;  this.AutoScaleBaseSize = new System.Drawing.Size ( 8 , 16 ) ;  this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D ;  // 设定窗体的边界类型  this.ForeColor = System.Drawing.SystemColors.Desktop ;  this.Font = new System.Drawing.Font ( "宋体" , 10 , System.Drawing.FontStyle.Bold ) ;  // 设定字体、大小就字体的式样  this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide ;  this.ClientSize = new System.Drawing.Size ( 250 , 250 ) ;  //把标签加到窗体中  this.Controls.Add ( this.label1 ) ;  this.Controls.Add ( this.label2 ) ;  }  private static string getIPAddress ( )  {  System.Net.IPAddress addr;  // 获得本机局域网IP地址  addr = new System.Net.IPAddress ( Dns.GetHostByName ( Dns.GetHostName ( ) ) .AddressList [0].Address ) ;  return addr.ToString ( ) ;  }  }