Lists: | pgsql-sql |
---|
From: | Alexis Paul Bertolini <bertolini(at)computer(dot)org> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | Obtaining client IP address |
Date: | 2006-02-24 23:16:31 |
Message-ID: | 43FF93CF.5070808@computer.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-sql |
Hi,
I need to have a db table containing all connected clients (of a
distributed application) and among other info, their IP.
If both the client and the server are on the same LAN, no problem, the
client can supply it's own info. But if they are connected via some sort
of bridge/router/NAT? For instance, a client on a LAN connects to a
server over the Internet?
The client has no idea what public IP it has. The server ought to
know... however I haven't found how I could get this info into my query.
What I need is some sort of procedure whereby the client enrolls onto
the system and supplies the info...
I hope I made my self clear. If not I can try and be more specific!
Alex.
From: | Michael Fuhr <mike(at)fuhr(dot)org> |
---|---|
To: | Alexis Paul Bertolini <bertolini(at)computer(dot)org> |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: Obtaining client IP address |
Date: | 2006-02-24 23:34:27 |
Message-ID: | 20060224233427.GA12772@winnie.fuhr.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-sql |
On Sat, Feb 25, 2006 at 12:16:31AM +0100, Alexis Paul Bertolini wrote:
> The client has no idea what public IP it has. The server ought to
> know... however I haven't found how I could get this info into my query.
What version of PostgreSQL are you running? In 8.0 and later you
can use inet_client_addr().
http://www.postgresql.org/docs/8.1/interactive/functions-info.html
I forget if earlier versions have a way to get the client's IP
address without resorting to hacks (e.g., writing a function in a
privileged language like plperlu and calling netstat or lsof).
--
Michael Fuhr
From: | Alexis Paul Bertolini <bertolini(at)computer(dot)org> |
---|---|
To: | |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: Obtaining client IP address |
Date: | 2006-02-25 09:26:53 |
Message-ID: | 440022DD.9000902@computer.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-sql |
Michael Fuhr wrote:
> On Sat, Feb 25, 2006 at 12:16:31AM +0100, Alexis Paul Bertolini wrote:
>
>> The client has no idea what public IP it has. The server ought to
>> know... however I haven't found how I could get this info into my query.
>>
>
> What version of PostgreSQL are you running? In 8.0 and later you
> can use inet_client_addr().
>
> http://www.postgresql.org/docs/8.1/interactive/functions-info.html
>
> I forget if earlier versions have a way to get the client's IP
> address without resorting to hacks (e.g., writing a function in a
> privileged language like plperlu and calling netstat or lsof).
>
>
Mmmm, I didn't spot that one, but it did the trick! Thanks!
Alex.