Respuestas:
/sbin/ifconfig -a
inet addr
?
Si tiene una dirección interna en uso, verifique
curl http://myip.dnsomatic.com
podría ser una buena idea en unix shells.
O simplemente coloque esa URL en su navegador.
Si se obtiene una respuesta diferente de la " ifconfig -a
" En consecuencia,
el ifconfig
dio su dirección interna - la cual probablemente no funcionará desde el exterior.
Incluso si todo parece estar bien, podría tener un firewall instalado que no permita las conexiones ssh entrantes .
En ese momento, debe probar el puerto de interés desde un navegador en la máquina en,
http://www.canyouseeme.org/
Eso confirmará la conectividad a través de,
curl http://myip.dnsomatic.com
curl ifconfig.me
/bin/hostname -i
hostname --all-ip-addresses
. Mostrar todas las direcciones de red del host. Esta opción enumera todas las direcciones configuradas en todas las interfaces de red. La interfaz de bucle invertido y las direcciones locales de enlace IPv6 se omiten. Contrariamente a la opción -i, esta opción no depende de la resolución del nombre. No haga suposiciones sobre el orden de la salida.
/bin/hostname -I
/bin/hostname -i
solo da 127.0.1.1
, lo que es inútil.
curl icanhazip.com
tee hee!
Desde http://www.commandlinefu.com/commands/view/2966/return-external-ip
/sbin/ifconfig|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'
Si necesita su dirección interna, agregue su interfaz después de ifconfig, p. Ej.
/sbin/ifconfig eth0|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'
Si está detrás de un NAT y necesita la IP pública, use esto:
wget -q -O - checkip.dyndns.org | sed -e 's /. Dirección IP actual: // '-e' s / <. PS
tomado de: http://www.go2linux.org/what-is-my-public-ip-address-with-linux
Si necesita averiguar cuál es la dirección IP de su enrutador, puede ejecutar este comando.
dig + short myip.opendns.com @ 208.67.222.222 @ 208.67.220.220
Si está utilizando OpenDNS para su servidor dns, puede acortarlo a:
dig + short myip.opendns.com
También puedes usar este comando.
curl http://myip.dnsomatic.com
Si tiene varias interfaces, podría ser útil especificar cuál desea IP. si desea la dirección IPV4 de la interfaz 'eth0':
ip addr show dev eth0 | grep "inet " | awk '{ print $2 }'
si desea la dirección IPV6 de la interfaz 'eth0':
ip addr show dev eth0 | grep "inet6 " | awk '{ print $2 }'
si desea buscar una IP entre dos interfaces comunes de una computadora portátil, wlan0 y 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
Solo riza esta página :
$ curl wtfismyip.com/text
Aquí hay una línea que también funciona en Linux y OS X, y devolverá la primera dirección que no sea local:
ifconfig | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'
Enviar créditos a /programming//a/13322549/99834
LOCAL_IP=`/bin/hostname -I | sed 's/ //g'`
La forma más sencilla de hacerlo es probablemente
ifconfig eth0
suponiendo que la máquina tenga una sola dirección IP en la interfaz cableada predeterminada, es posible que necesite
ifconfig wlan0
si está en WiFi
Lo que entiendo es que desea conectar una máquina remota de ubuntu que tiene ip dinámica. Vaya al sitio dyndns.org y abra una cuenta gratuita. Luego, en la máquina remota, debe instalar una herramienta de IP dinámica.
sudo aptitude install dyndns-client
para que pueda ssh máquina remota a través de
ssh username@yourdynamicnamealias.dyndns.org
Entonces, después de la configuración, nunca necesitará la dirección IP de la máquina remota.
si necesita una sola IP de una interfaz dada, puede hacer:
ifconfig eth0 | grep "inet " | awk '{gsub("addr:","",$2); print $2 }'
Una vez jugué a la extracción de la dirección IP en Linux:
http://www.catonmat.net/blog/golfing-the-extraction-of-ip-addresses-from-ifconfig/
Si está buscando una dirección IP pública del cuadro , puede usar lo siguiente:
dig @ns1.google.com -t txt o-o.myaddr.l.google.com +short | tr -d \"
Puede usar dig(1)
opciones como -4
o -6
para buscar específicamente una dirección IPv4 o IPv6; Google proporcionará una respuesta en un registro de TXT
tipo, que tendrá citas a su alrededor cuando sea presentado por dig
; si desea usar posteriormente la variable con utilidades como traceroute
, debe usar algo como tr (1) para eliminar dichas comillas.
Otras opciones incluyen whoami.akamai.net
y myip.opendns.com
, que responden con A
y AAAA
registros (en lugar de TXT
como en el ejemplo anterior de Google), por lo que no requieren que se eliminen las comillas:
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 +short
Aquí hay un script de muestra que utiliza todas las opciones anteriores para establecer las variables:
#!/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}"
Si está buscando una dirección IP privada, o un conjunto de todas las direcciones IP asignadas a la caja, puede usar alguna combinación de ifconfig
(en BSD y GNU / Linux), ip addr
(en GNU / Linux), hostname
(opciones -i
y -I
en GNU / Linux) y netstat
para ver qué está pasando.
vi /etc/network/interfaces
y configure la interfaz parastatic
(consulte help.ubuntu.com/8.10/serverguide/C/network-configuration.html )