Retorna o IP da conexão do Cliente em Asp.Net MVC com C# (CSharp)

Classe para retornar o IP da conexão do Cliente em Asp.Net MVC com C# (CSharp).


Autor : Antonio Carlos Ferreira de Azevedo
Postado em : 24/05/2016

Retornar o IP da conexão do Cliente

Para chamar a função :

ClienteIP.getClienteIP()
A função retorna uma string com o com o IP da conexão do usuário Cliente

Crie uma classe na pasta Models de seu projeto e de o nome de ClienteIP.cs, copie e cole o código abaixo

Segue a Função

/* 
 * getClienteIP
 * 
 * Retorna o IP da Conexao do Cliente
 * 
 * Visite nossa página http://www.codigoexpresso.com.br
 * 
 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
public static class ClienteIP
{
    /// <summary>
    /// Retorna o IP da Conexao do Cliente
    /// </summary>
    /// <returns>string com o IP do Cliente</returns>
    public static string getClienteIP()
    {
        // Conexão utilizando proxy 
        System.Net.ServicePointManager.Expect100Continue = false;


        string ipUser = string.Empty;
        try
        {
            if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] == null)
            {
                // Conexão sem utilizar proxy 
                ipUser = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
            }
            else
            {
                ipUser = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
            }
        }
        catch
        {
            ipUser = string.Empty;
        }
        
        // Retornando o IP capturado que estava guardado na variável de servidor 
        return ipUser;
    }
}
}


Exemplo de uso

string IPCliente = ClienteIP.getClienteIP();



Comentários