Respostas:
/sbin/ifconfig -a
inet addr?
Se você tiver um endereço interno em uso, marque
curl http://myip.dnsomatic.com
pode ser uma boa idéia para os shell do Unix.
Ou simplesmente insira esse URL no seu navegador.
Se você receber uma resposta diferente do " ifconfig -a" resultado,
o ifconfigseu endereço interno foi fornecido - o que provavelmente não funcionará de fora.
Mesmo que tudo pareça bem, você pode ter um firewall que desaprova as conexões ssh recebidas .
Nesse momento, você deve experimentar a porta de interesse de um navegador na máquina em,
http://www.canyouseeme.org/
Isso confirmará a conectividade por meio de,
curl http://myip.dnsomatic.com
curl ifconfig.me
/bin/hostname -i
hostname --all-ip-addresses. Exibir todos os endereços de rede do host. Esta opção enumera todos os endereços configurados em todas as interfaces de rede. A interface de loopback e os endereços locais de link IPv6 são omitidos. Ao contrário da opção -i, essa opção não depende da resolução de nomes. Não faça suposições sobre a ordem da saída.
/bin/hostname -I
/bin/hostname -iapenas dá 127.0.1.1, o que é inútil.
/sbin/ifconfig|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'
Se você precisar do seu endereço interno, anexe sua interface após o ifconfig, por exemplo
/sbin/ifconfig eth0|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'
Se você está atrás de um NAT e precisa do IP público, use este:
wget -q -O - checkip.dyndns.org | sed -e /. Endereço IP atual: // '-e' s / <. $ // '
extraído de: http://www.go2linux.org/what-is-my-public-ip-address-with-linux
Se você precisar descobrir qual é o endereço IP do seu roteador, poderá executar este comando.
dig + short myip.opendns.com @ 208.67.222.222 @ 208.67.220.220
Se você estiver usando o OpenDNS para o seu servidor DNS, poderá reduzi-lo para:
dig + short myip.opendns.com
Você também pode usar este comando.
curl http://myip.dnsomatic.com
Se você possui várias interfaces, pode ser útil especificar qual você deseja IP. se você deseja o endereço IPV4 da interface 'eth0':
ip addr show dev eth0 | grep "inet " | awk '{ print $2 }'
se você deseja o endereço IPV6 da interface 'eth0':
ip addr show dev eth0 | grep "inet6 " | awk '{ print $2 }'
se você deseja procurar um IP entre duas interfaces comuns de um laptop, wlan0 e eth0:
CURRENT_IP=''
for INTERFACE in wlan0 eth0; do
if [ -z $CURRENT_IP ]; then
CURRENT_IP=$(ip addr show dev $INTERFACE | grep "inet " | awk '{ print $2 }')
fi
done
Apenas enrole esta página :
$ curl wtfismyip.com/text
Aqui está uma linha que também funciona no Linux e OS X e retornará o primeiro endereço que não é local:
ifconfig | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'
Enviar créditos para /programming//a/13322549/99834
LOCAL_IP=`/bin/hostname -I | sed 's/ //g'`
A maneira mais simples de fazer isso é provavelmente
ifconfig eth0
supondo que a máquina tenha um único endereço IP na interface com fio padrão - você pode precisar
ifconfig wlan0
se estiver em WiFi.
O que eu entendo é que você deseja conectar uma máquina ubuntu remota com ip dinâmico. Acesse o site dyndns.org e abra uma conta gratuita. Em seguida, na máquina remota, você precisa instalar uma ferramenta ip dinâmica.
sudo aptitude install dyndns-client
para que você possa ssh máquina remota via
ssh username@yourdynamicnamealias.dyndns.org
Portanto, após a configuração, você nunca precisará do endereço IP da máquina remota.
se você precisar de apenas um IP da interface fornecida, poderá:
ifconfig eth0 | grep "inet " | awk '{gsub("addr:","",$2); print $2 }'
Certa vez, joguei golfe na extração de endereço IP no Linux:
http://www.catonmat.net/blog/golfing-the-extraction-of-ip-addresses-from-ifconfig/
Se você estiver procurando por um endereço IP público da caixa , use o seguinte:
dig @ns1.google.com -t txt o-o.myaddr.l.google.com +short | tr -d \"Você pode usar dig(1)opções como -4ou -6procurar especificamente um endereço IPv4 ou IPv6; O Google fornecerá uma resposta em um registro do TXTtipo, que terá aspas quando apresentado pordig ; se você quiser usar a variável posteriormente com utilitários como traceroute, você deve usar algo como tr (1) para remover as citações.
Outras opções incluem whoami.akamai.nete myip.opendns.com, que respondem com Ae AAAAregistros (em vez de TXTno exemplo acima do Google), portanto, não exigem a remoção das aspas:
dig -4 @ns1-1.akamaitech.net -t a whoami.akamai.net +short
dig -4 @resolver1.opendns.com -t any myip.opendns.com +short
dig -6 @resolver1.opendns.com -t any myip.opendns.com +shortAqui está um exemplo de script que usa todas as opções acima para definir as variáveis:
#!/bin/sh
IPANY="$(dig @ns1.google.com -t txt o-o.myaddr.l.google.com +short | tr -d \")"
GOOGv4="$(dig -4 @ns1.google.com -t txt o-o.myaddr.l.google.com +short | tr -d \")"
GOOGv6="$(dig -6 @ns1.google.com -t txt o-o.myaddr.l.google.com +short | tr -d \")"
AKAMv4="$(dig -4 @ns1-1.akamaitech.net -t a whoami.akamai.net +short)"
CSCOv4="$(dig -4 @resolver1.opendns.com -t a myip.opendns.com +short)"
CSCOv6="$(dig -6 @resolver1.opendns.com -t aaaa myip.opendns.com +short)"
printf '$GOOG:\t%s\t%s\t%s\n' "${IPANY}" "${GOOGv4}" "${GOOGv6}"
printf '$AKAM:\t%s\n$CSCO:\t%s\t%s\n' "${AKAMv4}" "${CSCOv4}" "${CSCOv6}"
Se você estiver procurando por um endereço IP privado ou por um conjunto de todos os endereços IP atribuídos à caixa, poderá usar uma combinação de ifconfig(no BSD e GNU / Linux), ip addr(no GNU / Linux), hostname(opções -ie -Iem GNU / Linux) e netstatpara ver o que está acontecendo.
vi /etc/network/interfacese definir a interface parastatic(ver help.ubuntu.com/8.10/serverguide/C/network-configuration.html )