Module nat_traversal

Source
Expand description

NAT traversal protocol implementation NAT Traversal Protocol Implementation

This module implements the QUIC-native NAT traversal approach based on draft-seemann-quic-nat-traversal-01. It focuses exclusively on the three required QUIC extension frames and implements a clean state machine for NAT traversal lifecycle.

IMPORTANT: This implementation uses ONLY the QUIC-native approach and does NOT include any STUN, ICE, or other external NAT traversal protocols. All NAT traversal functionality is implemented as QUIC protocol extensions using custom frames and transport parameters as defined in the draft specification.

Re-exports§

pub use crate::nat_traversal_api::BootstrapNode;
pub use crate::nat_traversal_api::CandidateAddress;
pub use crate::nat_traversal_api::EndpointRole;
pub use crate::nat_traversal_api::NatTraversalConfig;
pub use crate::nat_traversal_api::NatTraversalEndpoint;
pub use crate::nat_traversal_api::NatTraversalError;
pub use crate::nat_traversal_api::NatTraversalEvent;
pub use crate::nat_traversal_api::NatTraversalStatistics;
pub use crate::nat_traversal_api::PeerId;

Modules§

bootstrap
Bootstrap Coordination Protocol
hole_punching
Hole Punching Algorithm Implementation
rfc_migration
RFC Migration Strategy for NAT Traversal

Enums§

CandidateSource
How an address candidate was discovered
CandidateState
Current state of a candidate address
NatTraversalRole
Role in NAT traversal coordination