Wietse Venema wrote:
Nick Rosier:
Hi,
I have Postfix configured to query some maps (proxy:pgsql) on my
Postgresql-server which is only accessible through IPv6. Occasionally
I see following errors:
postfix/smtp: warning: connect to pgsql server db.domain.tld: could
not translate host name "db.domain.tld" to address: hostname nor
servname provided, or not known?
The getaddrinfo() system library routine returns this error. It
works per the instructions in /etc/nsswitch.conf which on my
FreeBSD box contains: "hosts: files dns"
same on my box
The Postfix SMTP client uses the getaddrinfo() system library routine
returns when the smtp_host_lookup parameter contains "native".
Maybe you should use "smtp_host_lookup = dns", and use "inet_protocols
= ipv4, ipv6".
smtp_host_lookup = dns
inet_protocols = all
should I change the latter to ipv4, ipv6 or is all OK?
The hosts is defined with IPv6 address in /etc/hosts FreeBSD getent
can (currently) not be used to resolve hosts to IPv6
(http://www.freebsd.org/cgi/query-pr.cgi?pr=161548). dig fails
to resolve unless I request the AAAA-record.
If the host has only an IPv6 address, then you must ask for the AAAA
record. No surprise here.
I've tried putting the IPv6-address in as host (both 2001:xxx:xxx:xxx
as well as [2001:xxx:xxx:xxx]) but that doesn't work either. What
is the correct format I can put in proxy-maps? Any idea why
hostname resolving seems to work most of the time but sometimes
fail?
Say what? The proxymaps feature does not use IP addresses.
e.g. virtual_alias_maps =
proxy:pgsql:/usr/local/etc/postfix/sql/virtual_alias_maps.cf
virtual_alias_maps.cf:
user = <user>
password = <postfix>
hosts = db.domain.tld
#hosts = [2001:xxx:xxx:xxx]
dbname = postfix