Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/09/2020, à 18:57

splvvvn

[Résolu] Interface virtuelle qui "down" subitement

Bonjour à tous,

Je suis nouveau sur le forum et j'ai enfin décidé de m'inscrire, cela fait un moment que je lis nombre des topics.
Voilà, je découvre Linux et m'amuse à réaliser des maquettes avec des VM (Virtual Box 6.1.12) sur GNS3 (2.2.10).
Je réalise une infrastructure type "entreprise" avec des services disposant de leurs propres VLANs, d'un serveur proposant DHCP, chrony, DNS, LDAP et dont les interfaces virtuelles sont les gateways des différents services. Cette infra dispose d'une DMZ et d'un firewall (avec un service squid également) qui est une VM Ubuntu que j'ai conf avec Iptables. Son interface WAN est en NAT sur mon hôte.

- Ma maquette GNS3 :
1599676280.jpg

- /etc/network/interfaces du serveur_management :

#Interfaces(s) file used by ifup(8) and ifdown(8)
#Includes files from /etc/network/interfaces.d :
source-directory /etc/network/interfaces.d

#loopback
auto lo
iface lo inet loopback

#Interface enp0s3
#VLAN 1 "natif"
auto enp0s3
iface enp0s3 inet manual
pre-up ifconfig $IFACE UP
post-down ifconfig $IFACE DOWN

#Interface enp0s3.2
#VLAN 2 "vinfo"
auto enp0s3.2
iface enp0s3.2 inet static
vlan-raw-device enp0s3
address 192.168.2.198
netmask 255.255.255.240
up route add -net 192.168.2.192 netmask 255.255.255.240 gw 192.168.2.198
 
#Interface enp0s3.3
#VLAN 3 "vope"
auto enp0s3.3
iface enp0s3.3 inet static
vlan-raw-device enp0s3
address 192.168.1.126
netmask 255.255.255.128
up route add -net 192.168.1.0 netmask 255.255.255.128 gw 192.168.1.126

#Interface enp0s3.4
#VLAN 4 "vcompta"
auto enp0s3.4
iface enp0s3.4 inet static
vlan-raw-device enp0s3
address 192.168.1.190
netmask 255.255.255.240
up route add -net 192.168.1.176 netmask 255.255.255.240 gw 192.168.1.190

#Interface enp0s3.5
#VLAN 5 "vrh"
auto enp0s3.5
iface enp0s3.4 inet static
vlan-raw-device enp0s3
address 192.168.1.174
netmask 255.255.255.240
up route add -net 192.168.1.160 netmask 255.255.255.240 gw 192.168.1.174

#Interface enp0s3.6
#VLAN 6 "vcom"
auto enp0s3.6
iface enp0s3.6 inet static
vlan-raw-device enp0s3
address 192.168.1.158
netmask 255.255.255.224
up route add -net 192.168.1.128 netmask 255.255.255.224 gw 192.168.1.158

#Interface enp0s3.7
#VLAN 7 "vman"
auto enp0s3.7
iface enp0s3.7 inet static
vlan-raw-device enp0s3
address 192.168.1.201
netmask 255.255.255.240
up route add -net 192.168.1.200 netmask 255.255.255.240 gw 192.168.1.201

#Interface enp0s3.8
#VLAN 8 "VOIP"
auto enp0s3.8
iface enp0s3.8 inet static
vlan-raw-device enp0s3
address 172.16.101.254
netmask 255.255.255.0
up route add -net 172.16.101.0 netmask 255.255.255.0 gw 172.16.101.254

#Configuration NAT
post-up iptables-restore < /etc/iptables_rules.save

- ifconfig du serveur_management :

 enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::a00:27ff:fe96:d571 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 609 bytes 66494 (66.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.2.198 netmask 255.255.255.240 broadcast 192.168.2.207
inet6 fe80::a00:27ff:fe96:d517 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 81 bytes 8863 (8.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.126 netmask 255.255.255.128 broadcast 192.168.1.127
inet6 fe80::a00:27ff:fe96:d5:17 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 79 bytes 8715 (8.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.4: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.190 netmask 255.255.255.240 broadcast 192.168.1.191
inet6 fe80::a00:27ff:fe96:d5:17 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 82 bytes 8936 (8.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.174 netmask 255.255.255.240 broadcast 192.168.1.175
inet6 fe80::a00:27ff:fe96:d517 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 81 bytes 8863 (8.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.6: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.158 netmask 255.255.255.224 broadcast 192.168.1.159
inet6 fe80::a00:27ff:fe96:d517 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 82 bytes 8936 (8.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.7: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.201 netmask 255.255.255.240 broadcast 192.168.1.207
inet6 fe80::a00:27ff:fe96:d517 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 81 bytes 8863 (8.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

enp0s3.8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.101.254 netmask 255.255.255.0 broadcast 172.16.101.255
inet6 fe80::a00:27ff:fe96:d517 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:96:d5:17 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 81 bytes 8853 (8.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Boucle locale)
RX packets 460 bytes 39219 (39.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 460 bytes 39219 (39.2 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Dans un premier temps, mon firewall est totalement ouvert et ma préoccupation a été que l'ensemble des machines se ping et sortent sur Internet : et c'est OK !
Sauf qu'il y a quelques jours, sans manipulation particulière, mon interface virtuelle enp0s3.7 est down. Elle correspond à l'interface qui mène sur le VLAN "management" routant vers le VPCS qui se nomme "imprimantes", vers le firewall et donc la DMZ et le WAN.
Voici les messages d'erreurs que j'ai obtenu suite à un /etc/init.d/network restart et status :

/etc/init.d/networking restart
Restarting networking (via systemctl): networking.serviceJob for networking.service
vice failed because the control process exited with error code.
See "systemctl status networking.service" and "journalctl -xe" for details.
failed !

/etc/init.d/networking status
networking.service - Raise network interfaces
Loaded : loaded (/lib/systemd/system/networking.service; enabled; vendor pr
eset: enabled)
Active: failed (Result: exit-code) since Wed 2020-09-09 16:44:55 CEST; 24s ago
Docs: man:interfaces(5)
Process: 106316 (code=exited, status=1/FAILURE)

sept. 09 16:44:52 srvmanagement.mon-entreprise.fr systemd[1]: Starting Raise...
sept. 09 16:44:54 srvmanagement.mon-entreprise.fr ifup[106316] ifup: waiting...3
sept. 09 16:44:55 srvmanagement.mon-entreprise.fr ifup[107355]: RTNETLINK ans...s
sept. 09 16:44:55 srvmanagement.mon-entreprise.fr systemd[1]: networking.ser...RE
sept. 09 16:44:55 srvmanagement.mon-entreprise.fr systemd[1]: networking.ser...'.
sept. 09 16:44:52 srvmanagement.mon-entreprise.fr systemd[1]: Failed to star...s.
Hint: Some lines were ellipsized, use -l to show in full.

Après quelques essais et recherches sur Internet, j'ai soldé ce problème avec ces commandes :

ip addr flush dev enp0s3
ifdown --all
ifup --all
service networking restart

Sauf que... aujourd'hui, rebelote : enp0s3.7 est "down", même message en faisant un

/etc/init.d/network restart

et

status

et cette fois-ci "ma précédente solution" ne fonctionne pas. Donc après quelques pistes sur Internet infructueuse je me tourne vers vous et vous partage quand même les résultats obtenus de ces dernières recherches infructueuses :

En gros, j'ai effectué une série de

ifdown --force enp0s3.7

et de

ifup -v enp0s3.7

dont voici les retours :

ifdown --force enp0s3.7
run-parts: failed to stat component /etc/network/if-post-down.d/avahi-daemon: N
o such file or directory
Cannot find device "enp0s3.7"
ifup -v enp0s3.7
if test -d /sys/class/net/enp0s3 &&               ! ip link show enp0s3.7 >/dev/null
2>&1;     then       if test 'cat /sys/class/net/enp0s3/type'  -eq 32; then
              echo 0x7 > /sys/class/net/enp0s3/create_child;      else
    /sbin/ip link set up dev enp0s3;                   /sbin/ip linl add link enp0s3 n
ame enp0s3.7 type vlan id 7;  fi;    fi

ifup: configuring interface enp0s3.7=enp0s3.7 (inet)
/bin/run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/vlan
run-parts: executing /etc/network/if-pre-up.d/wireless-tools
run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
/sbin/ip addr add 192.168.1.201/255.255.255.240 broadcast 192.168.1.207
dev enp0s3.7 label enp0s3.7
/sbin/ip link set dev enp0s3.7 up

route add -net 192.168.1.200 netmask 255.255.255.240 gw 192.168.1.201
route: netmask doesn't match route address
Usage: inet_route [-vF] del {-host|-net} Target[/prefix] [gw Gw] [metric M]
ev] If]
inet_route [-vF] add {-host|-net} Target[/prefix] [gw Gw] [metric M]

A la lecture de ce dernier résultat, j'ai été vim mon /etc/network/interfaces afin de commenter # la ligne correspondante à la route semblant être source de problème et suite à cela, à nouveau un /etc/init.d/networking restart se soldant par un failed.
J'ai poursuivi avec de nouveau 

ifdown --force enp0s3.7

et de

ifup -v enp0s3.7

dont les retours ont mis au "vert" mon /etc/init.d/networking status !

ifdown --force enp0s3.7
run-parts: failed to stat component /etc/network/if-post-down.d/avahi-daemon: N
o such file or directory
Cannot find device "enp0s3.7"

ifup -v enp0s3.7
if test -d /sys/class/net/enp0s3 &&      ! ip link show enp0s3.7 >/dev/null
2>&1;    then         if test  'cat /sys/class/net/enp0s3/type'  -eq 32; then
             echo 0x7 > /sys/class/net/enp0s3/create_child;      else
/sbin/ip link set up dev enp0s3;        /sbin/ip link add link enp0s3 n
ame enp0s3.7 type vlan id 7;     fi;      fi

ifup: configuring interface enp0s3.7=enp0s3.7 (inet)
/bin/run-parts: --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/vlan
run-parts: executing /etc/network/if-pre-up.d/wireless-tools
run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
/sbin/ip addr add 192.168.1.201/255.255.255.240 broadcast 192.168.1.207
dev enp0s3.7 label enp0s3.7
/sbin/ip link set dev enp0s3.7   up

/bin/run-parts --exit-on-error --verbose /etc/network/if-up.d
run-parts: executing /etc/network/if-up.d/avahi-autoipd
run-parts: executing /etc/network/if-up.d/bind9
run-parts: executing /etc/network/if-up.d/chrony
run-parts: executing /etc/network/if-up.d/ethtool
run-parts: executing /etc/network/if-up.d/ip
run-parts: executing /etc/network/if-up.d/openntpd
run-parts: executing /etc/network/if-up.d/openvpn
run-parts: executing /etc/network/if-up.d/vlan
run-parts: executing /etc/network/if-up.d/wpasupplicant
 ifup enp0s3.7
ifup: interface enp0s3.7 already configured

Cependant, si enp0s3.7 est à nouveau "configuré", ma route est commentée donc aucun ping ne passe, la dé-commentée revient au problème initial alors que pourtant comme je l'indiquais l'ensemble était opérant il y a peu.... Les interfaces sont notées "non-gérées" quand je fais un nmcli. Un stop/restart de network-manager ne change rien comme un reboot ne révèle pas de messages d'erreurs au redémarrage pouvant servir de piste. Bref, je vous sollicite pour résoudre ce mystère car je souhaite réellement apprendre mais surtout comprendre tous cela et me perfectionner donc votre aide est la bienvenue big_smile un gros merci d'avance et n'hésitez surtout pas quant à ce que je communique plus d'informations sur ma configuration

Dernière modification par splvvvn (Le 10/09/2020, à 18:28)

Hors ligne

#2 Le 09/09/2020, à 21:28

cqfd93

Re : [Résolu] Interface virtuelle qui "down" subitement

Modération

Tous les retours de commandes sont à donner sous forme de texte entre balises code (explications ici), pas d'images.


cqfd93

Hors ligne

#3 Le 09/09/2020, à 23:48

splvvvn

Re : [Résolu] Interface virtuelle qui "down" subitement

cqfd93 a écrit :

Modération

Tous les retours de commandes sont à donner sous forme de texte entre balises code (explications ici), pas d'images.


Corrigé wink merci !

Edit : problème résolu ! 192.168.1.200 n'est pas un multiple de 16 donc ne peut-être d'un 255.255.255.240
Je me permet de citer la personne qui a résolu mon problème, sa réponse étant une bonne leçon (pour moi) et d'excellent conseil (si jamais mon topic sert un jour au passage à quelqu'un d'autre) :
"1) Les préfixes de tailles non multiples de 8 (masques contenant autre chose que 255 et 0) sont peu lisibles et propices aux erreurs. La preuve ici. On peut être contraint d'en utiliser quand on doit découper un bloc d'adresses IPv4 publiques au plus juste (ressource devenant rare et chère), mais je ne vois aucune justification quand on utilise des adresses privées qui sont une ressource abondante. Même le plus petit bloc privé 192.168.0.0/16 peut être divisé en 256 préfixes /24 (255.255.255.0), ce qui est plus que suffisant pour une dizaine de VLAN. Ne parlons pas du plus grand 10.0.0.0/8.

2) Ajouter une route explicite pour le préfixe configuré sur l'interface est superflu. Cette route est déjà créée implicitement à partir de l'adresse et du masque.

3) Spécifier l'adresse de l'interface elle-même comme passerelle est absurde. Par définition une route directe n'a pas besoin de passerelle."

Dernière modification par splvvvn (Le 10/09/2020, à 18:36)

Hors ligne