Recuperando IP de um HOST remoto

Por questões de segurança ou simplesmente de controle de acesso construímos sistemas WEB onde uma das informações armazenadas é o IP...

Recuperando IP de um HOST remoto

 

Introdução

Por questões de segurança ou simplesmente de controle de acesso construímos sistemas WEB onde uma das informações armazenadas é o IP (Internet Protocol) do HOST remoto (usuário).

 

Neste artigo veremos como recuperar o IP de um usuário que acessa um sistema WEB.

 

IP

IP ou Internet Protocol é uma tecnologia que permite a comunicação padronizada entre computadores, mesmo que estes sejam de plataformas diferentes. Em resumo, IP é uma identificação única de um computador conectado a Internet.

 

ServerVariables

Para recuperar informações dos usuários que acessam um sistema WEB utilizaremos a coleção ServerVariables do objeto Request.

 

A coleção ServerVariables contém todas as informações geradas a partir de uma determinada requisição WEB combinada com variáveis do servidor.

 

Em particular, utilizaremos duas variáveis: HTTP_X_FORWARDED_FOR e REMOTE_ADDR. A primeira recupera o IP do HOST caso o mesmo esteja conectado à Internet utilizando um Proxy. A segunda recupera o IP do HOST remoto caso o mesmo não esteja conectado à Internet utilizando um Proxy.

 

Recuperando IP

Abaixo temos o exemplo de um método em C# que recupera o IP do HOST remoto:

 

public string IPUsuario()

{

    // Conexão utilizando proxy

    string strIPUsuario = System.Web.HttpContext.Current.Request.

ServerVariables["HTTP_X_FORWARDED_FOR"];

 

    if (strIPUsuario == null)

{

        // Conexão sem utilizar proxy

strIPUsuario = System.Web.HttpContext.Current.Request.

   ServerVariables["REMOTE_ADDR"];

}

 

    return strIPUsuario;

}

 

Obs: Caso você execute este método a nível local (localhost) o mesmo retornará o IP padrão do diretório virtual (127.0.0.1).

 

Abaixo temos a representação gráfica da interface do nosso exemplo quando executado a nível local:

 

 

 

Abaixo temos a representação gráfica da interface do nosso exemplo quando executado a nível de servidor:

 

 

 

Finalizando

Neste artigo abordamos como recuperar o IP de um HOST remoto para controle de acesso eu segurança.

 

Espero ter contribuído!

 

Até o próximo!

Diego Gazotto Dezembro

Artigos relacionados