Re: [exim] Exim4 delay at boot

2021-11-13 Thread JHM via Exim-users
Hello:

On 13 Nov 2021 at 22:09, Jeremy Harris via Exim-users wrote:

> > So, there's no IPv6 in the system or anywhere near it because I disabled it.
> Wrong.

I must insist on this:
IPv6 is explicitly disabled on the host, the virtual machine and the ADSL 
router.
*I* disabled it.

> Exim doe not know that there is no ipv6 in the system, nor that you disabled 
> it.
Exactly.
It does not know and behaves accordingly.

> Actually because your configuration left it enabled.
If by *my* configuraton you mean the exim4.conf.template file, yes.
I've been saying that from the very start.

> The Exim project does not install Exim into your system.
> The support for doing that is provided by you distro ...
> You need to go ask them for this feature to be added to their distro.
I see.

I have been (from the start), under the impression that the installer was an 
Exim thing.
Which is why I posted here asking about the problem.

If the exim4.conf.template file is the distribution's resposibility and not 
Exim's, then I'll have to
see about this elsewhere.

Thanks so much for the heads up and for your input.

Have a good week-end.

Best,



-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread Jeremy Harris via Exim-users

On 13/11/2021 21:18, JHM via Exim-users wrote:

On 13 Nov 2021 at 16:35, Jeremy Harris via Exim-users wrote:


On 13/11/2021 15:50, JHM via Exim-users wrote:

IPv6 socket creation failed: Address family not supported by protocol



Inferring that the system as a whole has no ipv6 support would be a bit of a 
step.

Unless, as is this specific case, all the necessary steps to disable IPv6 have 
been taken.

See: https://lists.exim.org/lurker/message/2022.211353.fde57a1f.en.html

IPv6 is explicitly disabled on the host system at the kernel command line, at 
the /etc/hosts file
and the /etc/ssh/ssh_config file.

The virtual machine running the DNS on the host system is configured in the 
very same
manner and the ADSL router also has it's IPv6 capacity administratively 
disabled.

So, there's no IPv6 in the system or anywhere near it because I disabled it.
No inferring so no step.   <- just "taking the piss", so to speak. =^)


Wrong.

From that error return from that syscall, one would have to be making
an inference that the system had ipv6 disabled, to justify taking action
to not perform ipv6 actions in the rest of Exim.   Exim doe not know
that there is no ipv6 in the system, nor that you disabled it.



Exim makes a call when it starts up and sits there waiting to get an answer 
that it will not
receive for the reasons stated above.

Why does it do that?

Because it installed with IPv6 enabled by default.


Actually because your configuration left it enabled.



By adding a line to disable it in exim4.conf.template the problem was no longer 
a problem.
The 30s delay was no more and I had no more /var/log/exim4/paniclog entries.


We could use some way of enquiring of the system ...

Sure ...

Check the kernel command line when installing and see if there's a 
ipv6.disable=1 stanza in
it.
That would be more than enough.


You can provide code to do this?  Which still compiles cleanly on other
platforms?  And the testing, added to the regression testsuite, to ensure
it carries on working into the future?


Or ask at installation time if IPv6 should be enabled.


The Exim project does not install Exim into your system.  The support
for doing that is provided by you distro - I think you said Devuan.
You need to go ask them for this feature to be added to their distro.
--
Cheers,
  Jeremy

--
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread JHM via Exim-users
Hello:

On 13 Nov 2021 at 16:35, Jeremy Harris via Exim-users wrote:

> On 13/11/2021 15:50, JHM via Exim-users wrote:
> > IPv6 socket creation failed: Address family not supported by protocol

> Inferring that the system as a whole has no ipv6 support would be a bit of a 
> step.
Unless, as is this specific case, all the necessary steps to disable IPv6 have 
been taken.

See: https://lists.exim.org/lurker/message/2022.211353.fde57a1f.en.html

IPv6 is explicitly disabled on the host system at the kernel command line, at 
the /etc/hosts file
and the /etc/ssh/ssh_config file.

The virtual machine running the DNS on the host system is configured in the 
very same
manner and the ADSL router also has it's IPv6 capacity administratively 
disabled.

So, there's no IPv6 in the system or anywhere near it because I disabled it.
No inferring so no step.   <- just "taking the piss", so to speak. =^)

Exim makes a call when it starts up and sits there waiting to get an answer 
that it will not
receive for the reasons stated above.

Why does it do that?

Because it installed with IPv6 enabled by default.

By adding a line to disable it in exim4.conf.template the problem was no longer 
a problem.
The 30s delay was no more and I had no more /var/log/exim4/paniclog entries.

> We could use some way of enquiring of the system ...
Sure ...

Check the kernel command line when installing and see if there's a 
ipv6.disable=1 stanza in
it.
That would be more than enough.

Or ask at installation time if IPv6 should be enabled.

> ... and flip the default for the disable_ipv6 option.
Like I suggested in a previous post:

Add the line I *had* to add to the 'Main' section of the
file exim4.conf.template:

[code]
disable_ipv6 = true
[/code]

It is not there.

ie: not disable_ipv6 = false, disable_ipv6 = true or even disable_ipv6 = with 
an empty value
so it would be an option to fill in when running dpkg-reconfigure exim4-config.

> ...  not aware if there is any such method.
Neither am I.

I'm just a desktop end user who came across a problem and asked about it here.

> ... be aware that Exim run on, and has to be built and tested for,
> not only other Linux distros but also other non-Linux Unixes.
Of course.

> Or, as has been suggested, the Debian installer could do ...
The Debian chaps won't do absolutely anyhing about this.

> Cheers,
Same to you.

Thanks a lot for your input.
Have a good week-end.

Best,

-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread Jeremy Harris via Exim-users

On 13/11/2021 15:50, JHM via Exim-users wrote:

IPv6 socket creation failed: Address family not supported by protocol


The trouble is that this error only tell us that this specific
socket create failed.  Inferring that the system as a whole has
no ipv6 support would be a bit of a step.

We could use some way of enquiring of the system for such configuration,
if not too invasive in the exim binary - and flip the default for the
disable_ipv6 option.  I'm not aware if there is any such method.
Please also be aware that Exim run on, and has to be built and tested for,
not only other Linux distros but also other non-Linux Unixes.

Or, as has been suggested, the Debian installer could do the same
configuration change.  Or you could, if it was your choice to
configure this system without ipv6.
--
Cheers,
  Jeremy

--
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread JHM via Exim-users
Hello:

On 13 Nov 2021 at 18:10, Evgeniy Berdnikov via Exim-users wrote:

>  ... we are discussing some hypothesis ...
Yes, I agree.

> ... no direct confirmations that problem is due to IPv6.
Well ...

First I have the Exim paniclog message which gave me a clue as to what could 
have been
going on.

[code]
IPv6 socket creation failed: Address family not supported by protocol
[/code]

Then I have that adding the line below to the 'Main' section of the 
exim4.conf.template file
gets rid of both the delay *and* the paniclog message:

[code]
disable_ipv6 = true
[/code]

And lastly I have that I can faithfully reproduce the problem by simply rolling 
back the edit.
As expected, the rollback brings back both the delay *and* the paniclog message.

Seems as confirmed as can be.
At least to me.

Thanks for your input.

Best,

JHM

-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread Evgeniy Berdnikov via Exim-users
  Hi.
  
On Sat, Nov 13, 2021 at 10:14:34AM -0300, JHM via Exim-users wrote:
> In my opinion as desktop end user, if the box where Exim is being
> installed does *not* have IPv6 enabled (and is explicitly disabled), then
> it should *not* be configured by default with IPv6 enabled.

 Note that we are discussing some hypothesis, more or less plausible,
 but there are no direct confirmations that problem is due to IPv6.
 
 You have better to obtain strace/ltrace and/or extented debug output,
 plus traffic dump and/or DNS logs for analysis.
-- 
 Eugene Berdnikov

-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread Graeme Fowler via Exim-users
On 13 Nov 2021, at 13:14, JHM via Exim-users  wrote:
> What I think would be a good idea is that at installation time ie: when
> dpkg-reconfigure-exim4-config runs, the installer looks to check if IPv6
> is configured or maybe just ask if IPv6 is to be configured.

That’s a downstream (Debian and derivatives) issue, as that’s specific to those 
distributions.

Not an Exim issue, specifically, but if you want that check in your packages, 
please report it to the maintainer.

Graeme


signature.asc
Description: Message signed with OpenPGP
-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread JHM via Exim-users
Hello:

On 13 Nov 2021 at 11:50, Heiko Schlittermann via Exim-users wrote:

> JHM via Exim-users  (Fr 12 Nov 2021 22:14:12 CET):
> > [code]
> > disable_ipv6 = true
> > [/code]
>
> Shooting into the dark as well. If IPv6 is enabled, Exim tries to
> resolve names as A and as  records. Independend on your system's
> IPV6 setup.
Yes, that's probably it.
But it is the cause of the problem.

In my opinion as desktop end user, if the box where Exim is being
installed does *not* have IPv6 enabled (and is explicitly disabled), then
it should *not* be configured by default with IPv6 enabled.

What I think would be a good idea is that at installation time ie: when
dpkg-reconfigure-exim4-config runs, the installer looks to check if IPv6
is configured or maybe just ask if IPv6 is to be configured.

And not assume that it should be enabled by default.
I think we're quite a few years from IPv6 being used by default
everywhere.

eg: just reading the kernel command line to see if the ipv6.disable=1 bit
is present would be quite enough for a basic check to decide how to
configure Exim when installing.

Adding the /etc/hosts file to the files to read would add yet a second
layer of certainty.

At the very least, adding the line I added to the exim4.conf.template with
the proper comments would have been of great help to me.

I spent a great many hours attempting to solve this problem.
Could have been avoided. 8^ )

> ... but in parts of the code Exim doesn't rely on the gethostinfo(3)
> call, but talks directly to the resolver (found in /etc/resolv.conf).

My name server (Unbound) runs on a VBox virtual machine which also runs
Pi-hole:

[code]
groucho@devuan:~$ cat /etc/resolv.conf
nameserver 192.168.1.4
groucho@devuan:~$
[/code]

Just like the host, the virtual machine has IPv6 explicily disabled in the
same way. IPv6 is also disabled in my ADSL router. So, no IPv6 *anywhere*.

> So, if you resolver behaves strange ...
> ... the root cause of delay is outside of Exim ...

I beg to differ.

Exim was installed on a machine with IPv6 disabled, like I have pointed
out, from the kernel command line onwards.

If it installed with IPv6 enabled by default on such a machine, I cannot
but conclude that the problem is with the Exim installation routine and
not elsewhere.

>  disable_ipv6 = true is a good mitigation.
It was the solution to the problem, one which could easily be avoided.

Many thanks for your input.

Best,

JHM
-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/


Re: [exim] Exim4 delay at boot

2021-11-13 Thread Heiko Schlittermann via Exim-users
JHM via Exim-users  (Fr 12 Nov 2021 22:14:12 CET):
> [code]
> disable_ipv6 = true
> [/code]

Shooting into the dark as well. If IPv6 is enabled, Exim tries to
resolve names as A and as  records. Independend on your system's IPV6
setup.

The gethostinfo(3) depends on your system's setup and doesn't even
attempt  lookups if there is no chance to use the information, but
in parts of the code Exim doesn't rely on the gethostinfo(3) call, but
talks directly to the resolver (found in /etc/resolv.conf).

So, if you resolver behaves strange (imposing a 30s delay by e.g. not
responding to  queries), the root cause of delay is outside of Exim,
while disable_ipv6 = true is a good mitigation.

-- 
Heiko


signature.asc
Description: PGP signature
-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/