Get IP address in console application

I am looking to find out what my IP address is from a console application.

I am using a web application using the Request.ServerVariables and / or Request.UserHostAddress .

How can this be done in a console application?

+16
source share
6 answers

The easiest way to do this:

 using System; using System.Net; namespace ConsoleTest { class Program { static void Main() { String strHostName = string.Empty; // Getting Ip address of local machine... // First get the host name of local machine. strHostName = Dns.GetHostName(); Console.WriteLine("Local Machine Host Name: " + strHostName); // Then using host name, get the IP address list.. IPHostEntry ipEntry = Dns.GetHostEntry(strHostName); IPAddress[] addr = ipEntry.AddressList; for (int i = 0; i < addr.Length; i++) { Console.WriteLine("IP Address {0}: {1} ", i, addr[i].ToString()); } Console.ReadLine(); } } } 
+23
source

IPAddress [] addresslist = Dns.GetHostAddresses (Dns.GetHostName ());

+3
source

The System.Net namespace is your friend here. In particular, APIs such as DNS.GetHostByName.

However, any computer can have multiple IP addresses (multiple network adapters, IPv4 and IPv6, etc.), so it is not as simple as you imagine.

+2
source

Try the following:

 String strHostName = Dns.GetHostName(); Console.WriteLine("Host Name: " + strHostName); // Find host by name IPHostEntry iphostentry = Dns.GetHostByName(strHostName); // Enumerate IP addresses int nIP = 0; foreach(IPAddress ipaddress in iphostentry.AddressList) { Console.WriteLine("IP #" + ++nIP + ": " + ipaddress.ToString()); } 
+2
source
 using System; using System.Net; public class DNSUtility { public static int Main (string [] args) { String strHostName = new String (""); if (args.Length == 0) { // Getting Ip address of local machine... // First get the host name of local machine. strHostName = DNS.GetHostName (); Console.WriteLine ("Local Machine Host Name: " + strHostName); } else { strHostName = args[0]; } // Then using host name, get the IP address list.. 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; } } 

source: http://www.codeproject.com/KB/cs/network.aspx

+1
source

System.Net.Dns.GetHostAddresses () should do this.

+1
source

Source: https://habr.com/ru/post/927316/


All Articles