cerhu > comp.* > comp.mail

Laurent (29/01/2019, 19h42)
J'essaie d'autoriser à la fois ipv4 et ipv6 sur mon sendmail Linux.

Sous FreeBSD je fais:
DAEMON_OPTIONS(`Name=IPv4, Family=inet')
DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Port=smtp, Modifiers=O')
DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Ports=submission, Modifiers=O')

Et ca marche parfaitement.

Par contre sous Linux ce ma met dans les logs un message d'erreur
sm-mta[30253]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon IPv6:
cannot bind: Address already in use

C'est étrange car, evidemment, rien n'écoute en ipv6 sur le port 25 ou le
port 587 (vérifié avec netstat -an).

par contre si je configure sendmail en ipv6 seulement cela fonctionne.

Est-ce un bogue ? J'ai fait une recherche et j'ai trouvé plusieurs
personnes ayant eu le problème mais pas de réponse. Ou est-ce qu'un
détail m'échappe ? Au pire je serai obligé de bricoler quelque chose
avec iptable mais je préfererais une solution plus propre.

Laurent
dyrmak (30/01/2019, 17h00)
En 25 lignes Laurent a écrit
dans news:5c50909b$0$15180$426a34cc
le mardi, 29 janvier 2019 à 18:42:51 :

> J'essaie d'autoriser à la fois ipv4 et ipv6 sur mon sendmail Linux.
> Sous FreeBSD je fais:
> DAEMON_OPTIONS(`Name=IPv4, Family=inet')
> DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Port=smtp, Modifiers=O')
> DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Ports=submission, Modifiers=O')
> Et ca marche parfaitement.
> Par contre sous Linux ce ma met dans les logs un message d'erreur
> sm-mta[30253]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon IPv6:
> cannot bind: Address already in use


Je n'ai pas la version 8.15 de Sendmail, mais il me semble vaguement
avoir vu ce problème chez moi avec d'autres versions.

Il me semble que sous Linux le Name=IPv6 ne doit apparaître qu'une fois

dnl DAEMON_OPTIONS(Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnl
dnl DAEMON_OPTIONS(Family=inet6, Name=MSP-v6, Port=submission, M=Ea,Addr=::1')dnl

mon mc contient ces deux lignes commentées....
Mais alors pourquoi ca marcherait sous FreeBSD ? ... Mystère !

dyrmak
Marc SCHAEFER (31/01/2019, 12h27)
Laurent <laurent> wrote:
> Par contre sous Linux ce ma met dans les logs un message d'erreur
> sm-mta[30253]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon IPv6:
> cannot bind: Address already in use


Petite expérience:

nc6 -6 -l -p 2424 &

netstat --inet --listen -n | grep 2424
# rien

netstat --inet6 --listen -n | grep 2424
tcp6 0 0 :::2424 :::* LISTEN

telnet 127.0.0.1 2424
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused

telnet ::1 2424
Trying ::1...
Connected to ::1.

Donc, le comportement Linux est correct. S'il y a un bug, c'est
dans sendmail. Il faut dire que je suis passé à Postfix en
2003 ...
Laurent (06/02/2019, 17h54)
Le 29-01-2019, Laurent <laurent> a écrit :
> J'essaie d'autoriser à la fois ipv4 et ipv6 sur mon sendmail Linux.
> Sous FreeBSD je fais:
> DAEMON_OPTIONS(`Name=IPv4, Family=inet')
> DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Port=smtp, Modifiers=O')
> DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Ports=submission, Modifiers=O')
> Et ca marche parfaitement.
> Par contre sous Linux ce ma met dans les logs un message d'erreur
> sm-mta[30253]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon IPv6:
> cannot bind: Address already in use


Solution

Sous Linux, contrairement à FreeBSD dans la configuration par defaut, une
socket IPV6 peut traiter à la fois des connexions IPV4 et IPV6.

Donc pour traiter à la fois en ipv4 et en ipv6 il faut faire, sous Linux :

dnl DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp')dnl
dnl DAEMON_OPTIONS(`Family=inet, Name=MSP-v4, Port=submission')dnl
DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp')dnl
DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission')dnl

Si je décommente les deux premières lignes, cela fait un conflit,
contrairement à FreeBSD, pour la raison exposée plus haut. Par contre
si je fais uniquement DAEMON OPTION Family=inet6 la ca fonctionne à la fois
en IPV4 et en IPV6.
Discussions similaires
IPv4, IPv6 et DNS

IPV4 - IPV6 et Java

OpenBSD et IPv6 --> IPv4

Tunnel IPv6/IPv4 et routeurs IPv4 + Freebox ?


Fuseau horaire GMT +2. Il est actuellement 11h08. | Privacy Policy