[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gulliver] Connaître l'adresse IP d'une machine sans écran.


From Sylvain Blandel <gulliver dot sylvain at blandel dot org>
Subject Re: [gulliver] Connaître l'adresse IP d'une machine sans écran.
Date Thu, 14 Mar 2013 18:09:07 +0100

Bonjour.

Avec un peu de retard, voici une autre proposition de solution.

L'idée: le raspberry-pi exécute un script quelques instants après avoir
reçu une adresse IP par DHCP. Le script regarde l'adresse IP qui lui a
été attribuée, il en déduit le réseau où il se trouve, puis attribue au
raspberry-pi une IP fixe adaptée à ce réseau.

Voici:

#################### Début du script ####################
#!/bin/bash

# Nom de l'interface réseau :
IFACE=eth0



# Premier cas : le raspberry-pi est branché chez toi.
# Le DHCP lui a attribué une adresse IP en 192.168.0.*
if ( ip address show dev $IFACE | grep -q "192.168.0." )
then echo "Je suis à la maison, branché sur la Freebox."

# On supprime l'adresse IP attribuée par le DHCP :
ip address flush dev $IFACE

# On attribue une nouvelle adresse IP :
ip address add 192.168.0.99/24 dev $IFACE

# On attribue une passerelle par défaut
# dans la ligne suivante, remplace XXX par l'adresse IP de ta Freebox
ip route add default via 192.168.0.XXX dev $IFACE
fi



# Second cas : le raspberry-pi est branché sur le boitier Dlink.
# Le DHCP lui a attribué une adresse IP en 192.168.10.*
if ( ip address show dev $IFACE | grep -q "192.168.10." )
then echo "Je suis à la permanence, branché sur le Dlink."

# On supprime l'adresse IP attribuée par le DHCP :
ip address flush dev $IFACE

# On attribue une nouvelle adresse IP :
ip address add 192.168.10.99/24 dev $IFACE

# On attribue une passerelle par défaut
# dans la ligne suivante, remplace YYY par l'adresse IP du Dlink
ip route add default via 192.168.10.YYY dev $IFACE
fi



# Troisième cas : le raspberry-pi est branché sur la Fonera.
# Le DHCP lui a attribué une adresse IP en 192.168.35.*
if ( ip address show dev $IFACE | grep -q "192.168.35." )
then echo "Je suis à la permanence, branché sur la Fonera."

# On supprime l'adresse IP attribuée par le DHCP :
ip address flush dev $IFACE

# On attribue une nouvelle adresse IP :
ip address add 192.168.35.99/24 dev $IFACE

# On attribue une passerelle par défaut
# dans la ligne suivante, remplace ZZZ par l'adresse IP de la Fonera
ip route add default via 192.168.35.ZZZ dev $IFACE
fi

exit 0

#################### Fin du script ####################

De cette façon, le raspberry-pi aura toujours l'adresse IP 192.168.W.99
avec:
 – W=0 quand il est chez toi, branché sur ta Freebox,
 – W=10 quand il est branché sur le Dlink,
 – W=35 quand il est branché sur la Fonera.

-- 
SylvainB