summaryrefslogtreecommitdiff
path: root/ifconfig
diff options
context:
space:
mode:
Diffstat (limited to 'ifconfig')
-rw-r--r--ifconfig/ifconfig.php60
-rw-r--r--ifconfig/index.php60
-rw-r--r--ifconfig/template.php132
3 files changed, 0 insertions, 252 deletions
diff --git a/ifconfig/ifconfig.php b/ifconfig/ifconfig.php
deleted file mode 100644
index 33ec5ba..0000000
--- a/ifconfig/ifconfig.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-class Ifconfig {
-
- public $ip;
-
- public function __construct($ip){
- $this->ip=$ip;
- }
-
- public function getHeader(){
- $headers = '';
- foreach ($_SERVER as $name => $value){
- if (substr($name, 0, 5) == 'HTTP_'){
- $headers[str_replace(' ', '-', ucwords( strtolower( str_replace( '_', ' ', substr( $name, 5) ) ) ) )] = $value;
- }
- }
- return $headers;
- }
-
- public function getAllGeoipRecords(){
-
- $tmp = geoip_record_by_name( $this->ip );
- if( $tmp ){
- unset($tmp['dma_code']);
- unset($tmp['area_code']);
- } else {
- $tmp = array ( "status" => "Data not available");
- }
-
- return $tmp;
- }
-
- public function encodeJson($value){
-
- if( empty($value) || is_null($value) || $value == "" )
- return json_encode($output = array( "status" => "failure" ));
- else
- $output = array( "status" => "success" );
-
- if ( ! is_array($value) ){
- $output[] = $value;
- } else {
- $output = array_merge($output, $value);
- }
-
- return json_encode($output);
- }
-
- public function getReverseDNS($ip = NULL){
- if ( is_null($ip) )
- $ip = $this->ip;
-
- return gethostbyaddr($ip);
- }
-
- public function __destruct(){
- return true;
- }
-}
diff --git a/ifconfig/index.php b/ifconfig/index.php
deleted file mode 100644
index a390ec2..0000000
--- a/ifconfig/index.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-if ( strpos($_SERVER['HTTP_USER_AGENT'], 'curl') !== false ){
- if ( empty($_GET) ){
- echo $_SERVER["REMOTE_ADDR"];
- exit;
- }
-}
-
-if ( empty($_GET) ){
- header($_SERVER["SERVER_PROTOCOL"] . " 302 Moved");
- header("Location: http://".$_SERVER["HTTP_HOST"].str_replace("/index.php", "", $_SERVER["PHP_SELF"] )."/?ip=".$_SERVER["REMOTE_ADDR"]."&geoip=1&header=1&output=html");
- exit;
-}
-
-if ( ! isset($_GET["ip"]) || $_GET["ip"] == "" ){
- $ip = $_SERVER["REMOTE_ADDR"];
-} else {
- if( preg_match("/([0-9]+\.){3}[0-9]+/", $_GET["ip"]) ){
- $ip = $_GET["ip"];
- } else {
- $ip = gethostbyname($_GET["ip"]);
- }
-}
-
-require 'ifconfig.php';
-
-$if = new Ifconfig($ip);
-
-$result = array("ip" => $ip, "hostname" => $if->getReverseDNS());
-
-if( isset($_GET["geoip"]) && $_GET["geoip"] != 0){
- $geoip = $result = array_merge($result, $if->getAllGeoipRecords());
-}
-
-if( isset($_GET["header"]) && $_GET["header"] != 0){
- $header = $if->getHeader();
- $result = array_merge($result, $header);
-}
-
-if( ! isset($_GET["output"]) || $_GET["output"] == "" ){
- $_GET["output"] = "html";
-}
-
-switch($_GET["output"]){
- case("json"):
- header("Content-Type: application/json");
- echo $if->encodeJson($result);
- break;
- case("html"):
- require 'template.php';
- break;
- case("php"):
- header("Content-Type: text/plain");
- echo serialize($result);
- break;
- default:
- require 'template.php';
- break;
-}
diff --git a/ifconfig/template.php b/ifconfig/template.php
deleted file mode 100644
index 50e9b74..0000000
--- a/ifconfig/template.php
+++ /dev/null
@@ -1,132 +0,0 @@
-<!doctype html>
-<html>
-<head>
- <meta charset="utf-8">
- <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
- <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
- <style>
- <?php echo file_get_contents("../tools/style.css"); ?>
- </style>
- <noscript><style>.navbar{margin-bottom:0;}</style></noscript>
- <title>IP API</title>
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <link rel='shortcut icon' href='../tools/favicon.ico' type='image/x-icon'>
-</head>
-<body>
- <?php require("../tools/navbar.php"); ?>
-<div class="container">
- <div class="text-center">
- <div class="row">
- <h1>Ifconfig</h1>
- <h3>Basic IP API/Look up.</h3>
- <hr>
- <?php if( isset($geoip) ){
- ?>
-
- <h3 class="text-left"><strong>IP API</strong></h3>
- <dl class="dl-horizontal">
- <?php
- foreach($geoip as $key => $value){
- echo "<dt>".str_replace('_', ' ', ucfirst($key))."</dt><dd class='text-left'>".$value."</dd>";
- }
- ?>
- </dl>
- <?php
- }
- if ( isset($header) ){
- ?>
- <h3 class="text-left"><strong>HTTP Header</strong></h3>
- <dl class="dl-horizontal">
- <?php
- foreach($header as $key => $value){
- echo "<dt>".$key."</dt><dd class='text-left'>".$value."</dd>";
- }
- ?>
- </dl>
- <?php
- }
- ?>
-
- <form class="form-horizontal">
- <fieldset>
-
- <!-- Form Name -->
- <legend></legend>
-
- <!-- Text input-->
- <div class="form-group">
- <label class="col-md-4 control-label" for="input">IP/Domain</label>
- <div class="col-md-4">
- <input id="input" name="ip" placeholder="Look up a host based on IP or FQDN." class="form-control input-md" type="text">
- <!--span class="help-block text-left">Look up a host based on IP or FQDN.</span-->
- </div>
- </div>
-
-
- <div class="text-left">
- <div class="form-group">
- <label class="col-md-4 control-label" for="geoip">Show GeoIP Data</label>
- <div class="col-md-4">
- <input id="geoip" name="geoip" value="1" type="checkbox" checked>
- </div>
- </div>
- </div>
-
- <div class="text-left">
- <div class="form-group">
- <label class="col-md-4 control-label" for="requestheader">Show Request Header</label>
- <div class="col-md-4">
- <input id="requestheader" name="header" value="1" type="checkbox" checked>
- </div>
- </div>
- </div>
-
-<div class="text-center">
-<!-- Multiple Radios (inline) -->
-<div class="form-group text-left">
- <label class="col-md-4 control-label" for="output"></label>
- <!--label class="col-md-4" for="output">Output Format</label-->
- <div class="col-md-4">
- <label class="radio-inline" for="output-0">
- <input name="output" id="output-0" value="html" checked="checked" type="radio">
- HTML
- </label>
- <label class="radio-inline" for="output-1">
- <input name="output" id="output-1" value="json" type="radio">
- JSON
- </label>
- <label class="radio-inline" for="output-2">
- <input name="output" id="output-2" value="php" type="radio">
- PHP (serialized)
- </label>
-<span class="help-block text-left">Choose output format.</span>
- </div>
-</div>
-</div>
-
- <!-- Button -->
- <div class="form-group">
- <label class="col-md-4 control-label" for=""></label>
- <div class="col-md-4">
- <button id="" name="" class="btn btn-primary"><span class="glyphicon glyphicon-search"></span> Look Up</button>
- </div>
- </div>
-
- <!--input type="hidden" name="output" value="html"-->
-
- </fieldset>
- </form>
- <hr>
-
- <h4>Command Line Interface: </h4>
- <!--p class="">Command Line Interface: <code>$ curl http://tools.iamfabulous.de/ifconfig/</code></p-->
- Get IP: <code>$ curl http://tools.iamfabulous.de/ifconfig/</code> => <?php echo $_SERVER['REMOTE_ADDR']; ?><br>
- JSON: <code>$ curl http://tools.iamfabulous.de/ifconfig/?output=json</code><br>
- Get everything: <code>$ curl http://tools.iamfabulous.de/ifconfig/?geoip=1&amp;header=1&amp;output=json</code>
- <!--p class="">JSON: <code>$ curl http://tools.iamfabulous.de/ifconfig/&amp;geoip=1&amp;header=1&amp;output=json</code></p-->
-
- </div>
- </div>
-</div>
-
- <?php require("../tools/footer.php"); ?>