I have Postfix v2.9.1 installed from ports. My OS is:
# uname -a
FreeBSD catnip.pilgrimaccounting.com 8.3-RELEASE-p3 FreeBSD
8.3-RELEASE-p3 #0: Thu Jun 14 13:08:22 PDT 2012
r...@catnip.pilgrimaccounting.com:/usr/obj/usr/src/sys/CATNIP amd64
When I enable IPv6 with the following in main.cf:
inet_protocols = ipv4, ipv6
inet_interfaces = 65.75.198.147, [2001:470:eab1::4]
I'm unable to start postfix. It outputs the following error:
# /usr/local/etc/rc.d/postfix start
postfix: fatal: config variable inet_interfaces: host not found:
[2001:470:eab1::4]
My caching resolver's log then shows the following:
Jul 16 22:15:43 catnip unbound: [30946:0] info: 10.26.25.4
2001?470?eab1??4.pilgrimaccounting.com. A IN
Jul 16 22:15:43 catnip unbound: [30946:0] info: 10.26.25.4
2001?470?eab1??4. A IN
rather than the expected:
Jul 16 22:16:22 catnip unbound: [30946:0] info: 10.26.25.4
4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.b.a.e.0.7.4.0.1.0.0.2.ip6.arpa. PTR
IN
I verified the colons in the address are indeed ASCII code 0x3a. I can
produce the same logs from my DNS server by doing:
# dig -t PTR 2001:470:eab1::4
instead of:
# dig -t PTR -x 2001:470:eab1::4
Thus it appears Postfix is not correctly translating IPv6 address
literals, but I can't figure out why. I have v2.9.1 installed on three
other FreeBSD servers, all of which have IPv6 enabled and actively in
use. I even checked the configs on those machines and they're all
configured the same as given above (with different IPv4 and IPv6
addresses, of course).