FATAL: no pg_hba.conf entry for host "fe80::1%lo0"

Can someone help me why this is happening when I'm trying to connect to database or rails s?

In my pg_hba.conf file I have this:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local   replication     Andrew                                trust
#host    replication     Andrew        127.0.0.1/32            trust
#host    replication     Andrew        ::1/128                 trust

local all all md5

Maybe I'm doing it wrong?

Thanks

Answers


I had the same problem. somehow, this line was added to my /etc/hosts file:

fe80::1%lo0    localhost

commenting out or removing that line from /etc/hosts should fix it

sudo vi /etc/hosts
#fe80::1%lo0    localhost

I'm on OSX 10.9.3 and Postgres 9.3.4.

I've managed to resolve this problem in the following way:

First find your pg_hba.conf file by starting up psql with psql -h 127.0.0.1 and executing SHOW hba_file;:

              hba_file
-------------------------------------
 /usr/local/var/postgres/pg_hba.conf
(1 row)

Now add the following line to pg_hba.conf:

host    all             all             fe80::1%lo0/128         trust

and reload the configuration via select pg_reload_conf(); within psql.

Now you should be able to connect via psql -h fe80::1%lo0.


Oo, that's an interesting one.

Assuming you're connecting to localhost (you didn't say and didn't show your database.yml), it appears that localhost is resolving to an IPv6 link-local address with zone index.

If you use ::1 or 127.0.0.1 it should work.

This is very likely an operating system misconfiguration or bug, so lots more detail (see comment above) should be added to the question if you want any concrete advice on that.


For me, the cause was calling sudo rails server -p 80.

I bound the rails server to port 80 so that I wouldn't have to specify a port in the url localhost:3000 during development. This appears to write fe80::1%lo0┬╗localhost to my /etc/hosts file.

Try commenting out the line in your hosts file, then running rails s -p 3000


Actually,

The same error occurs for me when I execute pg_dump command to take backup of my server database (external) like below

'/Applications/Postgres.app/Contents/Versions/9.3/bin'/pg_dump -d "<database_name>" -h <server_name> -U <db_user_name> -f <destination_path>

I solved it (work around) by replacing my <server_name> to my actual server IP (10.1.0.18).

So the issue here is my system didn't understand the <server_name> host.

It might solve permanently when you add <server_name> host in /private/etc/hosts file.


Another variant: if IPv6 is not used in the network, you can just disable it. On Windows IPv6 service also can be disabled.


Need Your Help

C# Image.Clone Out of Memory Exception

c# image exception

Why am I getting an out of memory exception?

is there a way to deserialize Elasticsearch Nest search query?

elasticsearch nest

upon building my Elasticsearch query using Nest, i want to be able to see the JSON version of what's being sent to Elasticsearch. is this possible? some sort of deserializer i suppose.