Ich habe eine VM mit der IP-Adresse 192.168.0.192, auf der postgreSQL ausgeführt wird.
Wenn ich spezifiziere
listen_addresses = '*'
dann kann ich mich von einer anderen VM bei 192.168.0.191 und von localhost verbinden.
Aber ich kann nicht scheinen, eine Liste zu benutzen, um postgreSQL anzuweisen, diese zwei Adressen zu benutzen. Wenn ich listen_addresses in eine Liste ändere:
listen_addresses = '192.168.0.191, localhost'
dann kann ich mich nicht mehr von 192.168.0.191 verbinden.
Ich bemerke, dass fast alle Beispiele auf stackexchange listen_addresses auf '*' setzen. Liegt das daran, dass das Listenformular nicht funktioniert?
quelle
localhost
dass TCP / IP-Verbindungen von keiner externen Netzwerkschnittstelle möglich sind, sondern nur von der Loopback-Adresse.Ich habe festgestellt, dass es anstelle der Verwendung
localhost
sein muss,127.0.0.1
wenn Sie auch andere Adressen angeben.In meinem Fall, dass ich sowohl die Docker-Host-IP-Adresse als auch localhost, aber nicht die externe IP-Adresse abhöre, funktioniert dies nicht (ich erhalte eine Verbindung, die in meinen Docker-Containern abgelehnt wurde):
Aber das macht:
quelle
Der Eintrag 0.0.0.0 ermöglicht das Abhören aller IPv4-Adressen und :: das Abhören aller IPv6-Adressen. Wenn die Liste leer ist, überwacht der Server überhaupt keine IP-Schnittstelle. In diesem Fall können nur Unix-Domain-Sockets zum Herstellen einer Verbindung verwendet werden.
quelle