Meilleure façon de montrer mon adresse IP?

62

Après le démarrage, quel est le moyen le plus simple d’obtenir et d’afficher l’adresse IP actuellement utilisée par le périphérique?
J'utilise Raspbian et ifconfigne semble pas être installé.

Existe-t-il des widgets affichant cette information dans LXDE?

Zoot
la source
4
C'est probablement installé; vous devez sudo ifconfig sur Debian.
Alex Chamberlain
Je m'en rends compte maintenant. Je pense que j'ai été gâté par les indices de ligne de commande d'Ubuntu. Je vérifierai quand je le remettrai en marche.
Zoot
C'est une chose bash, plutôt qu'une chose Ubuntu. Je pense que ifconfig est simplement installé avec des autorisations différentes.
Alex Chamberlain
1
Oui, j'ai oublié de sudo. ifconfig est installé par défaut, mais une erreur de commande non trouvée apparaît si vous ne le faites pas. Merci!
Zoot
Mon Raspbian affiche l'adresse IP juste avant l'invite de connexion.
Thorbjørn Ravn Andersen

Réponses:

65

La famille d'outils if, y compris ifconfig, est obsolète et remplacée par les nouvelles commandes ip. Vous pouvez donc utiliser l'un des éléments suivants à partir de la ligne de commande pour déterminer votre adresse IP:

sudo ip addr show

ou

sudo hostname --ip-address

ou si vous voulez toujours utiliser ifconfig et qu'il n'est pas déjà installé

sudo apt-get install wireless-tools
sudo ifconfig -a
Steve Robillard
la source
1
@jackweirdy, ce sont les nouveaux outils qui remplacent les anciens outils if. Essayez man ip pour plus de détails.
Steve Robillard
1
Bravo pour cela, a appris quelque chose de nouveau aujourd'hui :)
jackweirdy
y a-t-il une commande "arp" qui vous montrera quelque chose en ligne d'adresse IP?
Piotr Kula
4
ip aest suffisant si vous voulez obtenir l'adresse IP :)
Der Hochstapler
3
Aucune des commandes d'affichage n'a réellement besoin d'autorisations sudo. Cela est probablement dû à un effet secondaire de la définition de votre chemin pour inclure / sbin. Vous pouvez exécuter /sbin/ifconfigou /sbin/ipcomme n'importe quel utilisateur normalement.
XTL
12

Vous pouvez également utiliser ce petit script python.

import socket

def get_local_ip_address(target):
  ipaddr = ''
  try:
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect((target, 8000))
    ipaddr = s.getsockname()[0]
    s.close()
  except:
    pass

  return ipaddr
print "Raspberry Pi - Local IP Address"
print(get_local_ip_address('10.0.1.1'))
print(get_local_ip_address('google.com'))
Bryan
la source
9
Un peu exagéré, vous ne pensez pas? Pas grand chose de remplacer les commandes Linux existantes qui obtiennent le même résultat.
Jivings
2
@Jivings Un peu dur - c'est une réponse, ça marche! (Je dis sans tester ...) Cela pourrait être la base d'un widget sur un bureau, par exemple.
Alex Chamberlain
1
@Bryan Bienvenue dans Stack Exchange et Raspberry Pi!
Alex Chamberlain
1
@AlexChamberlain Désolé Bryan. Je n'avais pas encore
bu
1
Cela pourrait même être ajouté au service de messagerie qui s'exécute après la connexion pour afficher automatiquement l'adresse IP à côté du message startx. Ensuite, ce serait automatique, pas besoin de taper.
Steve Robillard
8

Au lieu de rechercher l'adresse IP attribuée par DHCP, j'ai ajouté une adresse IP réservée dans mon routeur / serveur DHCP. Il correspond à l'adresse MAC du Raspi et attribue toujours la même adresse IP, même après une nouvelle installation du système d'exploitation.

Wheezy ayant maintenant activé SSH par défaut, cela signifie que je peux me connecter à un Raspberry Pi fraîchement installé sans jamais avoir besoin de connecter un clavier ou un moniteur.

Toutes mes excuses pour ne pas avoir répondu directement à la question, mais celle-ci semblait suffisamment liée pour suggérer.

Greg Woods
la source
Si cela aide les gens à trouver des moyens faciles de déterminer l'adresse IP, je suis tout à fait d'accord.
Zoot
7

Vous pourrez peut-être vérifier l'état / les journaux DHCP sur votre serveur DHCP. Surtout si c'est sur votre réseau domestique. Cela a été assez facile à trouver sur tous les routeurs que j'ai possédés.

Ceci est utile si vous utilisez sans tête et que vous voulez juste connaître l’adresse à ssh.

John La Rooy
la source
@gnibbler +1 pour résoudre le problème pour ceux qui courent sans tête. On peut noter qu’identifier quel appareil est le Pi peut être délicat car il ne s’identifie pas toujours sur le réseau et peut donc apparaître sans nom dans la liste des appareils attachés. Ce fil raspberrypi.org/phpBB3/viewtopic.php?f=36&t=6998 a plus sur le problème et la solution
Steve Robillard
@SteveRobillard, le mien ne s'identifie, mais il peut aussi aider quelqu'un s'ils voient une adresse MAC à partir comme b8:27:eb:xx:xx:xx, il est probablement un RPi :)
John La Rooy
5

Ce qui a fonctionné pour moi:

sudo ifconfig

depuis ifconfigétait àsbin/ifconfig

Matthieu Riegler
la source
Bien que j'apprécie votre réponse, les commentaires d'Alex Chamberlain et de Steve Robillard contiennent déjà ces informations.
Zoot
5

Si vous voulez voir votre adresse IP externe, utilisez ceci sur votre ligne de commande

curl http://ipecho.net/plain ; écho;

Vous pouvez créer une fonction pour faciliter les choses.

Modifiez votre fichier .bashrc et ajoutez la fonction suivante à la fin du fichier.

Fonction pour afficher l'adresse IP externe

Fonction pour afficher l'adresse IP externe

Appeler votre fonction depuis cli

entrez la description de l'image ici

Vous pouvez trouver des moyens plus intéressants d'obtenir votre adresse IP dans ce lien

http://www.if-not-true-then-false.com/2010/linux-get-ip-address/

Andreskwan
la source
5
$ host raspberrypi
raspberrypi has address 192.168.1.20

$ host raspberrypi | grep ‘address’ | cut -d’ ‘ -f4
192.168.1.20

$ nslookup 192.168.1.20
Server:  192.168.1.1
Address:    192.168.1.1#53
20.1.168.192.in-addr.arpa   name = raspberrypi.

$ nslookup 192.168.1.20 | grep ‘=’ | cut -d’ ‘ -f3
raspberrypi
devpsp
la source
2

Shea Silverman et Jacob Bates ont récemment créé un outil appelé PIP qui vous permet d’obtenir l’adresse IP de votre framboise pi sans même l’attacher à un écran, car il installe un script qui envoie votre adresse IP à un serveur que vous pouvez visiter avec votre ordinateur. PC principal. Ce n'est peut-être pas la meilleure option dans toutes les situations, mais c'est un bidouillage très intelligent.

Zoot
la source
2

Baby script pour renvoyer l'adresse IP, fonctionne à partir d'une invite:

liste d'adresses ip | grep inet | grep -v 127.0.0 | cut -d "" -f 6 | cut -d "/" -f 1

Mutek l'invité
la source
1

Je vous suggère d'utiliser Bonjour au lieu de devoir trouver l'adresse IP. Laissez-le être attribué via DHCP et tant que votre PC est sur le même réseau, vous pouvez y accéder par son nom.

Par exemple .. raspberrypi.local

Une fois ceci configuré, vous pouvez exécuter complètement sans tête, vous connecter au Pi avec SSH, ou VNC, etc.

Voici un article expliquant comment configurer Bonjour. http://www.raspberrypi.org/forums/viewtopic.php?f=66&t=18207

Notez que pour une machine Windows, vous devez installer le pilote de services d’impression Apply Bonjour, une chose infime ...

Bonjour est déjà présent pour Mac et Ubuntu.

dfowler7437
la source
0

Juste pour ajouter un supplément ici, la raison pour laquelle vous n’auriez peut-être pas ifconfig est que votre système utilise probablement plutôt la suite iproute2. iproute2 inclut les équivalents mis à jour des anciennes suites ifconfig et route.

Je soulève cette question parce que si vous commencez à essayer des commandes auxquelles vous êtes habitué avec ifconfig ou route, votre premier réflexe pourrait être d’installer ces anciens paquets au lieu d’utiliser le nouvel équivalent. Par exemple, si vous devez utiliser netstat et vous rendre compte de son absence, effectuez une recherche sur "équivalent iproute2 netstat" et recherchez la commande "ss". Pour plus de précisions, consultez la publication de la Linux Foundation à ce sujet: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2

codé
la source
1
J'apprécie votre réponse, mais ifconfig m'a été installé. J'ai juste oublié de sudo avant la commande. Découvrez les commentaires ci-dessous la réponse.
Zoot
1
Doh! J'utilise uniquement Arch et il n'a pas utilisé ifconfig depuis un moment.
Codey
Aucun problème. Il m'a aussi lancé une boucle.
Zoot
Bien sûr, vous n'avez pas besoin de sudo pour ifconfig, il vous suffit d'appeler l'intégralité du chemin car il ne se trouve pas dans votre $ PATH pour le moment. whereis ifconfig vous donnera le chemin si nécessaire; alors vous pouvez l'exécuter à partir de là. sudo n'est pas la solution!
djsmiley2k - CoW le
0

J'ai vu une variété de réponses. certains que je connaissais et d'autres que je ne connaissais pas. Il y en a aussi un que j'utilise toujours qui n'a pas encore été listé. Si c'est le cas et que ça me manque, oups, désolé.

sudo hostname -I

Pismurf
la source
0

Une doublure avec ifconfig et sed:

sudo ifconfig wlan0 | sed -En -e 's/.*inet ([0-9.]+).*/\1/p'

Remplacez wlan0 par l'interface souhaitée.

batteur
la source
-1
curl ipinfo.io 

fonctionne pour moi à la fois sur Ubuntu et Raspbian

utilisateur522843
la source
Juste pour clarifier pour ceux qui ne le sauraient peut-être pas: cette réponse particulière donnera l’adresse IP externe (face à Internet) du routeur LAN ou du pare-feu sur lequel le Raspberry Pi est allumé. Il ne donnera pas l'adresse IP LAN spécifique du Pi lui-même. Cela pourrait être utile pour le dépannage Internet. Pour obtenir l'adresse IP du réseau local local conformément à la question posée, reportez-vous aux autres réponses fournies dans cette question.
MrChips
-2

Je crois que arp -asur Windows ou Linux serait le plus simple une fois que votre pi est connecté au réseau.

utilisateur44213
la source
2
Il me semble que cela donne les adresses d’autres systèmes, pas les vôtres. Notez également man arpcommence actuellement "Ce programme est obsolète."
goldilocks
-3

Je ne sais pas pour LXDE. Pour connaître l'adresse IP de votre appareil, visitez le site Ip-Details.com . Ici, ils fourniront également l'adresse IP, l'adresse du FAI, le pays, etc.

utilisateur46126
la source
3
Cela ne fournira qu'une adresse IP externe, pas votre adresse IP interne.
Zoot