On version 2.2 and later of the Postfix SMTP Server, Internet Protocol version 6 (IPv6) support is built in, and the configuration options are described here. An example of how to configure Postfix in conjunction with other open source software including DoveCot, MySQL, and PostFix is available here.
Sites running a Postfix version 2.2 (or later) mail transfer agent (MTA): You must include
the following line in your /etc/postfix/main.cf:
inet_protocols = ipv4
Without this line Postfix defaults to using IPv6 for mail delivery, and when that fails Postfix
will stop trying. Postfix will not use IPv4 without it.
For all versions of Postfix, complete the applicable steps described in this Get Your Site Ready for IPv6 article for the host computer your Postfix server is installed on. (That article was written for a web server, but the DNS-related steps also apply to Postfix servers.)
Links
Postfix
Homepage: http://www.postfix.org
Postfix TLS/IPv6 Patches
Homepage: http://www.ipnet6.org/postfix/
While it is NOT recommended practice for versions prior to 2.2, the steps for setting up IPv6 support in version 2.0.18 included:
1) wget http://www.ipnet6.org/postfix/download/postfix-2.0.18.tar.gz
2) wget http://www.ipnet6.org/postfix/download/tls+ipv6-1.21-pf-2.0.18.patch.gz
3) tar xfz postfix-2.0.18.tar.gz
4) gunzip tls+ipv6-1.21-pf-2.0.18.patch.gz
5) patch -p0 < ./tls+ipv6-1.21-pf-2.0.18.patch
6) make tidy; make makefiles; make
7) review the make and perform a make install.
The Postfix install will listen on all IPv4 and IPv6 addresses if you have the following directive enabled in main.cf:
inet_interfaces = all
Make sure to add allowed appropriate v6 relay networks to the mynetworks statement or the network_table.
Example syntax for mynetworks would be:
[::1]/128 [2001:480:2b0::]/48
Example syntax for a network_table would be:
[::1]/128 OK
[2001:480:2b0::]/48 OK