use serde::{Deserialize, Serialize};
use std::net::IpAddr;
#[derive(Debug, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Serialize, Deserialize)]
pub enum NatType {
EIM,
EDM(i32),
EDMRandomIp(Vec<IpAddr>),
EDMRandomPort(Vec<u16>),
Unknown,
}
impl Default for NatType {
fn default() -> Self {
NatType::Unknown
}
}
#[derive(Debug, Default, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Serialize, Deserialize)]
pub struct NatInfo {
pub nat_type_for_tcp: NatType,
pub nat_type_for_udp: NatType,
}