gip icon indicating copy to clipboard operation
gip copied to clipboard

a command-line tool to get global IP address

gip

Actions Status Crates.io Docs.rs codecov

gip is a command-line tool and Rust library to check global IP address.

Install

Download from release page, and extract to the directory in PATH.

Alternatively you can install by cargo.

cargo install gip

Usage

gip 0.3.2-pre
dalance <[email protected]>
A library and command-line frontend to check global IP address

USAGE:
    gip [FLAGS] [OPTIONS]

FLAGS:
    -4, --v4         IPv4 address ( default )
    -6, --v6         IPv6 address
    -p, --plane      Show by plane text ( default )
    -s, --string     Show by plane text without line break
    -j, --json       Show by JSON
    -l, --list       Show provider list
    -v, --verbose    Show verbose message
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
        --timeout <timeout>      Timeout per each provider by milliseconds [default: 1000]
        --json-key <json_key>    Key string of JSON format [default: ip]
        --proxy <proxy>          Proxy for HTTP access ( "host:port" )

Providers

Currently built-in service providers are the followings.

If you want to change providers, providers can be set by $HOME/.gip.toml like the following.

[[providers]]
    name     = "ident.me"
    ptype    = "IPv4"
    protocol = "HttpPlane"
    url      = "http://v4.ident.me/"
    key      = []

[[providers]]
    name     = "test-ipv6"
    ptype    = "IPv4"
    protocol = "HttpJson"
    url      = "http://ipv4.test-ipv6.com/ip/"
    key      = ["ip"]
    padding  = "callback"

[[providers]]
    name     = "opendns.com"
    ptype    = "IPv4"
    protocol = "Dns"
    url      = "[email protected]"
    key      = []

Library

gip is provided as Rust library.

gip = "0.7.1"

Documentation

License

Licensed under either of

  • Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
  • MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.