pub enum IpMode {
IPv4Only,
IPv6Only,
DualStack,
DualStackSeparate {
ipv4_port: PortBinding,
ipv6_port: PortBinding,
},
}
Expand description
IP stack configuration for endpoint binding
Variants§
IPv4Only
IPv4 only (bind to 0.0.0.0:port)
This is the safest default as it:
- Works on all platforms
- Avoids dual-stack conflicts
- Simplifies configuration
IPv6Only
IPv6 only (bind to [::]:port)
DualStack
Both IPv4 and IPv6 on same port
Note: May fail on some platforms due to dual-stack binding conflicts.
Use DualStackSeparate
if this fails.
DualStackSeparate
IPv4 and IPv6 on different ports
This avoids dual-stack binding conflicts by using separate ports.
Trait Implementations§
impl Eq for IpMode
impl StructuralPartialEq for IpMode
Auto Trait Implementations§
impl Freeze for IpMode
impl RefUnwindSafe for IpMode
impl Send for IpMode
impl Sync for IpMode
impl Unpin for IpMode
impl UnwindSafe for IpMode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.