Simple UDP-only STUN client for resolving external IP address:port behind NAT.
Supports both sync and async.
Example (sync):
use UdpSocket;
use StunClient;
use ;
let local_addr : SocketAddr = "0.0.0.0:0".parse.unwrap;
let stun_addr = "stun.counterpath.net:3478".to_socket_addrs.unwrap.filter.next.unwrap;
let udp = bind.unwrap;
let c = new;
let my_external_addr = c.query_external_address.unwrap;
Example (async):
use StunClient;
use ;
let local_addr : SocketAddr = "0.0.0.0:0".parse.unwrap;
let stun_addr = "stun.counterpath.net:3478".to_socket_addrs.unwrap.filter.next.unwrap;
let udp = bind.unwrap;
let c = new;
let f = c.query_external_address_async;
let = block_on_all.unwrap;