Linux Basics – Set A Static IP On CentOS
Version 1.0
Ce tutoriel explique la configuration d’une adresse IP statique (IPv4 et IPv6), du nom d’hôte et des serveurs de noms sur CentOS. Pour être compatible avec les systèmes de bureau et de serveur, nous faisons la configuration sur le shell.
1 Note préliminaire
Supposons que vous travaillez dans un centre de données & votre patron met une installation minimale de serveur CentOS & vous devez le configurer dans l’environnement en cours. Oui c’est un peu laborieux, mais pas une tâche très difficile. Dans mon cas, j’ai un serveur CentOS muet qui a été installé par quelqu’un dans son environnement réseau & Je veux le rendre fonctionnel dans mon environnement IP statique. Supposons que j’ai une IP vacante 192.168.0.100 & Je vais le mettre en œuvre dans mon environnement. Les détails de mon IP sont les suivants:
IPv4
- Adresse IP : 192.168.0.100
- Sous-réseau : 255.255.255.0
- Passerelle : 192.168.0.1
IPv-6
- Adresse IP : 2001:db8::c0ca:1eaf
- Netmask 64
- Gateway 2001:db8::1ead:ed:beef
DNS resolving nameservers
- Nameserver 1 : 8.8.8.8
- Serveur de noms 2 : 8.8.4.4
Les valeurs ci-dessus doivent être ajustées pour votre enviroment réseau local. Juste les serveurs de noms de résolution FNS peuvent être utilisés sur la plupart des réseaux car ces adresses IP appartiennent aux serveurs de noms publics de Google.
2 Mise en œuvre
Je vais faire une édition du fichier de configuration avec l’éditeur comme vi. Mais vous pouvez utiliser tout autre éditeur shell comme nano ou joe à la place. Le nom du fichier pour la première carte réseau (eth0) est /etc/sysconfig/network-scripts/ifcfg-eth0
Je vais d’abord faire une sauvegarde de mon fichier original comme /etc/sysconfig/network-scripts/ifcfg-eth0.bak & puis procéder aux modifications dans /etc/sysconfig/network-scripts/ifcfg-eth0
mv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak
vi /etc/sysconfig/network-scripts/ifcfg-eth0
Je vais modifier le fichier comme ceci :
#My IP description# IPv-4DEVICE="eth0"NM_CONTROLLED="yes"ONBOOT=yesHWADDR=20:89:84:c8:12:8aTYPE=EthernetBOOTPROTO=staticNAME="System eth0"UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03IPADDR= 2001:db8::c0ca:1eafNETMASK=255.255.255.0
Seules les lignes IPADDR et NETMASK doivent être ajustées. Ne modifiez pas les autres lignes.
Pour IPv6, il suffit d’ajouter les entrées ci-dessous :
vi /etc/sysconfig/network
NETWORKING_IPV6=yes
vi /etc/sysconfig/network-scripts/ifcfg-eth0
#IPv-6IPV6INIT=yesIPV6ADDR=2001:db8::c0ca:1eafIPV6_DEFAULTGW=2001:db8::1ead:ed:beef
3 Configuration DNS
DNS peut être ajouté dans le fichier /etc/resolv.conf
vi /etc/resolv.conf
nameserver8.8.8.8nameserver8.8.4.4
Vous pouvez ajouter 2 lignes namserver ou plus. Votre système essaiera les autres au cas où le premier serveur de noms serait inaccessible.
4 Nom d’hôte
Dans mon cas, le nom d’hôte est server1.example.com pour définir le nom d’hôte, je vais éditer le fichier /etc/hosts:
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4192.168.0.100 server1.example.com server1::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
et le fichier resolv.conf:
vi /etc/resolv.conf
NETWORKING=yesHOSTNAME=server1.example.comGATEWAY=192.168.0.1
et redémarrer le serveur.
reboot
Vérifiez votre nom d’hôte avec la commande ci-dessous. Le nouveau nom d’hôte sera appliqué après le redémarrage uniquement
nom d’hôte
5 Réseau avancé et interfaces réseau virtuelles
J’utilise CentOS Linux et je voudrais créer des alias pour eth0:0 afin de pouvoir avoir plusieurs adresses IP. Je vais mettre en œuvre en créant un fichier comme suit:
vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
#IP Aliasing
DEVICE="eth0:0"BOOTPROTO="static"
HWADDR=20:89:84:c8:12:8aNM_CONTROLLED="no"ONBOOT="yes"TYPE="Ethernet"IPADDR=192.168.0.108NETMASK=255.255.255.0GATEWAY=192.168.0.1DNS1=8.8.8.8DNS1=8.8.4.4
Ici j’ai fait l’alias IP pour l’IP 192.168.0.108, cela pourrait varier selon votre besoin.
6 Services
Après tout changement dans les fichiers de réseau, vous devez redémarrer les services réseau comme suit :
/etc/init.d/network restart
Après le redémarrage du service, vous pouvez vérifier les changements comme :
ifconfig
La sortie confirmera les changements effectués de manière statique. Elle sera presque similaire à ceci:
root@server1:~# ifconfig
eth0 Link encap:Ethernet HWaddr 20:89:84:c8:12:8a
inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr : 2001:db8::c0ca:1eaf/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:200197 errors:0 dropped :67 overruns:0 frame:0
Paquets TX:69689 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
Octets RX:64103748 (64.1 MB) TX bytes:14106191 (14.1 MB)
eth0:0 Link encap:Ethernet HWaddr 20:89:84:c8:12:8a
inet addr:192.168.0.108 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr : ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:10365 errors:0 dropped:0 overruns:0 frame:0
TX packets:10365 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:875114 (875.1 KB) TX bytes:875114 (875.1 KB)
Note Les valeurs ci-dessus seront différentes dans votre cas.