From 83af3b139c6c01a9cd9f998a5497feaa5a1312fa Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Thu, 17 Sep 2015 21:14:09 +0200 Subject: [PATCH] Update readme --- README.md | 86 +++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 68 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index ef5da4e..21d53bd 100644 --- a/README.md +++ b/README.md @@ -1,38 +1,88 @@ -ifconfig.co: Simple IP address lookup service -============================================= +# ifconfig.co: Simple IP address lookup service A simple service for looking up your IP address. This is the code that powers http://ifconfig.co -Basic usage -=========== +## Usage -The usual suspects ------------------- - $ curl ifconfig.co - 127.0.0.1 - $ wget -q -O - ifconfig.co - 127.0.0.1 +Just the business, please: -BSD fetch ---------- - $ fetch -q -o - ifconfig.co - 127.0.0.1 +``` +$ curl ifconfig.co +127.0.0.1 + +$ wget -qO - ifconfig.co +127.0.0.1 + +$ fetch -qo - ifconfig.co +127.0.0.1 +``` + +A specific header: + +``` +$ curl ifconfig.co/user-agent +curl/7.43.0 + +$ curl ifconfig.co/x-ifconfig-country +Norway +``` + +As JSON: + +``` +$ curl -H 'Accept: application/json' ifconfig.co +{ + "x-ifconfig-ip": "127.0.0.1" +} + +$ curl ifconfig.co/x-config-ip.json +{ + "x-ifconfig-ip": "127.0.0.1" +} +``` Pass the appropriate flag (usually -4 and -6) to your tool to switch between IPv4 and IPv6 lookup. -Features -======== +The subdomain http://v4.ifconfig.co can be used to force IPv4 lookup. + +## Features + * Easy to remember domain name * Supports IPv4 and IPv6 * Open source * Fast * Supports typical CLI tools (curl, wget and fetch) * JSON output (optional) +* Country lookup for IP address through the MaxMind GeoIP2 database + +## Why? -Why? -==== * To scratch an itch * An excuse to use Go for something * Faster than ifconfig.me and has IPv6 support + +## Building + +Compiling requires the [Golang compiler](https://golang.org/) to be installed. +This application can be installed by using `go get`: + +`go get github.com/martinp/ifconfigd` + +### Usage + +``` +ifconfigd -h +Usage: + ifconfigd [OPTIONS] + +Application Options: + -f, --file=FILE Path to GeoIP database + -l, --listen=ADDR Listening address (:8080) + -x, --cors Allow requests from other domains (false) + -t, --template= Path to template (index.html) + +Help Options: + -h, --help Show this help message +```