Welcome IPv4 user

exim over IPv6 on cPanel

Exim has a mature IPv6 implementation and it is likely to be the first thing to start using the IPv6 connection you setup on your cPanel server. Most other services will only be used when you add a AAAA record to the relevant DNS zone.

Since SMTP also makes outbound connections it will immediately attempt to use IPv6 when attempting to communicate with other IPv6 capable mail servers. For this reason care should be taken when enabling IPv6 as it can potentially cause mail delivery problems. Ensure that at the very least the rDNS entries for your server's IP are correctly configured.

My biggest concern with mail delivery over IPv6 is that many antispam solutions do not properly understand an IPv6 address. Depending on how well a particular server is setup it may accept IPv6 mail or potentially discard it randomly and unpredictably. It is important to be reviewing you logs to identify mails that are being delivered (or not) over IPv6.

Configuring inbound mail also requires some care to ensure that your spam filters do not reject IPv6 email. It is currently fairly safe to apply an accept all rule matching all IPv6 mail but this is not going to continue.

cPanel normally uses the same A record for your website and your mail. For this reason I suggest that you don't just add a AAAA to your sites main hostname since this will cause slowdowns on your website if your IPv6 setup is not perfect. The solution to this is to add a new A record for specifically for mail: mx.yourdomain.co.za. Then add an AAAA for the same hostname and adjust your MX records to point to your new hostname.

You then want to get someone to send you mail via IPv6. The easiest way to do this is to join a mailing list that runs on IPv6 enabled servers.


Email via IPv6 on cPanel

Both the Courier and Dovecot mailservers can be used with cPanel to provide users with POP3 or IMAP access to their mail.

Many older cPanel installations will be running Courier. Interestingly Courier's default config already has IPv6 enabled by default. IPv4 addresses in log files are written in IPv6 compatible format by prepeding them with "::ffff:".

In order to connect to your mail server via IPv6 you can open your favourite mail client (Thunderbird is known to work) and set the server name to your servers IPv6 address. View the log files at "/var/log/maillog" to see your client login via IPv6.

Next step would be to add a DNS entry for your mail server. If you are the only user on your mail domain then you can add the IPv6 address of your server as a AAAA record for mail.yourdomain.co.za. If you have many other users on your domain then you may want to rather add the AAAA for mail6.yourdomain.co.za. Users with broken IPv6 connectivity may experience higher latency or inability to connect if the AAAA is applied directly to the 'mail' hostname.

Dovecot requires one change to enable IPv6: the listen directive needs to be adjusted to include both IPv4 and IPv6. Access the dovecot config template and add the line "listen = *, [::]" and rebuild the config. This should make dovecot IPv6 capable but this has not been tested.


An IPv6 enabled cPanel server

This is the first in a series of posts about getting cPanel ready for IPv6. The developers of cPanel have claimed that IPv6 is on their roadmap but have as yet not even released an ALPHA with IPv6 capabilities. This is surprising since almost all the underlying services that that cPanel manages already have IPv6 support and many of them are trivial to activate.

cPanel uses bind under the hood to provide DNS. Bind has mature IPv6 support and is the ideal candidate for getting going with a dual-stack cPanel environment.

cPanel is capable of loading AAAA DNS records into DNS zones. These AAAA records are the primary IPv6 DNS records for mapping a hostname to an IPv6 address. This can be done via the 'Edit DNS zone' feature that is available in the WebHost Manager but is not available on the simple DNS editor in the cPanel interface.

Serving AAAA responses is one thing but you also want your DNS server to communicate on IPv6. The first step is to make sure that your server has IPv6 connectivity. This can be checked by loging in via ssh and running the command 'ping6 ipv6.google.com'. Once you are happy that you have a working IPv6 connection you can proceed to the next step:

This step requires that you are the root user on the server. You need to open the file '/etc/named.conf' in your favourite terminal text editor. You then need to add the line

listen-on-v6 { any; };

after the line

options {

You can then save the file and restart the nameserver via the web interface. If all goes well your server will be answering IPv6 DNS queries.

You can test this firstly by doing a 'dig www.mydomain.com @::1' where ::1 is the IPv6 equivalent of localhost. If that works correctly then you want to test a DNS query from another IPv6 enabled host. You know have IPv6 capable DNS servers.


PING6 blog is reachable on IPv6

I've finally finished getting apache working with IPv6 and vhosts. It has been a little bit of a challenge under cPanel but I will talk more about that at a later date.

For right now though - PING6 is reachable over IPv6! Which should be a pre-requisite for running a blog about IPv6 ;-)

IPv6 is now coming into the main stream. I'm using the IPv6 versions of Google, YouTube, Facebook and numerous other sites daily. My mail comes in and out over IPv6 and hopefully soon I will be able to function normally on the Internet with only an IPv6 connection thanks to NAT64. More on that in the coming months.