ip_discovery/http/
providers.rs1use super::{parse_cloudflare_trace, HttpProvider};
4use crate::provider::BoxedProvider;
5
6pub fn cloudflare() -> HttpProvider {
8 HttpProvider::new("Cloudflare", "https://1.1.1.1/cdn-cgi/trace")
9 .with_parser(parse_cloudflare_trace)
10}
11
12pub fn aws() -> HttpProvider {
14 HttpProvider::new("AWS", "https://checkip.amazonaws.com")
15}
16
17pub fn provider_names() -> &'static [&'static str] {
19 &["Cloudflare", "AWS"]
20}
21
22pub fn default_providers() -> Vec<BoxedProvider> {
24 vec![Box::new(cloudflare()), Box::new(aws())]
25}