Toutes les opérations précédentes peuvent etre mises dans les scripts d'initialisation de la machine, pour qu'elle soit configurée à chaque démarrage.
Ces scripts sont différents suivant les distributions :
IPADDR="192.168.1.3" # REPLACE with YOUR IP address!
NETMASK="255.255.255.0" # REPLACE with YOUR netmask!
NETWORK="192.168.1.0" # REPLACE with YOUR network address!
BROADCAST="192.168.1.255" # REPLACE with YOUR broadcast address, if you
# have one. If not, leave blank and edit below.
GATEWAY="192.168.1.1" # REPLACE with YOUR gateway address!
Le fichier /etc/rc.d/rc.inet2 démarre les services réseau basiques. C'est dans ce fichier qu'on peut activer/désactiver des services réseau.
NETWORKING=yes FORWARD_IPV4="yes" HOSTNAME="tarsier.chez.moi" DOMAINNAME="chez.moi" GATEWAY="192.168.1.4" GATEWAYDEV="eth0" NISDOMAIN="production"
Le fichier /etc/sysconfig/network-scripts/ifcfg-ethN (où N est le numéro de carte Ethernet, 0 pour la première, 1 pour la seconde, ...), qui configure l'interface Ethernet, devrait ressembler à ceci :
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.1 NETMASK=255.255.255.0 TYPE=Ethernet USERCTL=no NETWORK=192.168.1.0 BROADCAST=192.168.1.255 PEERDNS=no
Le script de démarrage du réseau est le fichier /etc/rc.d/init.d/network. Les scripts de démarrage des services réseau se trouvent dans le répertoire /etc/rc.d/rc3.d/.
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface iface lo inet loopback # The first network card - this entry was created during the Debian installation # (network, broadcast and gateway are optional) iface eth0 inet static address 192.168.1.1 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.2
Le fichier /etc/network/options quand à lui précise la configuration réseau du noyau :
ip_forward=no spoofprotect=yes syncookies=no
Les scripts de démarrage des services réseau se trouvent dans le répertoire /etc/rc2.d/.
Pour plus de détails, voir ifup(8) et interfaces(5), www.debian.org/doc/debian-policy/.
START_LOOPBACK="yes" IPADDR_0="192.168.1.4" NETDEV_0="eth0" IFCONFIG_0="192.168.1.4 broadcast 192.168.1.255 netmask 255.255.255.0" FQHOSTNAME="tarsier.chez.moi"
et lancer la commande SuSEconfig pour que ces modifications soient prisent en compte.
Les scripts de démarrage sont /sbin/init.d/network pour le réseau global, et /sbin/init.d/route pour le routage. Les scripts de démarrage des services réseau se trouvent dans le répertoire /sbin/init.d/rc3.d/.
#!/bin/sh
HOSTNAME=`cat /etc/HOSTNAME`
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
DEVICE="eth0"
IPADDR="192.168.1.3"
NETMASK="255.255.255.0"
NETWORK="192.168.1.0"
BROADCAST="192.168.1.255"
GATEWAY="192.168.1.1"
DHCP="no"
# Chargement du module de la carte reseau
/sbin/modprobe ne2k-pci
cat /proc/net/dev | grep "${DEVICE}:" > /dev/null || exit
if [ "$DHCP" = "yes" ]; then
echo "Attempting to configure ${DEVICE} by contacting a DHCP server..."
/sbin/dhcpcd
elif [ ! "$IPADDR" = "127.0.0.1" ]; then
echo "Configuring ${DEVICE} as ${IPADDR}..."
/sbin/ifconfig ${DEVICE} ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
KVERSION=`uname -r | cut -f 1,2 -d .`
if [ "$KVERSION" = "1.0" -o "$KVERSION" = "1.1" \
-o "$KVERSION" = "1.2" -o "$KVERSION" = "2.0" -o "$KVERSION" = "" ]; then
/sbin/route add -net ${NETWORK} netmask ${NETMASK} ${DEVICE}
fi
if [ ! "$GATEWAY" = "" ]; then
/sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric 1
fi
fi