[6bone] Re: Some problems with sendmail, Linux and v6
Jun-ichiro itojun Hagino
itojun@iijlab.net
Sat, 18 May 2002 11:44:15 +0900
>> I compiled both Sendmail 8.9.1 with WINE patch and Sendmail 8.12
>> using -DNETINET6 option and I see if I use at the same time the two
>> lines below in sendmail.cf:
>
>> "O DaemonPortOptions=Name=IPv4, Family=inet" ("O DaemonPortOptions=Family=inet6" in /etc/sendmail6.cf using WINE)
>> "O DaemonPortOptions=Name=IPv6, Family=inet6" ("O DaemonPortOptions=Family=inet6" in /etc/sendmail6.cf using WINE)
>>
>> I get no runing sendmail, I can only use:
>> "O DaemonPortOptions=Name=IPv4, Family=inet"
>> or
>> "O DaemonPortOptions=Name=IPv6, Family=inet6"
>>
>> So, I only could have an IPv6 SMTP Server or an IPv4 SMTP Server but
>> never the both running. I had a FreeBSD box, where IPv6 is native
>> and I see that the same configuration have no problems in Free. Do
>> anyone know some specific bug regarding about this configuration
>> above described? Some hint to I overpass it??
The trouble is caused by the lack of standard for bind(2) behavior,
when bind(2) to AF_INET and AF_INET6 are made the same port number.
Linux rejects AF_INET bind(2) after AF_INET6 bind(2).
therefore, you need to open only a single AF_INET6 socket,
and expect IPv4 traffic to come in from AF_INET6 socket.
so the following should make your sendmail to accept both IPv4 and
IPv6 connections:
>> "O DaemonPortOptions=Name=IPv6, Family=inet6"
on other platforms, two line configuration ("inet" and "inet6") should
work fine.
i really feel sorry for you, and sad about the lack of standard here.
itojun