Get IP address using c#
To obtain the IP address of a device using C#, you can use the Dns class from the System.Net namespace. Here's an example of how you can retrieve the IP address:
using System; using System.Net; public ActionResult Index() { var ipAddress= GetUserIpAddress(); return View(); } public string GetUserIpAddress(bool Lan = false) { string userIPAddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (String.IsNullOrEmpty(userIPAddress)) userIPAddress = Request.ServerVariables["REMOTE_ADDR"]; if (string.IsNullOrEmpty(userIPAddress)) userIPAddress = Request.UserHostAddress; if (string.IsNullOrEmpty(userIPAddress) || userIPAddress.Trim() == "::1") { Lan = true; userIPAddress = string.Empty; } if (Lan) { if (string.IsNullOrEmpty(userIPAddress)) { //This is for Local(LAN) Connected ID Address string stringHostName = Dns.GetHostName(); //Get Ip Host Entry IPHostEntry ipHostEntries = Dns.GetHostEntry(stringHostName); System.Net.IPAddress[] arrIpAddress = ipHostEntries.AddressList; try { foreach (IPAddress ipAddress in arrIpAddress) { if (ipAddress.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) { userIPAddress= ipAddress.ToString(); } } if(string.IsNullOrEmpty(userIPAddress)) userIPAddress = arrIpAddress[arrIpAddress.Length - 1].ToString(); } catch { try { userIPAddress = arrIpAddress[0].ToString(); } catch { try { arrIpAddress = Dns.GetHostAddresses(stringHostName); userIPAddress = arrIpAddress[0].ToString(); } catch { //local address userIPAddress = "127.0.0.1"; } } } } } return userIPAddress; }
In the above example, replace the hostname variable with the desired hostname or IP address for which you want to obtain the IP address. The Dns.GetHostEntry method retrieves information about the specified hostname, including its IP addresses. The IP addresses are stored in the AddressList property of the IPHostEntry object. The example loops through each IP address and prints it to the console.
Note that the Dns.GetHostEntry method may perform a DNS lookup, which means it relies on DNS resolution to obtain the IP address. If the DNS lookup fails, an exception will be thrown. Make sure to handle any exceptions appropriately in your code.