Centos désactive IPv6. Que faire si CentOS ne voit pas la carte réseau ? À l'aide des utilitaires réseau traceroute, creusez dans CentOS

IPv6 ou Internet Protocol version 6 est la dernière version du protocole Internet (IP). IPv4 ou Internet Protocol version 4 est déjà largement utilisé. Mais cela présente certaines limites. La première est que IPv4 a un schéma d’adresse de 32 bits. Cela signifie que seules 4,3 milliards d’adresses uniques sont possibles avec IPv4. C’est assez limité dans le monde d’aujourd’hui. De nos jours, nous disposons de nombreux appareils IoT (Internet des objets), smartphones, ordinateurs, ordinateurs portables et serveurs connectés à Internet. Chacun de ces appareils a besoin d'une adresse IP pour communiquer avec le monde extérieur. L'adresse IPv4 manque donc.

Adresse IPv6 dans l'autre hand est une adresse de 128 bits. Cela signifie qu'environ 340 282 366 920 938 463 463 374 607 431 768 211 456 adresses IPV6 uniques sont possibles dans IPv6. Cela représente un grand nombre d'adresses IP. On dit que si IPv6 est utilisé, chaque appareil le monde peut avoir sa propre adresse IPv6 unique et IPv6 serait toujours disponible pour les nouveaux appareils. Ainsi, IPv6 résout les problèmes d'adresse IP limitée comme dans IPv4.

Mais au moment d’écrire ces lignes, la prise en charge d’IPv6 n’est pas disponible dans de nombreux pays. Ce n’est même pas pris en charge dans mon pays. Même si le monde évolue lentement vers IPv6, tout n’est pas encore IPv6.

Si votre pays ne prend pas encore en charge IPv6, il n'est pas nécessaire de le laisser activé sur votre système d'exploitation. De nombreuses personnes ont tendance à désactiver IPv6 dans leur système d'exploitation.

Dans cet article, je vais s comment vas-tu comment désactiver IPv6 sur CentOS 7.5. Commençons.

Vérifiez si IPv6 est activé

Vous pouvez vérifier si IPv6 est activé sur votre système d'exploitation CentOS 7.5 avec la commande suivante :

$ip un |

grep inet6

Comme vous pouvez le voir, j'ai activé IPv6.

Si IPv6 est désactivé, vous ne devriez voir aucune sortie si vous exécutez cette commande.

Désactivez IPv6 à l'aide du paramètre du noyau

Dans cette section, je vais vous montrer comment désactiver définitivement IPv6.

Vous pouvez désactiver IPv6 au démarrage de votre ordinateur en modifiant le paramètre du noyau.

Modifiez d'abord la configuration GRUB

$ sudo vim /etc/default/grub

Vous devriez voir la fenêtre suivante. Première pression je aller à INSÉRER

mode. Maintenant, ajoutez ipv6.disable=1 avant crashkernel=auto dans comme indiqué dans la capture d'écran ci-dessous.

Maintenant, appuyez sur et tapez :wq! puis appuyez sur pour enregistrer le fichier.

Mettez maintenant à jour le fichier de configuration GRUB avec la commande suivante :

$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg

La configuration GRUB doit être mise à jour.

Redémarrez maintenant votre ordinateur avec la commande suivante :

$ sudo redémarrage

Si vous exécutez à nouveau la commande suivante, vous ne devriez voir aucune sortie.

$ip un |

Désactivez IPv6 à l'aide du fichier de configuration /etc/sysctl.conf

Vous pouvez également désactiver IPv6 de manière permanente à l'aide du /etc/sysctl.conf fichier de configuration.

Ouvrez d'abord le /etc/sysctl.conf fichier avec la commande suivante :

Ajoutez-y maintenant les lignes suivantes :

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Enregistrez maintenant le fichier et redémarrez votre ordinateur avec la commande suivante :

$ sudo redémarrage

IPv6 doit être désactivé.

Désactiver IPv6 d'une interface réseau spécifique

Vous pouvez également désactiver IPv6 d'une interface réseau spécifique.

Vous devez d'abord trouver l'interface réseau que vous souhaitez désactiver avec la commande suivante :

Afficher le lien $ip

Vous devriez voir le nom de l'interface réseau comme indiqué dans la capture d'écran ci-dessous.

Disons que vous souhaitez désactiver IPv6 pour ens36 interface.

Première ouverture /etc/sysctl.conf fichier avec la commande suivante :

$ sudo vim /etc/sysctl.conf

Ajoutez maintenant la ligne suivante à la fin du fichier :

net.ipv6.conf.ens36.disable_ipv6 = 1

Désactiver temporairement IPv6 à l'aide de la commande sysctl

Vous pouvez également désactiver temporairement IPv6. De cette façon, IPv6 sera activé une fois que vous redémarrerez votre système. C'est utile pour tester si tout fonctionne sur votre système d'exploitation CentOS 7.5 avant de désactiver définitivement IPv6.

Exécutez les commandes suivantes pour désactiver temporairement IPv6 :

$ sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
$ sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

IPv6 doit être désactivé.

C'est ainsi que vous désactivez IPv6 sur CentOS 7.5 de manière permanente et temporaire. Merci d'avoir lu cet article.

Comme vous le savez, le protocole IPv6 est apparu comme une alternative au protocole IPv4, puisqu'il permet d'utiliser plus d'adresses que son prédécesseur. Cependant, la transition d'IPv4 vers IPv6 se poursuit encore aujourd'hui et la prise en charge d'IPv6 n'est pas disponible partout. La prise en charge d'IPv6 nécessite une prise en charge telle que système opérateur, et l'infrastructure réseau en général. Pour cette raison, si ce protocole n'est pas pris en charge sur votre serveur, alors il est préférable de le désactiver afin que le réseau fonctionne avec des protocoles fonctionnels. Lorsque IPv6 est activé mais ne fonctionne pas, des retards peuvent survenir en raison du routage, par exemple lors de la recherche d'un domaine, de la tentative de connexion à des adresses IPv6, et le problème peut également apparaître dans divers programmes utilisant des connexions réseau.
Examinons plusieurs façons de désactiver IPv6 dans Linux CentOS 7. À ces fins, nous aurons besoin d'accéder à la console du serveur avec les droits de superutilisateur.

Première méthode
Nous désactivons le protocole IPv6 pour toutes les interfaces du système d'exploitation ; pour cela, nous devons apporter des modifications au fichier /etc/sysctl.conf. Ouvrez le fichier dans le fichier intégré :

Vi /etc/sysctl.conf

Ajoutez les lignes suivantes :

Net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Vous devrez peut-être également désactiver le protocole IPv6 pour des interfaces individuelles, supposons que le nom de l'interface enp0s3, dans ce cas ajoutez la ligne suivante :

Net.ipv6.conf.enp0s3.disable_ipv6 = 1

Nous enregistrons les modifications apportées au fichier, puis appliquons les modifications à la configuration :

Sysctl -p

Deuxième méthode
Si vous devez désactiver IPv6 sans redémarrer la configuration, vous pouvez utiliser les commandes ci-dessous, qui effectueront les modifications à la volée.

Écho 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6 écho 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6

Saisissez les commandes une à une, l'une après l'autre, vous pouvez également utiliser les commandes suivantes :

Sysctl -w net.ipv6.conf.all.disable_ipv6=1

Après avoir exécuté ces commandes, IPv6 sera désactivé. De plus, après avoir désactivé IPv6, des problèmes peuvent apparaître avec certains programmes, dans lesquels vous devez également spécifier de ne pas essayer d'utiliser IPv6. Nous en reparlerons plus tard.

Problèmes avec SSH après la désactivation d'IPv6
Si vous rencontrez des problèmes avec SSH après avoir désactivé IPv6, procédez comme suit : Ouvrez le fichier de configuration /etc/ssh/sshd_config

Vi /etc/ssh/sshd_config

Trouvez la ligne :

#AddressFamily quelconque

Nous le mettons sous cette forme :

AdresseFamille inet

Ou vous pouvez décommenter (supprimer le symbole # au début) la ligne :

Systemctl redémarre sshd

Problèmes avec Posfix après la désactivation d'IPv6
Des problèmes peuvent également apparaître avec Postfix après avoir désactivé IPv6 ; pour corriger la situation, vous devez effectuer les étapes suivantes.
Ouverture du fichier de configuration /etc/postfix/main.cf:

Vi /etc/postfix/main.cf

Trouver la ligne inet_interfaces avec du sens hôte local et commentez-le, en ne laissant que la ligne avec la valeur 127.0.0.1.

#inet_interfaces = localhost inet_interfaces = 127.0.0.1 systemctl redémarrer postfix

Si vous avez la possibilité d'utiliser IPv6, vous pouvez de la même manière remettre les paramètres à leurs positions d'origine ; Après avoir désactivé IPv6 qui ne fonctionne pas, vous remarquerez peut-être une amélioration des performances du réseau.

Dans ce document, j'aborderai sujet actuel, par lequel commence presque tout travail initial avec le serveur. Configuration des paramètres réseau de base dans CentOS - adresse IP, DHCP, ipv6, DNS, nom d'hôte, routes statiques, cartes réseau et autres paramètres réseau. Nous aborderons le sujet étape par étape, du simple au complexe, en examinant toutes les nuances dans l'ordre et en répondant aux questions les plus courantes.

Paramètres réseau sur un serveur CentOS 7

La première fois que nous rencontrons les paramètres réseau d'un serveur CentOS, c'est lorsque nous effectuons l'installation. Sur l'écran de configuration initial, il y a un élément distinct concernant la configuration des interfaces réseau :

Après y être entré, nous voyons une liste des cartes réseau connectées. Chacun d'eux peut être activé à l'aide du curseur correspondant (point 1 sur l'image). Lorsque l'interface est activée, elle reçoit automatiquement les paramètres via DHCP. Vous pouvez voir le résultat du travail DHCP ici. Si vous n'êtes pas satisfait de ces paramètres, vous pouvez les modifier en cliquant sur configurer(point 3 sur la photo). Ici, vous pouvez également définir nom d'hôte(point 2 sur la photo) :


En ouvrant la fenêtre des paramètres supplémentaires Ehernet, vous pouvez modifier le nom de l'interface réseau, spécifier les paramètres IP (élément 1 dans l'image), sélectionner réglages manuels(point 2 sur la photo), attribuez adresse IP(point 3 sur l'image), installez serveur DNS(point 4 sur l'image) et enregistrez les paramètres réseau (point 5 sur l'image) :


Après avoir terminé les paramètres restants, l'installation commencera. Après l'installation, vous disposerez d'un serveur avec les paramètres réseau que vous avez spécifiés.

Considérons maintenant une autre situation. Vous n'avez pas créé le serveur, et donc la configuration réseau, mais vous devez maintenant le revoir ou le modifier. La console du serveur est à votre disposition, et nous y travaillerons. Si vous avez installé à partir d'un kit de distribution minimal, puis lorsque vous essayez d'afficher les paramètres réseau à l'aide de la commande siconfig dans la console, vous verrez ce qui suit :

Bash : ifconfig : commande introuvable

ou en version russe :

Bash : commande ifconfig introuvable

Pour travailler avec ifconfig et d'autres utilitaires réseau, vous devez installer le package outils réseau. Faisons ceci :

# miam -y install net-tools.x86_64

Vous pouvez maintenant voir les paramètres réseau :

mtu 1500 inet 192.168.159.129 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquets RX 319 octets 36709 (35,8 Ko) Erreurs RX 0 abandonné 0 dépassement 0 trame 0 Paquets TX 256 octets 148817 (145,3 KiB) Erreurs TX 0 abandonné 0 dépassement 0 transporteur 0 collision 0 lo: flags=73 mtu 65536 inet 127.0.0.1 masque de réseau 255.0.0.0 inet6 :: 1 préfixe 128 scopeid 0x10 boucle txqueuelen 0 (bouclage local) Paquets RX 6 octets 624 (624,0 B) Erreurs RX 0 abandonné 0 dépassement 0 trame 0 Paquets TX 6 octets 624 (624,0 B) Erreurs TX 0 abandonné 0 dépassement 0 porteuse 0 collision 0

Si vous ne souhaitez pas installer de package supplémentaire, vous pouvez utiliser une commande plus simple adresse IP avec paramètres :

# adresse IP 1 : lo : mtu 65536 qdisc noqueue state UNKNOWN lien/bouclage 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft pour toujours préféré_lft pour toujours inet6::1/ 128 hôte de portée valid_lft pour toujours préféré_lft pour toujours 2 : eno16777728 : mtu 1500 qdisc pfifo_fast state UP qlen 1000 lien/ether 00:0c:29:7d:59:3f brd ff:ff:ff:ff:ff:ff inet 192.168.159.129 /24 brd 192.168.159.255 portée dynamique globale eno16777728 valid_lft 1709sec préféré_lft 1709sec inet6 fe80::20c:29ff:fe7d:593f/64 lien de portée valid_lft pour toujours préféré_lft pour toujours

Nous avons vu la configuration du réseau, modifions-la maintenant. Disons que nous devons changer l'adresse IP. Pour ce faire, accédez au répertoire /etc/sysconfig/network-scripts et ouvrez le fichier pour le modifier. ifcfg-eth0. Ce fichier a approximativement le contenu suivant :

En utilisant les paramètres de ce fichier, nous obtenons l'adresse IP via DHCP. Pour enregistrer manuellement une IP statique, nous amenons le fichier au contenu suivant :

Nous avons modifié les paramètres :

Pour que les modifications prennent effet, vous devez relire les paramètres réseau :

Redémarrage du réseau (via systemctl) : [OK]

Vérifiez si la nouvelle configuration réseau a été appliquée :

# ifconfig : eno16777728 : drapeaux=4163 mtu 1500 inet 192.168.159.129 masque de réseau 255.255.255.0 diffusion 192.168.159.255 inet6 fe80::20c:29ff:fe7d:593f préfixlen 64 scopeid 0x20 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquets RX 672 octets 71841 (70,1 Ko) Erreurs RX 0 abandonné 0 dépassement 0 trame 0 Paquets TX 572 octets 290861 (284,0 KiB) Erreurs TX 0 abandonné 0 dépassement 0 transporteur 0 collisions 0

Tout va bien, les nouveaux paramètres de l'interface réseau sont installés.

Comment obtenir les paramètres réseau via DHCP

Considérons maintenant la situation inverse. Disons que certains paramètres de votre carte réseau sont définis manuellement. Mais vous souhaitez que votre ordinateur reçoive les paramètres réseau via DHCP en tant que client. Pour ce faire, vous devez effectuer l’opération inverse de ce que nous faisions auparavant. Autrement dit, ouvrez le fichier /etc/sysconfig/network-scripts/ifcfg-eth0 et supprimez les lignes avec les paramètres DNS, IPADDR, PREFIX, GATEWAY et spécifiez la valeur dans le paramètre BOOTPROTO "dhcp". Enregistrez le fichier et redémarrez le réseau :

# /etc/init.d/network restart

Ensuite, nous vérifions si notre client a reçu les paramètres via DHCP.

Comment configurer DNS dans CentOS 7

Les paramètres actuels du serveur DNS dans CentOS peuvent être consultés à deux endroits :

  1. Dans le fichier avec les paramètres de la carte réseau ifcfg-eth0, que nous avons déjà édité plusieurs fois.
  2. Dans le fichier /etc/resolv.conf

Pourquoi ils sont maintenant à deux endroits, je ne sais pas, mais avant, les paramètres du serveur DNS dans certaines distributions, je ne me souviens pas exactement lesquelles, n'étaient indiqués que dans resolv.conf, mais à un moment donné, cela a changé. Et tous les paramètres réseau ont commencé à être stockés dans un seul fichier avec l'adresse, la passerelle, le masque, etc. Si vous modifiez maintenant le fichier resolv.conf et y ajoutez des DNS de serveur, après un redémarrage, ils seront remplacés par les valeurs du fichier ifcfg-eth0.

Ainsi, afin de définir les paramètres du serveur DNS, vous devez modifier le fichier de paramètres réseau ifcfg-eth0, en ajoutant autant de serveurs que nécessaire. Par exemple comme ceci :

DNS1="192.168.159.2" DNS2="8.8.8.8" DNS3="8.8.4.4"

Pour appliquer les paramètres, enregistrer le fichier et redémarrer le réseau, tout se passe comme d'habitude. Après avoir redémarré le serveur, les paramètres DNS seront écrits dans le fichier resolv.conf

# cat /etc/resolv.conf # Généré par le serveur de noms NetworkManager 192.168.159.2 serveur de noms 8.8.8.8 serveur de noms 8.8.4.4

Comment désactiver ipv6 dans CentOS 7

Actuellement utilisation active protocole IPv6 non, et ce n'est pas nécessaire dans le cadre d'un travail normal. Même si nous avons peur depuis de nombreuses années qu'il n'y ait pratiquement plus d'adresses IP gratuites, en réalité il y en a encore assez pour tout le monde. Ainsi, pour des raisons pratiques, ipv6 n'est actuellement pas nécessaire sur le serveur et peut être désactivé.

Avant de désactiver IPv6, au cas où, vous devez vérifier quels programmes l'utilisent dans leur travail. Ceci est nécessaire afin d'éviter des erreurs dans leur fonctionnement en désactivant au préalable ipv6 dans les configurations. Afin de voir quels programmes sont bloqués sur l'interface ipv6, utilisez la commande netstat :

# netstat -tulnp Connexions Internet actives (serveurs uniquement) Proto Recv-Q Send-Q Adresse locale Adresse étrangère État PID/Nom du programme tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2317/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* ÉCOUTER 1333/sshd tcp6 0 0::1:25:::* ÉCOUTER 2317/master tcp6 0 0:::22:::* ÉCOUTER 1333/sshd udp 0 0 0.0.0.0:49252 0.0.0.0:* 694/avahi-daemon: r udp 0 0 0.0.0.0:123 0.0.0.0:* 715/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 694/avahi-daemon: r udp 0 0 127.0.0.1:323 0.0.0.0:* 715/chronyd udp6 0 0:::123:::* 715/chronyd udp6 0 0::1:323:::* 715/chronyd

Toutes les lignes avec ::: sont le protocole ipv6. Dans mon cas, il s'agit de sshd, postfix et chronyd. Désactivons ipv6 pour eux et ne laissons que ipv4.

Commençons par sshd. Ouvrez le fichier de paramètres /etc/ssh/sshd_config et recherchez les lignes :

#AddressFamily n'importe quel #ListenAddress 0.0.0.0

Décommentons-les et modifions-les. Cela devrait ressembler à ceci :

AddressFamily inet ListenAddress 0.0.0.0

Ouvrez maintenant le fichier de paramètres Postfix /etc/postfix/main.cf. On y cherche la ligne :

#inet_protocols = tous

Remplacer par :

Inet_protocoles = ipv4

Désactivez IPv6 dans Chronyd. Pour cela, créez le fichier /etc/sysconfig/ chronyde et ajoutez la ligne :

OPTIONS=-4

Maintenant, nous désactivons ipv6 dans CentOS. Ouvrez le fichier /etc/ sysctl.conf et ajoutez-y les lignes :

Net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Modification du fichier /etc/sysconfig/ réseau, en y ajoutant :

NETWORKING_IPV6=non IPV6INIT=non

Redémarrez et vérifiez le résultat :

# redémarrage # ifconfig eno16777728 : flags=4163 mtu 1500 inet 192.168.159.129 masque de réseau 255.255.255.0 diffusion 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) paquets RX 2301 octets 243024 (237,3 Ko) erreurs 0 abandonné 0 dépassement 0 trame 0 paquets TX 2138 octets 1327955 (1,2 Mo) Erreurs TX 0 abandonné 0 dépassement 0 porteuse 0 collision 0 lo : flags=73 mtu 65536 inet 127.0.0.1 masque de réseau 255.0.0.0 boucle txqueuelen 0 (bouclage local) paquets RX 0 octets 0 (0,0 B) erreurs RX 0 abandonné 0 dépassement 0 trame 0 paquets TX 0 octets 0 (0,0 B) erreurs TX 0 abandonné 0 dépassement 0 transporteur 0 collisions 0

Il n'y a aucune mention des adresses au format inet6 et ipv6 nulle part. Donc tout va bien, nous avons désactivé ipv6 dans CentOS. Vérifions maintenant la liste des ports ouverts :

# netstat -tulnp Connexions Internet actives (serveurs uniquement) Proto Recv-Q Send-Q Adresse locale Adresse étrangère État PID/Nom du programme tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2291/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* ÉCOUTER 1322/sshd udp 0 0 0.0.0.0:123 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 697/avahi-daemon: r udp 0 0 127.0.0.1:323 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:57259 0.0.0.0:* 697/avahi-daemon : r

Tous les ports sont en IPv4. Tout est en ordre, notre tâche est accomplie.

Comment changer le nom d'hôte dans CentOS 7

Par défaut, pendant Installations CentOS met le nom d'hôte localhost.localdomain. Si vous ne l'avez pas modifié, vous pourrez le faire plus tard. Tout d’abord, vérifions le nom d’hôte que vous avez défini. Cela se fait en utilisant la commande dans la console nom d'hôte, ou en utilisant unname:

# nom d'hôte localhost.localdomain # uname -n localhost.localdomain

Afin de changer le nom d'hôte dans CentOS, vous devez modifier le fichier /etc/nom d'hôte. Vérifions son contenu :

# cat /etc/hostname localhost.localdomain

Modifions ce fichier pour changer le nom d'hôte :

# mcedit /etc/hostname centos.localhost

Enregistrez le fichier et vérifiez :

# nom d'hôte centos.localhost

Il existe une commande prête à l'emploi qui définit immédiatement le nom du serveur requis :

# hostnamectl set-hostname centos.localhost

Tout va bien, nous avons changé le nom d'hôte en centos.localhost

Définir la passerelle par défaut dans CentOS 7

Si, pour une raison quelconque, vous n'avez pas défini la passerelle par défaut lors de la configuration des paramètres réseau, vous pouvez le faire manuellement. Tout d'abord, vérifions quelle passerelle par défaut est installée dans le système dans à l'heure actuelle:

# netstat -nr Table de routage IP du noyau Passerelle de destination Genmask Drapeaux Fenêtre MSS irtt Iface 0.0.0.0 149.154.71.254 0.0.0.0UG 0 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 149.154.70.0 0.0.0.0 255.255.254.0 0 0 0 eth0 192.168.1.0 10.8.0.2 255.255 255.0. UG 0 0 0 tun0

La ligne avec Destination 0.0.0.0 spécifie l'adresse de la passerelle. Si vous ne l'avez pas ou si une mauvaise passerelle est définie dans le champ Passerelle, vous pouvez modifier cela. Définissez la passerelle par défaut :

route ajouter le gw par défaut 192.168.0.1

Gestionnaire de réseau dans CentOS 7

CentOS dispose par défaut d'un service qui gère toutes les connexions réseau - Gestionnaire de réseau. Il surveille en permanence les paramètres réseau et, à l'aide d'un démon de gestion de configuration, apporte les modifications appropriées aux périphériques réseau actifs. Il prend en charge les fichiers de configuration ifcfg standard.

Liste des utilitaires et applications réseau :

Les utilisateurs n'interagissent pas directement avec NetworkManager sur CentOS ; ils utilisent des utilitaires graphiques et de ligne de commande pour ce faire. Un de ces utilitaires est tui réseau de configuration système.

Tui réseau de configuration système dans CentOS 7

Pour gérer les paramètres réseau dans CentOS, vous pouvez utiliser un utilitaire graphique nmtui. Il est très simple de vérifier sa présence dans le système. Il suffit de l'exécuter dans la console :

Si vous ne l’avez pas installé, c’est très facile à réparer. Installer dans le tui réseau de configuration du système CentOS :

# miam, installez NetworkManager-tui

En utilisant tui vous pouvez spécifier tous les paramètres réseau que nous avons effectués auparavant via la ligne de commande et en modifiant les fichiers de configuration. Faisons ça. Appelez le programme :

Sélectionnez le premier élément Modifier une connexion, puis sélectionnez l'interface réseau et cliquez sur « Modifier » :

Ici, nous pouvons changer le nom de la carte réseau, l'adresse Mac, spécifier le type de paramètres réseau - manuel ou DHCP, spécifier manuellement l'adresse IP, l'adresse de la passerelle, le serveur DNS, ajouter des routes et quelques autres paramètres :


Une fois l'édition terminée, enregistrez les paramètres en cliquant sur OK.
Si vous sélectionnez l'élément sur le premier écran de l'utilitaire Définir le nom d'hôte du système, vous pouvez spécifier rapidement le nom d'hôte. Le résultat sera le même que précédemment dans la console.

Comment ajouter une route statique dans CentOS 7

Pour contrôler le routage sur CentOS, vous devrez peut-être ajouter une route statique. C'est assez simple à faire en utilisant la commande console. Tout d'abord, vérifions les itinéraires existants en utilisant netstat:

# netstat -nr Table de routage IP du noyau Passerelle de destination Genmask Indicateurs Fenêtre MSS irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 eno167777 28

DANS dans ce cas Nous avons une route pour l'adresse 0.0.0.0/0.0.0.0 ; la passerelle est 192.168.159.2, qui est également la passerelle par défaut. Autrement dit, il n’existe pas d’itinéraires statiques. Ajoutons-en un.

Disons que nous avons un sous-réseau 192.168.8.0, masque 255.255.255.0, le trafic vers ce sous-réseau est acheminé par la passerelle 192.168.159.5. Ajoutez une route :

# route ajouter -net 192.168.8.0/24 gw 192.168.159.5

Vérifiez si l'itinéraire ajouté est apparu dans table de routage:

# netstat -nr Table de routage IP du noyau Passerelle de destination Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.8.0 192.168.159.5 255.255.255.0 U G 0 0 0 fr o16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777728

Tout va bien, l'itinéraire a été ajouté. Mais après le redémarrage, cette route statique sera supprimée. Pour éviter que cela ne se produise et enregistrer les itinéraires ajoutés, vous devez les écrire dans un fichier spécial. Dans le dossier /etc/sysconfig/network-scripts, créez un fichier appelé route-eth0 le contenu suivant :

# mcedit /etc/sysconfig/network-scripts/route-eth0 192.168.8.0/24 via 192.168.159.5

Redémarrez et vérifiez si la route est en place :

# reboot # netstat -nr Table de routage IP du noyau Passerelle de destination Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.8.0 192.168.159.5 255.255.25 5.0 UG 0 0 0 eno16777728 192.168.159.0 0.0 .0.0 255.255.255.0 U 0 0 0 eno16777728

Tout va bien, la route statique a été ajoutée.

Comment configurer 2 adresses IP sur une seule interface

Si vous devez configurer 2 PI adresses sur une interface dans CentOS, cela est alors assez simple. Utilisons la commande ifconfig. Tout d'abord, vérifions la liste des interfaces réseau :

# ifconfig eno16777728 : flags=4163 mtu 1500 inet 192.168.159.129 masque de réseau 255.255.255.0 diffusion 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquets RX 254 octets 30173 (29,4 Ko) Erreurs RX 0 abandonnées 0 dépassement 0 image 0 TX paquets 204 octets 27658 (27,0 Ko) Erreurs TX 0 abandonné 0 dépassement 0 porteuse 0 collision 0 lo : flags=73

Ajoutons une autre adresse IP 192.168.159.120 à l'interface eno16777728 :

# ifconfig eno16777728:1 192.168.159.120

Vérifions ce qui s'est passé :

# ifconfig eno16777728 : flags=4163 mtu 1500 inet 192.168.159.129 masque de réseau 255.255.255.0 diffusion 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquets RX 254 octets 30173 (29,4 Ko) Erreurs RX 0 abandonnées 0 dépassement 0 image 0 TX paquets 204 octets 27658 (27,0 Ko) Erreurs TX 0 abandonné 0 dépassement 0 porteuse 0 collision 0 eno16777728:1 : flags=4163 mtu 1500 inet 192.168.159.120 masque de réseau 255.255.255.0 diffusion 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) lo : flags=73 mtu 65536 inet 127.0.0.1 masque de réseau 255.0.0.0 boucle txqueuelen 0 (bouclage local) paquets RX 11 octets 940 (940,0 B) erreurs RX 0 abandonné 0 dépassement 0 trame 0 paquets TX 11 octets 940 (940,0 B) erreurs TX 0 abandonné 0 dépassement 0 transporteur 0 collisions 0

Tout va bien, nous avons ajouté une deuxième adresse IP à la même interface. Mais après un redémarrage, l'adresse supplémentaire ne sera pas enregistrée. Pour l'enregistrer, vous devez créer un fichier de paramètres d'interface dans le dossier /etc/sysconfig/network-scripts

# mcedit /etc/sysconfig/network-scripts/ ifcfg-eno16777728:1 DEVICE=eno16777728:1 BOOTPROTO=statique IPADDR=192.168.159.120 NETMASK=255.255.255.0 ONBOOT=oui

Enregistrez le fichier, redémarrez et vérifiez ce qui s'est passé. La deuxième adresse IP doit être en place.

Comment faire un redémarrage du réseau dans CentOS 7

J'ai déjà abordé cette question plus tôt, mais juste au cas où, nous la répéterons séparément. Disons que vous avez apporté des modifications à la configuration de votre réseau. Comment puis-je appliquer ces paramètres sans redémarrer le serveur ? Très simple. Pour redémarrer le réseau dans CentOS, utilisez simplement la commande :

# /etc/init.d/network restart

Le service NetworkManager relira tous les paramètres réseau et appliquera les modifications.

Comment connaître l'adresse IP dans CentOS 7

Afin de connaître rapidement l'adresse IP actuelle dans CentOS, vous devez utiliser les commandes suivantes :

#ifconfig | grep inet inet 192.168.159.129 masque de réseau 255.255.255.0 diffusion 192.168.159.255 inet 127.0.0.1 masque de réseau 255.0.0.0

Ou la deuxième option pour déterminer l'adresse IP locale :

# adresse IP | grep inet inet 127.0.0.1/8 hôte de portée lo inet 192.168.159.129 /24 brd 192.168.159.255 portée mondiale eno16777728

Les deux commandes vous permettent de connaître rapidement votre adresse IP.

Que faire si CentOS ne voit pas la carte réseau ?

Vous avez installé le serveur, démarré et découvert qu'il n'y a pas une seule carte réseau dans le système. Que faire dans ce cas ? Tout d’abord, regardez le résultat de la commande dmesg et recherchez-y une mémoire de votre carte. Peut-être qu'il est dans le système, mais qu'il n'est pas activé. Vous pouvez l'activer en utilisant nmtui, ce que j'ai dit ci-dessus.

Il y a un élément de menu Activer la connexion, vous devez y accéder et activer votre carte réseau. Après cela, vous pouvez le configurer.

Si votre carte réseau n'est pas dans le système, vous devez rechercher sur Internet des informations sur cette carte réseau par modèle. Peut-être qu'il y aura des pilotes pour cela dans les référentiels. C'est une situation assez courante. Le plus souvent, des pilotes seront trouvés et devront être installés correctement.

Il est toujours possible que vous ne voyiez pas votre carte lors de la sortie de la commande ifconfig si aucun fil réseau n'est branché sur cette carte. Pour être sûr de visualiser toutes les interfaces, vous devez utiliser le commutateur -a :

# ifconfig -a

Il existe une autre façon de rechercher une carte réseau dans le système. Installer le paquet pciutils:

# miam -y installer pciutils

Et regardez le résultat de la commande :

#lspci | grepEthernet

Si la carte réseau est vue par le système, cela devrait ressembler à ceci :

02:00.0 Contrôleur Ethernet : Contrôleur Ethernet Gigabit Intel Corporation 82545EM (cuivre) (rév. 01)

Si la sortie est vide, alors la carte réseau n'est pas définie.

Que faire si le réseau n'est pas disponible sur CentOS ?

Disons que vous essayez d'envoyer une requête ping à une adresse, par exemple 8.8.8.8, et que vous recevez une réponse indiquant que le réseau n'est pas disponible :

#ping 8.8.8.8

Et en réponse vous obtenez :

Connecter : le réseau n'est pas disponible

Cette situation peut survenir si aucune passerelle par défaut n'est installée. Vous pouvez l'ajouter à l'aide de la commande :

# route ajouter le gw par défaut 192.168.0.1

Si le problème ne vient pas de la passerelle, vous devez alors vérifier les paramètres des cartes réseau. S'il n'y a pas d'adaptateur actif, vous recevrez également un message indiquant que le réseau ne fonctionne pas. Il est nécessaire qu'au moins une carte réseau soit correctement configurée sur le système. Comment procéder est écrit ci-dessus.

À l'aide des utilitaires réseau traceroute, creusez dans CentOS

Pour diagnostiquer les connexions réseau dans CentOS, il est utile d'utiliser des utilitaires spéciaux. Mais si vous avez utilisé l'installation minimale, ils ne seront probablement pas sur le système. Par exemple, l'utilitaire populaire traceroute Lorsque vous essayez de le lancer, il affichera le message suivant :

# traceroute ya.ru bash : traceroute : commande introuvable

Il doit être installé séparément du référentiel :

# miam -y installer traceroute

Même chose avec le programme populaire creuser pour travailler avec des serveurs et des enregistrements DNS :

# dig ya.ru bash : dig : commande introuvable

Pour que cet utilitaire réseau fonctionne, vous devez installer le package utilitaires de liaison:

# miam -y installer bind-utils

Configuration du VLAN 802.1Q dans CentOS 7

Pour créer une interface balisée sur CentOS, vous devez d'abord vérifier la prise en charge du noyau 8021q:

#modprobe8021q

S'il n'y a pas de message d'erreur, alors tout est en ordre, le module est chargé. Si le module n'est pas trouvé, vous devez reconstruire les modules du noyau, permettant ainsi la prise en charge du module requis. Vérifions, au cas où, si le module est chargé :

# lsmod | grep 8021q 8021q 29022 0 garp 14384 1 8021q mrp 18542 1 8021q

Tout va bien, le module 8021q est chargé, ajoutons-le au démarrage :

# echo 8021q >> /etc/modules-load.d/8021q.conf

Créez maintenant un fichier de configuration pour le vlan dans /etc/sysconfig/network-scripts :

# mcedit ifcfg-eth0.2000 VLAN=oui DEVICE=eth0.2000 BOOTPROTO=statique ONBOOT=oui TYPE=Vlan IPADDR=192.168.100.2 MASQUE RÉSEAU=255.255.255.0

J'attire votre attention sur ce qui est souligné en gras. Dans toutes les instructions sur Internet que j'ai rencontrées, ce paramètre était indiqué comme TYPE=Ethernet, mais avec ce paramètre, l'interface avec vlan n'a pas augmenté, une erreur est apparue :

Erreur : aucun périphérique trouvé pour la connexion "Système eth0.2000".

Ce n’est qu’après l’avoir réparé que tout a fonctionné comme il se doit. Alors enregistrez et activez l'interface :

# ifup eth0.2000 Connexion activée avec succès (chemin actif D-Bus : /org/freedesktop/NetworkManager/ActiveConnection/7)

Vérification de notre VLAN :

# ip l ls 1 : lo : mtu 65536 qdisc noqueue state INCONNU mode DEFAULT lien/bouclage 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link/ether 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff 3 : eth0.2000@eth0 : mtu 1500 qdisc noqueue state UP mode DEFAULT link/ether 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff

Tout va bien, l'interface taguée est en place. Par analogie, vous pouvez créer plusieurs interfaces similaires, sans oublier de modifier leurs noms et adresses.

Ceci conclut mon volumineux matériel sur le thème de la configuration du réseau dans CentOS. Je serai très heureux de recevoir des commentaires, des remarques et des corrections. Ils le feront probablement. En créant de tels supports, j'apprends tout d'abord moi-même et j'améliore mes connaissances dans le domaine. Il peut y avoir des erreurs et des fautes de frappe ici quelque part, même si je vérifie tout sur les systèmes en direct lors de la rédaction des manuels, mais des inexactitudes et des fautes de frappe sont toujours possibles.

Cours en ligne "Administrateur Linux"

Si vous souhaitez apprendre à créer et maintenir des systèmes hautement disponibles et fiables, je vous recommande de vous familiariser avec cours en ligne « Administrateur Linux » dans OTUS. Le cours n'est pas destiné aux débutants ; pour l'admission, vous avez besoin connaissances de base sur les réseaux et installer Linux sur une machine virtuelle. La formation dure 5 mois, à l'issue desquels les diplômés retenus pourront passer des entretiens avec des partenaires. Testez-vous pour test d'entrée et consultez le programme pour plus de détails.

À partir d'EL6, l'éditeur de logiciels a décidé de supprimer boot.iso du répertoire /images et de l'expédier en tant que support indépendant distinct. À cause de grande taille Pour cette image, nous avons décidé de faire de même. Actuellement, l'image du disque d'installation réseau s'appelle netinstall.iso et se trouve dans le répertoire isos/ avec d'autres images d'installation.

2. Pourquoi dois-je me connecter et l'utiliser moi-même pour que ma carte réseau Ethernet fonctionne ?

Et pourquoi, par rapport à la pratique courante, les noms des interfaces réseau sont-ils nommés « incorrectement » ? Après tout, cela viole la règle Unix de « ne pas modifier les attentes ».

L'éditeur de logiciels a ajouté NetworkManager à la configuration par défaut et les interfaces réseau sont (d'une manière ou d'une autre inexplicablement) désactivées par défaut. Ce problème peut être résolu pendant le processus d'installation, à l'étape où le programme d'installation vous invite à configurer la langue/le clavier/le périphérique de stockage/le logiciel dans la fenêtre principale du programme d'installation, rendant ainsi votre carte réseau active. Pour ce faire, vous devez cliquer sur « Réseau et nom d'hôte », sélectionner la connexion réseau Ethernet que vous souhaitez modifier et cliquer sur le bouton « Désactivé » dans le coin supérieur droit. En supposant que vous puissiez utiliser DHCP, votre connexion réseau passera à l'état d'obtention d'une adresse réseau. Si vous devez définir manuellement les paramètres réseau, cliquez sur « Configurer », puis saisissez et enregistrez valeurs requises. Pour que les modifications prennent effet, vous devrez probablement désactiver puis activer l'interface réseau nouvellement configurée. Cliquez sur "Terminé". En plus de la méthode ci-dessus, la connexion réseau après l'installation peut être configurée à l'aide de « NetworkManager » (situé dans « Système ; Préférences ; Connexions réseau », ou faites un clic droit sur la petite icône réseau dans la zone de notification, puis « Modifier les connexions » ).

Si vous n'utilisez pas NetworkManager, un résultat similaire peut être obtenu en modifiant le fichier de configuration de l'interface réseau correspondante (généralement /etc/sysconfig/network-scripts/ifcfg-eth0) : "ONBOOT=no" en "ONBOOT=yes ". Si vous utilisez DHCP, vous devrez peut-être ajouter la ligne « BOOTPROTO=dhcp ». Pour une IP statique, vous aurez besoin de "BOOTPROTO=static".

En supposant que le nom du périphérique réseau est eth0, la modification de la ligne ONBOOT peut être effectuée (en tant que root) comme suit :

# cd /etc/sysconfig/network-scripts/ # sed -i -e "s@^ONBOOT="no@ONBOOT="oui@" ifcfg-eth0

Concernant les « attentes modifiées » : l'exemple précédent utilise la dénomination d'interface réseau « traditionnelle » : eth0. Cependant, d'autres noms sont également possibles, comme par exemple em1, p3p1 etc. Qu'on le veuille ou non, ce concept de dénomination est un développement ultérieur de Linux. Ceci a été décrit précédemment dans la « distribution test » de l'éditeur de logiciels. Voir également l'article et le billet de blog de Dell

3. Que faire si je souhaite revenir à l'ancien nom ?

Pour ce faire il y a 3 étapes nécessaires :

  • ajoutez "inet.ifnames=0" et "biosdevname=0" - paramètres du noyau du chargeur de démarrage grub ;
  • modifiez le fichier de configuration de votre interface réseau, situé dans /etc/sysconfig/network-scripts/, en le renommant "ifcfg-ethX" ;
  • Si vous disposez de plusieurs interfaces réseau et que vous souhaitez contrôler le nom de chacune d'elles au lieu de laisser le noyau le faire, remplacez /usr/lib/udev/rules.d/60-net.rules par /etc/udev/rules.d/ 60-net.règles

4. Mais j'ai juste besoin que tout fonctionne et puisse modifier manuellement les fichiers de configuration

La plupart des options d'installation ne nécessitent pas la complexité excessive d'une interaction avec NetworkManager ; la modification manuelle des fichiers de configuration est suffisante. Vous trouverez ci-dessous un fragment de configuration d'une interface réseau utilisant DHCP sans la participation de NetworkManager :

# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" BOOTPROTO=dhcp NM_CONTROLLED="non" PERSISTENT_DHCLIENT=1 ONBOOT="oui" TYPE=Ethernet DEFROUTE=oui PEERDNS=oui PEERROUTES=oui IPV4_FAILURE_FATAL=oui IPV6INIT=oui IPV6_AUTOCONF=oui IPV6_DEFROUTE=oui IPV6_PEERDNS=oui IPV6_PEERROUTES=oui IPV6_FAILURE_FATAL=non NAME="eth0" #

ou la configuration habituelle en utilisant "static":

$ cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" HWADDR="00:21:70:10:7E:CD" NM_CONTROLLED="non" ONBOOT="oui" BOOTPROTO=statique # BOOTPROTO= dhcp IPADDR=10.16.1.106 NETMASK=255.255.255.0 # # la GATEWAY est parfois dans : /etc/sysconfig/network GATEWAY=10.16.1.1

après quoi vous pouvez ajouter d'autres propriétés communes, telles que le nom d'hôte ou le serveur DNS :

$ cat /etc/sysconfig/network HOSTNAME=acme.example.com DNS1=10.16.1.112 DNS2=8.8.8.8 ## DNS2=76.242.0.28 SEARCH=example.com

Ces paramètres sont facultatifs car Le serveur DHCP lui-même peut fonctionner avec eux. Script d'initialisation Vous pouvez déterminer des paramètres tels que le nom de l'ordinateur à l'aide des enregistrements PTR dans un environnement DNS correctement configuré, mais certains utilisateurs devront peut-être modifier manuellement les paramètres. Une documentation complète sur les scripts d'initialisation peut être trouvée en utilisant :

Rpm -qd scripts d'initialisation

même dans un environnement où il n'y a pas homme-package et ses dépendances.

5. Comment désactiver IPv6 ?

L'un des employés de l'éditeur de logiciels recommande de laisser le module IPv6 activé, car... la désactivation peut affecter le fonctionnement de SELinux et d’autres composants. Au lieu de cela, il est suggéré d'ajouter les lignes suivantes à /etc/sysctl.conf :

Net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Et pour désactiver IPv6 sur un système en cours d'exécution :

Écho 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6 écho 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6

Sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.default.disable_ipv6=1

Remarque 1: Si IPv6 est désactivé, des problèmes peuvent survenir lors du transfert des X via ssh. Pour résoudre ce problème, vous devez changer /etc/ssh/sshd_config comme suit : soit changer

#AddressFamily quelconque

AdresseFamille inet

("inet" correspond à "ipv4 uniquement", "inet6" - ipv6)

Ou supprimez le signe "#" avant la ligne

#ÉcouterAdresse 0.0.0.0

et redémarrez ssh

Remarque 2: Si vous rencontrez des problèmes lors du démarrage de Postfix lorsque IPv6 est désactivé, modifiez /etc/postfix/main.cf - commentez la partie « localhost » et remplacez-la par le bouclage ipv4 :

#inet_interfaces = hôte local inet_interfaces = 127.0.0.1

ou supprimez la ligne avec ipv6 localhost du fichier /etc/hosts.

Remarque 3: Pour désactiver RPCBIND ipv6 (rpc, rpc.mountd, rpc,statd), commentez les lignes avec "udp6" et "tcp6" dans le fichier /etc/netconfig :

UDP TPI_CLTS V Inet UDP - - TCP tpi_cots_ord v inet tcp - - #udp6 tpi_clts v Innet6 udp - #tcp6 tpi_cots_ord v Innet6 tcp - - rawip tpi_RARAW - Inet - - - - Local tpi_cots_cor D - bouclage - - - unix tpi_cots_ord - lookback - - - - - - - - - - - - - - - - - - - - -

6. Où puis-je télécharger la version 32 bits ?

La version 32 bits de CentOS 7 se trouve ici : http://mirror.centos.org/altarch/7/isos/i386/

7. Où est passé ifconfig/netstat ?

Parce que utilitaires siconfig Et netstatÉtant donné que les pages de manuel de CentOS-5 et CentOS-6 les marquent comme obsolètes depuis plus d'une décennie, RedHat a décidé de ne pas installer le package net-tool par défaut sur CentOS-7. Une des raisons à cela, par exemple, est que ifconfig n'affiche pas toutes les informations sur l'adresse IP de l'interface - utilisez plutôt la commande "ip". Les utilitaires fournis en retour sont "ss" et "ip". Cependant, si vous avez vraiment besoin des utilitaires ifconfig et netstat, vous pouvez installer le package net-tools : yum install net-tools.



Avez-vous aimé l'article? Partagez avec vos amis !