Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Getting the client IP in Apache, version 2.4

by rjschwei (Novice)
on Jan 04, 2017 at 19:48 UTC ( [id://1178953]=perlquestion: print w/replies, xml ) Need Help??

rjschwei has asked for the wisdom of the Perl Monks concerning the following question:

In version 2.4 of Apache the API changed 1 from remote_addr() to client_addr() but there is a bit more trickery, which is where I am stuck, than just converting from:

my $clientIP = $r->connection()->remote_ip()

to:

my $clientIP = $r->connection()->client_addr();

When printing $clientIP to a log file now I get:

APR::SockAddr=SCALAR(0x7f205425ecf8)

if I dereference this I just get an integer thus that's not useful. In the documentation 2 for mod_perl I found get_ip, but this does not exists and the doc is for 2.0, not 2.4.

So, who knows how I turn $r->connection()->client_addr(), where $r is the request object into an IP address?

Thanks,

1 https://httpd.apache.org/docs/2.4/developer/new_api_2_4.html

2 https://perl.apache.org/docs/2.0/api/APR/SockAddr.html
  • Comment on Getting the client IP in Apache, version 2.4

Replies are listed 'Best First'.
Re: Getting the client IP in Apache, version 2.4
by Corion (Patriarch) on Jan 04, 2017 at 20:07 UTC
      Yeah obviously I turned things around in my original message. However, the problem description is correct:

      Can't locate object method "ip_get" via package "APR::SockAddr"

      So with Apache 2.4 the documentation and implementation are out of kilter.
        OK, answering my own question.

        use APR::SockAddr;

        is obviously required, after which

        $r->connection()->client_addr()->ip_get;

        Works as expected.

        Sorry for the noise

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://1178953]
Approved by Laurent_R
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (4)
As of 2024-04-19 01:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found