My Internet IP Rust Crate
"My Internet IP" is a small rust crate for retrieving the public IP of the device this code is executed on.
Changes in 0.1.1
The code contains no more unwrap, but the return type of get
has been changed to the new enum MyIpError which wraps all
errors which may occur during retrieving of the IP.
Example
extern crate my_internet_ip;
Note: The call to my_internet_ip::get() blocks until the public IP
was retrieved or an error occurred.
Cargo.toml
= "0.1.1"
How it works
This crate uses the curl crate to access http://www.myip.ch and parse the result.
Ideas for contributions
- Support async retrieval of the IP
- Use other sites to retrieve the IP (maybe STUN server?) and select one randomly
- Clear up the code (it is quite convoluted, but it works)
License
MIT