1 votes

Ubuntu 20.04 et Docker 19.03.8 - docker supprime la passerelle par défaut et rompt la connectivité de l'hôte

J'ai ubuntu 20.04 avec une adresse IP statique. Au premier démarrage, je n'ai aucun problème et les routes semblent correctes :

# ping 4.2.2.2
PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=55 time=15.1 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=55 time=13.2 ms

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 enp7s0
169.254.0.0     0.0.0.0         255.255.0.0     U     268    0        0 veth72d13a6
169.254.0.0     0.0.0.0         255.255.0.0     U     270    0        0 veth4282136
169.254.0.0     0.0.0.0         255.255.0.0     U     272    0        0 veth231344a
169.254.0.0     0.0.0.0         255.255.0.0     U     274    0        0 veth311ab6b
169.254.0.0     0.0.0.0         255.255.0.0     U     276    0        0 vethce07e31
169.254.0.0     0.0.0.0         255.255.0.0     U     278    0        0 veth634311f
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp7s0

Cependant, une fois que j'ai démarré docker, la route est modifiée et ma passerelle par défaut est supprimée !

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         0.0.0.0         U     202    0        0 enp7s0
169.254.0.0     0.0.0.0         255.255.0.0     U     202    0        0 enp7s0
169.254.0.0     0.0.0.0         255.255.0.0     U     203    0        0 docker0
169.254.0.0     0.0.0.0         255.255.0.0     U     204    0        0 br-eaab0b58fedb
169.254.0.0     0.0.0.0         255.255.0.0     U     205    0        0 br-1c9dab29e4e2
169.254.0.0     0.0.0.0         255.255.0.0     U     206    0        0 br-22995aab5a8d
169.254.0.0     0.0.0.0         255.255.0.0     U     280    0        0 veth5abaa22
169.254.0.0     0.0.0.0         255.255.0.0     U     282    0        0 veth20fab69
169.254.0.0     0.0.0.0         255.255.0.0     U     284    0        0 veth45e9cab
169.254.0.0     0.0.0.0         255.255.0.0     U     286    0        0 vethab5951b
169.254.0.0     0.0.0.0         255.255.0.0     U     288    0        0 vethb6baf34
169.254.0.0     0.0.0.0         255.255.0.0     U     290    0        0 veth59c9ab9
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.20.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-ea0d0b58fedb
172.21.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-229956aa5a8d
172.28.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-1c938d29e4e2
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp7s0

# ping 4.2.2.2
PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
^C
--- 4.2.2.2 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1016ms

Pour résoudre ce problème, je peux faire une application netplan, mais cela casse docker parce qu'il n'y a pas de routage vers les conteneurs. J'ai résolu d'ajouter manuellement la passerelle par défaut à nouveau, mais c'est une tâche manuelle qui ne devrait pas être nécessaire.

Qu'en pensez-vous ?

1voto

Rusty Points 111

Je rencontrais le même problème avec Ubuntu 20.04 LTS et Docker 18.09.2. route -n présentait le même symptôme. sudo netplan apply le ramènerait temporairement. J'ai pu y remédier en créant /etc/docker/daemon.json avec la passerelle par défaut définie.

{
    "debug": true,
    "default-gateway": "192.168.1.1"
}

Après avoir redémarré Docker, l'adresse de la passerelle semblait rester et route -n a encore l'air d'aller bien.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X