Cette manipulation s’avère être assez facile et assez basique, mais néanmoins elle vous sera d’une grande utilité pour reconnaitre votre Raspberry au sein de votre réseau local mais également très utile lors de la création de serveurs, de scripts d’automatisations, etc.
Niveau : débutant – intermédiaire
Durée : environ 10 minutes
Ne s’applique qu’à la version Wheezy de Raspbian
Pour le moment, votre Raspberry dispose d’une adresse IP (Internet Protocol) dynamique, c’est-à-dire qu’elle peut changer à tout moment (ça fait déjà plusieurs fois que vous essayez de vous connecter à votre SSH avec l’adresse IP de d’habitude, par exemple 192.168.1.36:22 alors que votre box en a décidé autrement en donnant une toute autre adresse à votre RasPi). 🙁
Ma box ?! Pourquoi elle ? 😯
Eh oui !! pour une fois votre chère petite Framboise n’y est pour rien c’est bel et bien la faute de cette fameuse box ! C’est elle qui distribue les adresses IP donc c’est elle qui est susceptible de changer celle de votre Raspberry (ou bien de votre PC, smartphone, …) 🙂
Mais comment faire ?
Au sommaire :
1er Méthode :
Prérequis :
Avoir un accès au Raspberry : que ce soit en mode texte, graphique ou bien encore en SSH (même si j’ai toujours cette allergie au mode graphique, cela ne changera rien dans la suite du tuto 😀 )
Se rendre dans le terminal et taper :
sudo nano /etc/network/interfaces
Une fois le fichier ouvert, recherchez la ligne
iface eth0 inet dhcp
et la remplacer par:
iface eth0 inet static address 192.168.1.x netmask 255.255.255.0 network 192.168.1.0 gateway 192.168.1.1
Attention! Les paramètres si dessus sont à modifier suivant votre réseau !
Enregistrer et fermer le fichier
Ctrl + o (pour enregistrer)
Entrée (pour valider)
Ctrl + x (pour fermer)
Redémarrer la bête
sudo reboot
Pour vérifier si les changements ont bien été pris en compte, retournez dans le fichier précédemment modifier et vous devriez voir … vos modifications ! 😀
2nd méthode :
Cette fois ci, vous n’aurez pas besoin d’avoir accès au Raspberry, il suffit juste qu’il soit démarré et branché au réseau.
Cette méthode consiste à vous rendre sur l’interface web de votre box et de modifier l’adresse de votre RasPi de dynamique à fixe.
Pour cela reportez-vous au manuel d’utilisation de votre box ou bien googlez un peu, vous devriez trouver assez rapidement.
Si par malheur vous ne trouvez pas, faites-le nous savoir dans les commentaires.
Conclusion :
Eh bien voilà, votre Raspberry a enfin sa propre adresse IP ! Il doit être content et vous aussi car plus besoin de chercher votre Framboise sur le réseau car maintenant il aura sa propre adresse IP ! 🙂
petite astuce, après avoir modifié le fichier de configuration, tapez ces lignes de commandes :
ifdown eth0
ifup eth0
et hop, l’adresse ip est configurée. 😉
Sauf que quand tu es connecté en SSH… Je ne dis rien, c’est toujours marrant de voir la réaction quand ça se produit ! 😀
Bonsoir,
Pour éviter de perdre la main : ifdown eth0 && ifup eth0
Sinon : service networking restart 😉
Merci pour l’info
Cordialement
Tom 🙂
/etc/init.d/network reload
Ou bien rebootez la Framboise !
Cordialement
Tom 🙂
Bonsoir,
J’ai une légère préférence pour le bail réservé dans la box car DHCP fait bien plus que de donner une @IP. Il pousse aussi les DNS, le masque réseau et la route.
Sylvain
Merci de l’info
Cordialement
Tom 🙂
Merci pour l’info 🙂
Bonjour, sur les liveboxe(orange) il existe une option dhscp statique . donc une foi l’adresse ip attribuée , elle sera toujours la même à chaque reconnexion . Bon c’est sur ca ne permet pas de la choisir.
@+
Oui, c’est ce qui est dit dans la méthode 2! Je sais également que SFR (neufbox) le fait également Numéricable et Free (surement tous les FAIs)
Cordialement
Tom 🙂
Si, c’est dans « options avancées »; Tu peux déterminer le début de la plage @IP et pour un bail permanent, tu peux choisir l’adresse fixe que tu souhaites.
Pour la freebox V5 (que j’avais avant de passer sur la fibre, c’était pareil.
Sylvain
Attention la 1ere méthode n’est pas fiable du tout! Imposer ainsi une adresse IP fixe sans que ce soit coordonné avec la configuration du routeur ne garanti qu’une seule chose: un résultat plus ou moins aléatoire.
Le routeur (la box pour beaucoup) distribue les adresses IP via le protocole DHCP. A cet effet, il a une plage d’adresses IP réservées à l’allocation automatique DHCP. Avec la config par défaut d’une box, toutes les IP, sans exception, sont dans cette plage. Si on prend une adresse IP quelconque, comme décrit dans la méthode 1, sans connaitre la conf du routeur alors rien ne garanti que l’adresse en question ne soit pas déjà utilisée quand le PI démarrera (tout de suite ou plus tard). Car elle aura pu être déjà attribuée via DHCP à une autre machine puisse qu’elle fait partie de la plage allouée automatiquement. Ce qui se traduira par des erreurs car 2 appareils auront la même IP sur le réseau. Et, avant d’avoir consulté les logs, on pourra chercher un certain temps pourquoi tout ne marche pas comme d’habitude…
En synthèse: il IMPOSSIBLE d’assigner une adresse IP fixe proprement sans aller modifier, ou au moins connaitre, la configuration du routeur auquel on se raccorde.
La seconde solution est la bonne. Mais, elle n’est pas documentée et surtout n’utilise pas le bon vocabulaire. Donc il peut être difficile de retrouver l’info sur le net à partir de là. Comme le soulignait S.POURRE, la solution 2 consiste à assigner un bail DHCP réservé pour le PI. Ce qui en pratique, quelque soit la box, revient à:
– Repérer l’adresse MAC du PI
– Dans la config de la box., associer une adresse IP fixe à cette adresse MAC (lui associer un bail permanent)
L’adresse attribuée ainsi sera connue au niveau DHCP et ne sera donc pas attribuée à une autre machine que le PI.
La façon d’associer une IP fixe à une adresse MAC varie d’une box à l’autre mais l’opération est toujours la même sur le fond.
Comme le souligne guillaume9433, il existe une méthode simplifiée sur la Livebox qui fait ces 2 opérations de façon transparente (récupération adresse MAC+ assignation bail IP fixe). Mais, c’est alors la box qui choisi le numéro de l’IP fixe. Elle est imposée. C’est donc plus simple pour madame Michu, mais moins libre.
Sinon, La solution 1 est possible sur le fond, mais elle est alors incomplète. Elle nécessite qu’au moins une partie des adresses IP ne fassent pas partie de la place DHCP dans la config de la box pour que ça marche (tout le temps). Dans ce cas, il faut:
– Dans la config de la box, restreindre la plage des adresses DHCP.
– Appliquer la méthode 1 en choisissant une adresse HORS de la plage DHCP paramétrée dans la box.
Mais cette solution a 2 inconvénients:
– La réduction de la plage DHCP n’est pas une option disponible sur toutes les BOX
– Comme l’a souligné S.POURRE, assigner une adresse IP ne suffit pour qu’une machine soit opérationnelle sur un réseau. Le fait de passer par un bail DHCP fixe est plus simple car ça évite aussi d’autres configurations.
Merci l’info
Cordialement
Tom
Merci d’avoir initialisé l’article qui nous a permis d’apporter notre point de vue.
J’avais fait une réponse identique sur le forum mais il n’a pas la même lisibilité.
Je rajoute, pour la route, un dernier avantage au DHCP: Si tu veut faire une démo à l’extérieur de ton domicile, ça marchera tout de même sans risquer de mettre la pagaille sur le LAN d’accueil qui aura déjà, peut-être, une machine ayant l’@IP de ton Raspberry. Encore plus vicieux, le LAN d’accueil n’est pas dans la même réseau ou la même classe que le tien (ex: tu es en 192.x.x.x et lui en 10.x.x.x). Tu riques de galérer un certain temps pour modifier ton @IP, trouver le bon masque et la bonne passerelle pour sortir.
Cordialement
Sylvain
Merci pour ces infos Sylvain
Cordialement
Tom 🙂
Bonjour,
Me concernant, question de pratique, c’est via la box que j’attribue et fige l’adresse IP de mes raspberry.
Il suffit en effet d’attribuer l’adresse IP (que l’on choisi) à l’adresse MAC du matériel.
la plupart du temps la box propose un scan des adresses mac des périphériques visibles, afin d’aider à la sélection.
par contre…attention, si comme moi vous avez des ports redirigés pour accéder au pi depuis le web, ou autres configs, PENSEZ A SAUVEGARDER la config de votre box !
Car en cas de « hard reset » de la box, il faudra tout resaisir.
à bientôt
Bonjour Bruno
pas de box ici mais un bon vieux routeur
pareil pour les @IP comme ça chaque RasPi est identifié de façon unique
cordialement
François
Bonjour,
Juste un truc pour ceux qui comme moi sont passé sous Jessie cette opération m’a pris 30 secondes comme sous Windows car graphique la seul chose qui m’a perturbée c’est que l’on ne rentre pas le masque de réseau, idem pour la wifi. le paramétrage est super simple sous Jessie , plus de sudo pour le gpio en python évolution réfléchis j’ai deux pi2 qui tournent sur les deux plateformes j’abandonne Wezzie pour Jessie. Tous les serveurs apache2,mysql, motion fonctionnent ,l’installe de Wireshark est plus simple…………………….
Merci Bruno
Cordialement
Tom 🙂
Sinon avant d’allumer le raspberry : arp -a
Même commande une fois que le Raspberry a démarré.
L’IP va alors apparaitre en différence entre les deux commandes. Ca permet de garder une IP dynamique et de la trouver rapidement
Merci je ne connaissais pas cette technique
Cordialement
Tom
Sauf erreur de ma part, ce n’est pas disponible « par défaut » et il faut installer le paquet arp-scan.
Sur Wheezy c’est possible par defaut, je ne sais pas pour Jessie
Cordialement
Tom 🙂
Exact
Precision : il est possible de faire le meme controle avec nmap (à installer aussi)
Ou encore avec Wireshark 😉
Avec ces outils, on s’éloigne de la philosophie UNIX: KISS, un programme, une fonction.
La commande arp, que tu as rappelée à juste raison, est bien plus élégante et adoptée à l’objectif de connaître la MAC adresse etl’@IP attribuée.
Cdl
Sylvain
Ping : Allouer une adresse IP fixe au Raspberry – Radioamateur France
Personnellement je préfère de loin gérer les ip via le dhcp de la box en attibuant une baux statique.
Sa permet en cas de testes ou réinstallation d’attribuer directement une ip 🙂
Personnellement moi aussi ! 😉
Cordialement
Tom
La première solution,
sur notre LAN, la zone verte est défini sur 192.168.2.xx et les adresses ip allant de 1 à 50 sont réservées pour les périphériques en tout genre. Comme l’explique @Laurent, le DHCP est configuré de telle manière qu’il n’attribue que les adresses dynamiques à partir de 192.168.2.51 à 192.168.2.255.
La box nous a déjà joué des tours lors de mises à jour, une partie du paramétrage à l’aide des adresse MAC a été perdue. Du coup, à chaque fois l’adressage passe par des ip fixes et l’édition de /etc/network/interfaces.
Ok merci de l’info 😉
Bonsoir, j’ai utilisé la méthode 1, avec quelques difficultés :
Mon DHCP est configuré pour distribuer les adresses dynamiques entre 192.168.1.101 et 192.168.1.255
Je me resserve les 100 premières adresses pour y mettre les serveurs, imprimantes, WDTV et autres NAS.
j’ai voulu utiliser l’adresse 192.168.1.3 , sans succès après reboot, avant de comprendre que via le fichier /etc/network/interfaces il fallait utiliser une adresse dans la plage dynamique du DHCP (donc supérieure a 100).
==> 192.168.1.113 puis reboot et ca marche
Note : j’avais essayé avant de fixer l’adresse (192.168.1.3) via le fichier etc/dhcpcd.conf : ca marche mais je n’avais plus d’accès internet apres reboot.
donc si vous avez une solution pour fixer l’adresse IP dans une valeur hors plage DHCP ET conserver l’acces internet je suis preneur
Bonjour Yves-Marie
Bizarre… le fait d’avoir une adresse hors plage de DHCP n’empêche normalement
pas l’accès à Internet …?
Ce tuto s’applique sous Raspbian Wheezy comme indiqué au début de l’article
quand vous fixez l’adresse par dhcpcd.conf manuellement vous précisez bien l’adresse de DNS et de passerelle ?
Après il faudrait savoir ce que vous appelez pas d’accès à Internet ? vous pouvez faire un ping sur 8.8.8.8 ? sinon quelle est la réponse du système
si vous faites un ping 8.8.8.8 pouvez vous ensuite faire un ping sur http://www.google.fr ? sinon quelle est la réponse du système ?
il manque ces infos pour essayer de comprendre ce qui se passe
cordialement
françois
Bonjour (et merci pour la rapidité de la réponse)
J’ai trouvé mon erreur: Sur divers tutos il est indiqué de modifier le fichier dccpcd.conf comme suit
commande : sudo vi /etc/dhcpcd.conf
A la fin du fichier inserer les lignes suivantes (j’ai personnalisé avec ma box)
interface eth0
static ip_address=192.168.1.3/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
la dernière ligne (le DNS) n’est pas correcte chez moi (j’ai eu le meme pb pour passer mon pc en adresse IP fixe) car mas box ne fait visiblement pas la résolution d’adresses.
elle est a remplacer par
static domain_name_servers=8.8.8.8 8.8.4.4
(j’ai mis les adresses des 2 serveurs DNS de Google, separées par un espace)
et ca marche.
on peut donc dire que c’est une solution 3 au passage en adresse IP fixe
merci pour le retour
c’est quoi cette box qui ne fait pas relais DNS ? 😀
C’est une box alice (donc une freebox V4)
Pas de probleme en DHCP (puisque pas de config) mais si je prend le cas du PC, le fait de definir une adresse fixe (avec un masque de sous reseau et une passerelle, max box) oblige a definir une adresse DNS.
Avec l’adresse de ma box comme adresse de DNS ca ne marche pas.
bah, les DNS de Google ne sont pas filtrés comme ceux de free donc ca ne me dérange pas
ok merci pour cette précision 🙂
Bonjour.
Avec Jessie dans le fichier /etc/network/interfaces , on dit cela.
For static IP, consult /etc/dhcpcd.conf and ‘man dhcpcd.conf
Donc fixé l’adresse statique dans : /etc/dhcpcd.conf ?
Bonjour , pour ceux qui veulent choisir l ‘ adresse ip dans la livebox en attribuant un bail fixe a la framboise , la methode est simplement de conjugué les 2 manieres .
Dans un premier temps vous apliquez la methode 1 en choisissant votre adresse ip .vous redemarrer le service network .
ensuite vous allez dans la configuration de la live box , vous attribuez le bail fixe a l ‘ adresse mac donc avec l ‘ adresse ip que vous avez choisi .
vous redemarrez la box afin de ne pas avoir de risque de doublon d’ IP .
vous retournez dans le raspberry editez le fichier /etc/network/interfaces et commentez les lignes que vous avez ajoutees dans la premiere etape pour revenir au fichier d’ origine , redemarrer le network et le tour est joué !!!