If MiaB is no longer being assigned an IPv6 address, what happens next?

I’m suspecting that sporadic delivery issues are due to receiving servers that don’t like the IPv6 address, for whatever reason.

If I disable IPv6 being assigned to the server, do I just run sudo mailinabox and everything will be hunky-dory?

When using previous version this leads to MIAB generating an nginx config with which it can’t restart nginx.
Config still tells nginx to listen to IPV6.

I’m assuming that included a reboot on a server configured for DHCP prior to running mailinabox?

It included a reboot, but with static IP.
I described my adventures with IPv6 here:

This seems different to me, somehow.

My server is configured for DHCP and rather than attempting to change the IPv6 address, I’m going to request my ISP to disable IPv6 addressing of the server. Thus, DHCP will not see being assigned an IPv6 address.

There is a way to disable Ubuntu from accepting IPv6, which I could use for testing, but I don’t think it will be the same as the server not being assigned an IPv6 address.

BTW, did you look at this as a solution to your problem? I think IPv4 deliverability will be 100%. In the distant future, when everything else has migrated to IPv6, mail servers will still be using IPv4, I’ll bet.

Just an FYI, I’ve had the best luck over the years using the following for external IP address testing:

http://icanhazip.com - this will show your default IP address
http://ip4.icanhazip.com - this will only show your IPv4 address
http://ip6.icanhazip.com - this will only show your IPv6 address

The site returns a text of just the IP address that has in my experience been readable by absolutely everything. You can also use https, I just usually use http in case I’m on an old version of something.

There are other options and tools:

Thanks, I already found a sort of working solution.

But when testing stuff, I found out that if the system has no IPv6 address at all,
you can’t run mailinabox setup script to the end.

Because the nginx config it generates includes directives to listen to IPv6 anyway.
And setup fails at stage where it tries to restart nginx with that config:

This is interesting as the setup guide states to disable IPv6 at the ISP level: