Edoardo Panfili <edoardo@xxxxxxxx> writes: > I am using postgres 9.4beta3 (Debian jessie) > this is my pg_hba.conf > ---------------------- > local all postgres peer > local all all md5 > host all all 127.0.0.1/32 md5 > host all all ::1/128 md5 > ---------------------- > but if I use psql to connect via tcp to the server (on the same machine) > I can see two differente behaviours if I use "localhost" or "127.0.0.1" > If I understand correctly the first two lines are useful only for Unix > sockets and not for tcp-ip connection. Yeah. On modern Linux distros it's quite likely that "localhost" is resolving as IPv6 ::1, not 127.0.0.1, but in neither case would it match your "local" lines. In any case, your first connection attempt is definitely not connecting over a Unix socket because we never use SSL with Unix sockets. I can think of two plausible theories: 1. The postmaster isn't actually using the pg_hba.conf you think it is. (Maybe you modified the file and forgot to do a "pg_ctl reload"?) 2. You have a "service file" active that is capturing the server name "localhost" and redefining it to mean something other than the obvious meaning. http://www.postgresql.org/docs/9.3/interactive/libpq-pgservice.html A useful test would be to try "psql -h ::1" and see which way that behaves. If it does the same thing as "-h localhost" then we can eliminate the service-file theory. regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general