Eu tenho uma VM com endereço IP 192.168.0.192 executando o postgreSQL.
Se eu especificar
listen_addresses = '*'
então eu posso conectar de outra VM em 192.168.0.191 e do localhost.
Mas não consigo usar uma lista para dizer ao postgreSQL para usar esses dois endereços. Se eu alterar os listen_addresses para uma lista:
listen_addresses = '192.168.0.191, localhost'
não consigo mais conectar a partir do 192.168.0.191.
Percebo que quase todos os exemplos no stackexchange configuram listen_addresses como '*'. Isso ocorre porque o formulário da lista não funciona?
fonte
localhost
que as conexões TCP / IP não sejam possíveis a partir de nenhuma interface de rede externa, apenas o endereço de loopback.Descobri que, em vez de usá-
localhost
lo, precisa estar127.0.0.1
se você estiver especificando outros endereços também.Portanto, no meu caso de escuta no endereço IP do host do Docker e no host local, mas não no IP externo, isso não funciona (recebo uma conexão recusada de dentro dos meus contêineres do Docker):
Mas isso faz:
fonte
A entrada 0.0.0.0 permite escutar todos os endereços IPv4 e :: permite escutar todos os endereços IPv6. Se a lista estiver vazia, o servidor não escutará nenhuma interface IP; nesse caso, apenas os soquetes do domínio Unix poderão ser usados para conectar-se a ela.
fonte