Réponses:
/sbin/ifconfig -a
inet addr
?
Vous pouvez utiliser:
/bin/ip addr
ifconfig
est progressivement mis en place.
ip a
.
Si vous avez une adresse interne utilisée, vérifiez
curl http://myip.dnsomatic.com
pourrait être une bonne idée sur les shells Unix.
Ou, connectez simplement cette URL dans votre navigateur.
Si vous obtenez une réponse différente de la « ifconfig -a
» résultat,
l' ifconfig
a donné votre adresse interne - qui ne sera probablement pas travailler à l' extérieur.
Même si tout semble bien, vous pourriez avoir un pare-feu en place qui interdira les connexions ssh entrantes .
À quel moment vous devriez essayer le port d'intérêt à partir d'un navigateur sur la machine à,
http://www.canyouseeme.org/
Cela confirmera la connectivité à travers,
curl http://myip.dnsomatic.com
curl ifconfig.me
/bin/hostname -i
hostname --all-ip-addresses
. Affichez toutes les adresses réseau de l'hôte. Cette option énumère toutes les adresses configurées sur toutes les interfaces réseau. L'interface de bouclage et les adresses de liaison locale IPv6 sont omises. Contrairement à l'option -i, cette option ne dépend pas de la résolution de nom. Ne faites aucune hypothèse sur l'ordre de sortie.
/bin/hostname -I
/bin/hostname -i
donne juste 127.0.1.1
, ce qui est inutile.
/sbin/ifconfig|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'
Si vous avez besoin de votre adresse interne, ajoutez votre interface après ifconfig, par exemple
/sbin/ifconfig eth0|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'
Si vous êtes derrière un NAT et avez besoin de l'IP publique, utilisez ceci:
wget -q -O - checkip.dyndns.org | sed -e 's /. Adresse IP actuelle: // '-e' s / <. $ // '
extrait de: http://www.go2linux.org/what-is-my-public-ip-address-with-linux
Si vous avez besoin de connaître l'adresse IP de votre routeur, vous pouvez exécuter cette commande.
dig + short myip.opendns.com @ 208.67.222.222 @ 208.67.220.220
Si vous utilisez OpenDNS pour votre serveur DNS, vous pouvez le raccourcir en:
creuser + court myip.opendns.com
Vous pouvez également utiliser cette commande.
curl http://myip.dnsomatic.com
Si vous avez plusieurs interfaces, il pourrait être utile de spécifier celle que vous souhaitez IP. si vous voulez l'adresse IPV4 de l'interface 'eth0':
ip addr show dev eth0 | grep "inet " | awk '{ print $2 }'
si vous voulez l'adresse IPV6 de l'interface 'eth0':
ip addr show dev eth0 | grep "inet6 " | awk '{ print $2 }'
si vous souhaitez rechercher une IP entre deux interfaces communes d'un ordinateur portable, wlan0 et 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
Courbez simplement cette page :
$ curl wtfismyip.com/text
Voici une ligne qui fonctionne également sur Linux et OS X, et elle renverra la première adresse qui n'est pas locale:
ifconfig | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'
Envoyez des crédits à /programming//a/13322549/99834
LOCAL_IP=`/bin/hostname -I | sed 's/ //g'`
La façon la plus simple de s'y prendre est probablement
ifconfig eth0
en supposant que la machine a une seule adresse IP sur l'interface filaire par défaut - vous pourriez avoir besoin
ifconfig wlan0
si c'est sur WiFi.
Ce que je comprends, c'est que vous voulez connecter une machine Ubuntu distante qui a une adresse IP dynamique. Allez sur le site dyndns.org et ouvrez un compte gratuit. Ensuite, sur la machine distante, vous devez installer un outil IP dynamique.
sudo aptitude install dyndns-client
vous pouvez donc ssh machine distante via
ssh username@yourdynamicnamealias.dyndns.org
Ainsi, après la configuration, vous n'aurez jamais besoin de l'adresse IP de la machine distante.
si vous n'avez besoin que d'une seule IP d'une interface donnée, vous pouvez faire:
ifconfig eth0 | grep "inet " | awk '{gsub("addr:","",$2); print $2 }'
J'ai déjà joué à l'extraction d'adresse IP sous Linux:
http://www.catonmat.net/blog/golfing-the-extraction-of-ip-addresses-from-ifconfig/
Si vous recherchez une adresse IP publique de la boîte , vous pouvez utiliser les éléments suivants:
dig @ns1.google.com -t txt o-o.myaddr.l.google.com +short | tr -d \"
Vous pouvez utiliser des dig(1)
options telles que -4
ou -6
pour rechercher spécifiquement une adresse IPv4 ou IPv6; Google fournira une réponse dans un enregistrement de TXT
type, qui sera entouré de guillemets lorsqu'il sera présenté par dig
; si vous souhaitez utiliser ultérieurement la variable avec des utilitaires comme traceroute
, vous devez utiliser quelque chose comme tr (1) pour supprimer lesdites citations.
Les autres options incluent whoami.akamai.net
et myip.opendns.com
, qui répondent avec A
et AAAA
enregistre (au lieu de TXT
comme dans l'exemple ci-dessus de Google), donc, elles ne nécessitent pas la suppression des guillemets:
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
Voici un exemple de script qui utilise toutes les options ci-dessus pour définir les 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 vous recherchez une adresse IP privée ou un ensemble de toutes les adresses IP attribuées à la boîte, vous pouvez utiliser une combinaison de ifconfig
(sur BSD et GNU / Linux), ip addr
(sur GNU / Linux), hostname
(options -i
et -I
sur GNU / Linux) et netstat
pour voir ce qui se passe.
vi /etc/network/interfaces
et définissez l'interface surstatic
(voir help.ubuntu.com/8.10/serverguide/C/network-configuration.html )