Dica – Como saber o IP publico via terminal Linux

A maioria das máquinas ligadas a Internet estão “atrás” de NAT! Devido às limitações a nível de endereçamento publico IPv4, a maioria das máquinas tem configurado um endereço privado e quando precisam de “sair” para a Internet, o seu endereço é traduzido para um endereço publico. Esta técnica é idêntica à utilizada  numa central telefónica…quando estamos na rede local usamos normalmente extensões (ex.1010)  mas quando pretendemos ligar para o exterior a nossa chamada sai com um número telefónico valido (ex.21123456).

Voltando às redes de dados, quando estamos num terminal Linux, como poderemos nós saber com que IP publico a nossa máquina sai para a Internet?

nat_01

Antes de ensinar como visualizar o endereço IP publico de uma máquina vamos apenas rever qual a diferença entre um endereço privado e um endereço publico.

Basicamente as máquina quando estão ligadas em rede possuem um endereço IP configurado (seja ele IPv4 (normalmente) ou IPv6), de forma a poderem ser alcançadas por outras máquinas.

Os endereços públicos são geridos por uma entidade reguladora, muita das vezes são pagos e permitem identificar univocamente uma máquina (PC, routers,etc) na Internet. O organismo que gere o espaço de endereçamento público (endereços IP “encaminháveis”) é a Internet Assigned Number Authority (IANA). De referir que com o IPv6 o espaço de endereçamento é bastante superior quando comparado ao espaço de endereço oferecido pelo IPv4.

Os endereços privados, não nos permitem acesso directo à Internet, no entanto esse acesso é possível sendo necessário recorrer a mecanismos de NAT (Network Address Translation) que traduzem o nosso endereço privado num endereço público.

ip_00

Actualmente, quem pretender saber qual o endereço publico associado à sua máquina num determinada momento basta aceder a um dos vários serviços disponibilizados na Internet (ex: meuip, whatismyip, entre outros). E se estivermos num terminal Linux?

Como ensinamos já em vários artigos sobre Linux, se pretendermos saber a configuração IP de uma máquina linux podemos usar o comando ifconfig. No entanto, através deste comandos não conseguimos saber a informação relativa ao endereço publico. Para tal podemos usar a biblioteca  curl.

A biblioteca curl é extremamente potente uma vez  que permite a transferência de ficheiros via URL e suporta os seguintes protocolos: DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET e TFTP.

Como instalar o curl?

Caso não tenha o curl instalado pode usar o seguinte comando:

Debian/Ubuntu

sudo apt-get install curl

RedHat/Fedora/CentOS

yum install curl

Depois de instalado, basta executar o seguinte comando:

curl ifconfig.me

Como output é devolvido o endereço publico associado à nossa máquina. Esperamos que esta dica vos seja útil. Num dos próximos artigos da rubrica Comandos Linux para totós, iremos abordar com mais detalhe a fantástica biblioteca curl.

  
     Pin It  

Arquivado na categoria: Networking


7 Comentários

  1. Muito útil!

    Obrigado.

  2. Boas pessoal!
    Qual é a melhor aplicação que vocês conhecem para saber o tráfego instantâneo de um ip, em linux? Se me pudessem ajudar agradecia muito, é que os programas que uso ou não funcionam correctamente ou então por uma razão qualquer não funcionam (ou eu não os sei usar lol).

  3. quem usa os “fantasticos” dns dynamicos de certeza que conhece o seguinte checkip.dyndns.org

    em qualquer command line(win/lnx/mac)
    telnet checkip.dyndns.org 80

  4. Um tracert a um endereço de um site qualquer também pode resolver a questão, mas não é 100% garantido.

  5. Funciona, mas é muito muito lento este comando.
    Este é bastante mais rápido:
    wget -q -O – http://checkip.dyndns.com|sed -e “s/.*Current IP Address: //” -e “s/<.*$//"

Deixe o seu comentário

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste site ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. O autor deste site reserva-se, desde já, o direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação do seu autor (nome completo e endereço válido de email) também poderão ser excluídos.