Tengo una máquina virtual con la dirección IP 192.168.0.192 que ejecuta postgreSQL.
Si especifico
listen_addresses = '*'
entonces puedo conectarme desde otra VM en 192.168.0.191 y desde localhost.
Pero parece que no puedo usar una lista para decirle a postgreSQL que use esas dos direcciones. Si cambio listen_addresses a una lista:
listen_addresses = '192.168.0.191, localhost'
entonces ya no puedo conectarme desde 192.168.0.191.
Noté que casi todos los ejemplos en stackexchange establecen listen_addresses en '*'. ¿Es esto porque el formulario de lista no funciona?
fuente
localhost
que las conexiones TCP / IP no sean posibles desde ninguna interfaz de red externa, solo la dirección de bucle invertido.He descubierto que, en lugar de usarlo
localhost
, debe ser127.0.0.1
si también especificas otras direcciones.Entonces, en mi caso de escuchar en la dirección IP del host Docker así como en el host local, pero no en la IP externa, esto no funciona (obtengo una conexión rechazada desde el interior de mis contenedores Docker):
Pero esto hace:
fuente
La entrada 0.0.0.0 permite escuchar todas las direcciones IPv4 y :: permite escuchar todas las direcciones IPv6. Si la lista está vacía, el servidor no escucha en ninguna interfaz IP, en cuyo caso solo se pueden usar sockets de dominio Unix para conectarse a ella.
fuente