ant_quic/nat_traversal/
mod.rs

1//! NAT Traversal Protocol Implementation
2//!
3//! This module implements the QUIC-native NAT traversal approach based on
4//! draft-seemann-quic-nat-traversal-01. It focuses exclusively on the three
5//! required QUIC extension frames and implements a clean state machine for
6//! NAT traversal lifecycle.
7//!
8//! IMPORTANT: This implementation uses ONLY the QUIC-native approach and does NOT
9//! include any STUN, ICE, or other external NAT traversal protocols. All NAT traversal
10//! functionality is implemented as QUIC protocol extensions using custom frames and
11//! transport parameters as defined in the draft specification.
12
13// Re-export public NAT traversal API
14pub use crate::nat_traversal_api::{
15    BootstrapNode, CandidateAddress, EndpointRole, NatTraversalConfig, NatTraversalEndpoint,
16    NatTraversalError, NatTraversalEvent, NatTraversalStatistics, PeerId,
17};
18
19// Re-export NAT traversal types from connection module
20pub use crate::connection::nat_traversal::{CandidateSource, CandidateState, NatTraversalRole};
21
22// Submodules
23pub mod bootstrap;
24pub mod hole_punching;
25pub mod rfc_migration;
26
27// Module-private imports