| Crates.io | nscd-lookup |
| lib.rs | nscd-lookup |
| version | 0.1.5 |
| created_at | 2025-02-28 19:28:55.339888+00 |
| updated_at | 2025-03-10 12:27:25.087162+00 |
| description | Look up IP addresses using nscd |
| homepage | |
| repository | https://github.com/Kijewski/nscd-lookup |
| max_upload_size | |
| id | 1573089 |
| size | 74,222 |
Explicitly querying nscd might come in handy
if your program runs in a container or jail without direct internet access, but you still need to
look up a domain name for some reason.
use std::net::{IpAddr, Ipv4Addr, Ipv6Addr};
use nscd_lookup::sync::lookup;
let localhost: Vec<IpAddr> = lookup("localhost", &mut Vec::new(), None)
.expect("should be able to look up addresses")
.expect("address list should not be empty")
.collect();
assert!(localhost.contains(&IpAddr::V4(Ipv4Addr::LOCALHOST)));
assert!(localhost.contains(&IpAddr::V6(Ipv6Addr::LOCALHOST)));
Or with the feature "tokio":
use std::net::{IpAddr, Ipv4Addr, Ipv6Addr};
use nscd_lookup::tokio::lookup;
let localhost: Vec<IpAddr> = lookup("localhost", &mut Vec::new(), None)
.await
.expect("should be able to look up addresses")
.expect("address list should not be empty")
.collect();
assert!(localhost.contains(&IpAddr::V4(Ipv4Addr::LOCALHOST)));
assert!(localhost.contains(&IpAddr::V6(Ipv6Addr::LOCALHOST)));
The feature "reqwest" enables a resolver that can be used in reqwest clients.