BUG #7632: Postgres binds to all IPs even when listen_addresses="localhost"

Started by Paul Jungwirthover 13 years ago4 messagesbugs
Jump to latest
#1Paul Jungwirth
pj@illuminatedcomputing.com

The following bug has been logged on the website:

Bug reference: 7632
Logged by: Paul Jungwirth
Email address: pj@illuminatedcomputing.com
PostgreSQL version: 9.1.6
Operating system: Ubuntu 12.04 LTS, x86_64
Description:

After a default install of Postgres, I see that it's binding not just to
localhost, but also to my public IP. The port is reported open by nmap, and
I see this:

# netstat -an | grep 5432
tcp 0 0 66.175.223.51:5432 0.0.0.0:*
LISTEN
tcp 0 0 127.0.0.1:5432 0.0.0.0:*
LISTEN

Postgres still binds to the public IP even after I uncomment the
`listen_addresses` line at `/etc/postgresql/9.1/main/postgresql.conf`, set
it to the following, and do `service postgresql restart`:

listen_addresses = 'localhost'

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Paul Jungwirth (#1)
Re: BUG #7632: Postgres binds to all IPs even when listen_addresses="localhost"

pj@illuminatedcomputing.com writes:

After a default install of Postgres, I see that it's binding not just to
localhost, but also to my public IP.

This behaves as expected for me. I'm wondering whether your DNS
server is resolving "localhost" as meaning both 127.0.0.1 and your
public IP. "dig localhost." might be illuminating.

regards, tom lane

#3Paul Jungwirth
pj@illuminatedcomputing.com
In reply to: Tom Lane (#2)
Re: BUG #7632: Postgres binds to all IPs even when listen_addresses="localhost"

This behaves as expected for me. I'm wondering whether your DNS
server is resolving "localhost" as meaning both 127.0.0.1 and your
public IP. "dig localhost." might be illuminating.

Wow, that is some psychic debugging. Sure enough, my /etc/hosts is
setting localhost to both 127.0.0.1 and my other IP. Using
`listen_addresses = '127.0.0.1'` fixes the problem.

Thank you!
Paul

--
_________________________________
Pulchritudo splendor veritatis.

#4John R Pierce
pierce@hogranch.com
In reply to: Paul Jungwirth (#3)
Re: BUG #7632: Postgres binds to all IPs even when listen_addresses="localhost"

On 10/31/12 1:43 PM, Paul Jungwirth wrote:

This behaves as expected for me. I'm wondering whether your DNS

server is resolving "localhost" as meaning both 127.0.0.1 and your
public IP. "dig localhost." might be illuminating.

Wow, that is some psychic debugging. Sure enough, my /etc/hosts is
setting localhost to both 127.0.0.1 and my other IP. Using
`listen_addresses = '127.0.0.1'` fixes the problem.

fix your /etc/hosts .... thats an artifact of the #@$@# RHEL installer,
if the network isn't properly configured at install time, it loves to do
that with the hostname.

--
john r pierce N 37, W 122
santa cruz ca mid-left coast