Apache module to report IP address to web clients as a JSON response
This module reports the IP the user came from, as a JSONP response. GET requests required; CGI style arguments are permitted.
| argument | description |
|---|---|
callback=[name] |
to call a function name of your choosing |
size=[number] |
to pad the http data portion of the response. (Does not attempt to offset header response) |
asn=1 |
peform ISP ASN and name lookups |
testip=IPADDRESS |
to override the IP address, force it to look up another |
If the callback is "?", it will output to the screen (calling it "callback"), using plain text. Any other name, will output a JSON script instead, using the callback name specified.
Example:
http://test-ipv6.com/ip/?callback=hello&testip=2001:470:1:18::2&asn=1
Returns:
hello({"ip":"2001:470:1:18::2","type":"ipv6","subtype":"","via":"","asn":"6939","asn_name":"HURRICANE - Hurricane Electric, Inc.","asnlist":"6939","padding":""})
./configure
make
sudo make install Something like this should be in your web server config; it should have been
placed there automatically with make install. The apache build system
would have taken care of that for you. Some platforms, however, do not (such
as ubuntu), so you'll need to double check.
LoadModule mod_ip_module libexec/apache22/mod_ip.so
Even on platforms were activation was automatic, configuration was not. You'll need to explicitly enable mod_ip for the paths you want it in.
- If you're installing falling-sky, go back to the install instructions.
- If you're installing mod_ip for another project, do something like this:
<VirtualHost test-ipv6.com>
..
# Set /ip/ to use mod_ip
<LocationMatch ^/ip/?$>
SetHandler mod_ip
</locationMatch>
# You may optionally include the output of ./scan-sixxs.pl here
..
</VirtualHost>