¿Hay un método de 1 línea para obtener la dirección IP del servidor?¿Cómo obtener la dirección IP del servidor?
Gracias
¿Hay un método de 1 línea para obtener la dirección IP del servidor?¿Cómo obtener la dirección IP del servidor?
Gracias
Request.ServerVariables["LOCAL_ADDR"];
Desde el docs:.
Devuelve la dirección del servidor en el que llegó la solicitud Esto es importante en equipos en los que puede haber varias direcciones IP asociadas la computadora, y desea saber qué dirección utilizó la solicitud.
Esto es distinto de las direcciones remotas que se relacionan con la máquina del cliente.
+1 Nice , No sabía que existía – Pwninstein
Sí, muchas cosas ocultas en la colección ServerVariables. –
Respuesta perfecta: a partir de los antiguos días de ASP Classic, debería haber recordado esta :) –
partir de la búsqueda por la red he encontrado código siguiente: (no pude encontrar un solo método de línea no)
string myHost = System.Net.Dns.GetHostName();
// Show the hostname
MessageBox.Show(myHost);
// Get the IP from the host name
string myIP = System.Net.Dns.GetHostEntry(myHost).AddressList[index].ToString();
// Show the IP
MessageBox.Show(myIP);
-> donde índice de es el índice de su dirección IP host (es decir, conexión de red).
Código de: http://www.geekpedia.com/tutorial149_Get-the-IP-address-in-a-Windows-application.html
Como otro (s) han publicado, System.Net.Dns.GetHostEntry
es el camino a seguir. Cuando acceda a la propiedad AddressList
, deberá tener en cuenta la propiedad AddressFamily
, ya que podría devolver los resultados de IPv4 E IPv6.
Este método devolverá la dirección IP pública de su máquina cuando ejecute este código en su PC y cuando implemente su aplicación en el servidor devolverá la dirección IP del servidor.
public static string Getpublicip()
{
try
{
string externalIP = "";
var request = (HttpWebRequest)WebRequest.Create("http://icanhazip.com.ipaddress.com/");
var response = (HttpWebResponse)request.GetResponse();
var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
externalIP = new WebClient().DownloadString("http://icanhazip.com");
return externalIP;
}
catch (Exception e)
{
return "null";
}
}
Lo que significa "servidor" - máquina de procesamiento de ASP.Net o del lado del servidor cortafuegos/puerta/proxy – Dewfy
Es necesario tomar en cuenta que no puede haber tantas direcciones IP asignadas a su servidor. – UserControl
Posible duplicado de http://stackoverflow.com/q/646525/292060, aunque esto tiene una mejor respuesta seleccionada. – goodeye