16 releases
0.7.1 | Mar 7, 2022 |
---|---|
0.7.0 | Nov 24, 2020 |
0.6.0 | Sep 19, 2018 |
0.5.1 | May 30, 2018 |
0.1.0 | Feb 22, 2016 |
#1613 in Network programming
56 downloads per month
48KB
1K
SLoC
gip
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 <dalance@gmail.com>
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.
- ipv6-test.com ( v4 /v6 )
- ident.me/tnedi.me ( v4 / v6 )
- test-ipv6.com ( v4 / v6 )
- opendns.com ( v4 / v6 )
- akamai.com ( v4 / v6 )
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 = "myip.opendns.com@resolver1.opendns.com"
key = []
Library
gip is provided as Rust library.
gip = "0.7.1"
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.
Dependencies
~11–28MB
~395K SLoC