如何获取本机主机名和IP地址,请各位帮忙!
ASP.NET      C#
------解决方案--------------------可以很容易获得客户端的IP,本机不懂
------解决方案--------------------// This program shows how to use the IPAddress class to obtain a server  
 // IP addressess and related information.   
 using System; 
 using System.Net; 
 using System.Net.Sockets; 
 using System.Text.RegularExpressions;   
 namespace Mssc.Services.ConnectionManagement 
 {   
   class TestIPAddress  
   {   
     /** 
       * The IPAddresses method obtains the selected server IP address information. 
       * It then displays the type of address family supported by the server and its  
       * IP address in standard and byte format. 
       **/ 
     private static void IPAddresses(string server)  
     { 
       try  
       { 
         System.Text.ASCIIEncoding ASCII = new System.Text.ASCIIEncoding();     
         // Get server related information. 
         IPHostEntry heserver = Dns.Resolve(server);   
         // Loop on the AddressList 
         foreach (IPAddress curAdd in heserver.AddressList)  
         {     
           // Display the type of address family supported by the server. If the 
           // server is IPv6-enabled this value is: InternNetworkV6. If the server 
           // is also IPv4-enabled there will be an additional value of InterNetwork. 
           Console.WriteLine( "AddressFamily:  " + curAdd.AddressFamily.ToString());             
           // Display the ScopeId property in case of IPV6 addresses. 
           if(curAdd.AddressFamily.ToString() == ProtocolFamily.InterNetworkV6.ToString()) 
             Console.WriteLine( "Scope Id:  " + curAdd.ScopeId.ToString());     
           // Display the server IP address in the standard format. In  
           // IPv4 the format will be dotted-quad notation, in IPv6 it will be 
           // in in colon-hexadecimal notation. 
           Console.WriteLine( "Address:  " + curAdd.ToString());           
           // Display the server IP address in byte format. 
           Console.Write( "AddressBytes:  ");     
           Byte[] bytes = curAdd.GetAddressBytes(); 
           for (int i = 0; i  < bytes.Length; i++)  
           { 
             Console.Write(bytes[i]); 
           }                             
           Console.WriteLine( "\r\n ");   
         }   
       } 
       catch (Exception e)  
       { 
         Console.WriteLine( "[DoResolve] Exception:  " + e.ToString()); 
       } 
     }   
     // This IPAddressAdditionalInfo displays additional server address information. 
     private static void IPAddressAdditionalInfo()  
     { 
       try  
       { 
         // Display the flags that show if the server supports IPv4 or IPv6 
         // address schemas. 
         Console.WriteLine( "\r\nSupportsIPv4:  " + Socket.SupportsIPv4); 
         Console.WriteLine( "SupportsIPv6:  " + Socket.SupportsIPv6);   
         if (Socket.SupportsIPv6) 
         { 
           // Display the server Any address. This IP address indicates that the server  
           // should listen for client activity on all network interfaces.  
           Console.WriteLine( "\r\nIPv6Any:  " + IPAddress.IPv6Any.ToString());   
           // Display the server loopback address.  
           Console.WriteLine( "IPv6Loopback:  " + IPAddress.IPv6Loopback.ToString());         
           // Used during