Exim4 paniclog et ipv6

Tags: #<Tag:0x00007fc9e2e871d8> #<Tag:0x00007fc9e2e870c0>

Salut
Hier, Il m’a pris l’idée de désactiver ipv6 puisque je ne l’utilise pas.

Dans /etc/sysctl.conf j’ai ajouté

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

Et ce matin

exim paniclog /var/log/exim4/paniclog on debian has non-zero size, mail system might be broken. The last 10 lines are quoted below.

2017-07-24 15:30:20 socket bind() to port 25 for address ::1 failed: Cannot assign requested address: daemon abandoned
2017-07-24 17:13:48 socket bind() to port 25 for address ::1 failed: Cannot assign requested address: daemon abandoned
2017-07-24 18:43:15 socket bind() to port 25 for address ::1 failed: Cannot assign requested address: daemon abandoned
2017-07-25 08:10:16 socket bind() to port 25 for address ::1 failed: Cannot assign requested address: daemon abandoned

Quelques recherches sur le net me ramenent à ipv6, alors je l’ai réactivé.
Et démarrage sans erreurs,

systemctl status  exim4.service -l
● exim4.service - LSB: exim Mail Transport Agent
   Loaded: loaded (/etc/init.d/exim4; generated; vendor preset: enabled)
   Active: active (running) since Tue 2017-07-25 09:05:01 CEST; 10min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 918 ExecStart=/etc/init.d/exim4 start (code=exited, status=0/SUCCESS)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/exim4.service
           └─1188 /usr/sbin/exim4 -bd -q30m

juil. 25 09:04:57 debian systemd[1]: Starting LSB: exim Mail Transport Agent...
juil. 25 09:05:01 debian exim4[918]: Starting MTA: exim4.
juil. 25 09:05:01 debian systemd[1]: Started LSB: exim Mail Transport Agent.

effectivement exim4 veut aussi une adresse ipv6 pour smtp

2017-07-25 09:05:01 exim 4.89 daemon started: pid=1188, -q30m, listening for SMTP on [127.0.0.1]:25 [::1]:25
2017-07-25 09:05:02 Start queue run: pid=1190
2017-07-25 09:05:02 End queue run: pid=1190

Personnellement je trouve ça plutôt mal codé de remplir des fichiers log, mais bon peut être qu’on peut masquer ipv6 plus proprement?

Après un peu de recherche, il est possible d’empêcher exim4 d’écouter en ipv6

Dans le fichier /etc/exim4/update-exim4.conf.conf

Avant
dc_local_interfaces='127.0.0.1 ; ::1'

Après

# desactivation ipv6
dc_local_interfaces='127.0.0.1'

Et voilà

2017-07-25 11:08:56 exim 4.89 daemon started: pid=1183, -q30m, listening for SMTP on [127.0.0.1]:25
2017-07-25 11:08:57 Start queue run: pid=1185
2017-07-25 11:08:57 End queue run: pid=1185

Ou bien tu pouvais désactiver l’IPV6 sur toutes les interfaces sauf l’interface de loopback lo.

On peut faire ça ? À ma connaissance, on ne peut que désactiver l’IPv6 sur chaque interface, à l’exception de lo.

Pourquoi ne pourrait-on pas ?
Visiblement @grandtoubab l’a fait puisque l’adresse de loopback IPv6 n’était plus présente.