pub struct GuestOverlayConfig {
pub overlay_ip: IpAddr,
pub prefix_len: u8,
pub private_key: String,
pub public_key: String,
pub listen_port: u16,
pub peers: Vec<PeerSpec>,
pub dns_server: Option<IpAddr>,
pub dns_domain: Option<String>,
}Expand description
Overlay identity returned for a guest-managed attach
(AttachHandle::GuestManaged → OverlaydResponse::GuestConfig).
The host allocated the address from the node slice, generated the keypair,
and registered public_key in the mesh (so peers route to the guest). The
caller ships everything except public_key into the guest; public_key is
echoed back so the caller can record/deregister the peer it represents.
Fields§
§overlay_ip: IpAddrThe guest’s allocated overlay address.
prefix_len: u8Prefix length of the overlay network (interface address + on-link route).
private_key: StringBase64 WireGuard private key for the guest’s overlay endpoint.
public_key: StringBase64 WireGuard public key matching private_key (registered in the
mesh by overlayd; echoed for the caller’s bookkeeping).
listen_port: u16UDP port the guest’s WireGuard device should listen on.
peers: Vec<PeerSpec>The peers the guest should configure (other nodes/containers).
dns_server: Option<IpAddr>Overlay DNS resolver IP for the container, if any.
dns_domain: Option<String>Overlay DNS search domain, if any.
Trait Implementations§
Source§impl Clone for GuestOverlayConfig
impl Clone for GuestOverlayConfig
Source§fn clone(&self) -> GuestOverlayConfig
fn clone(&self) -> GuestOverlayConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GuestOverlayConfig
impl Debug for GuestOverlayConfig
Source§impl<'de> Deserialize<'de> for GuestOverlayConfig
impl<'de> Deserialize<'de> for GuestOverlayConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for GuestOverlayConfig
Source§impl PartialEq for GuestOverlayConfig
impl PartialEq for GuestOverlayConfig
Source§fn eq(&self, other: &GuestOverlayConfig) -> bool
fn eq(&self, other: &GuestOverlayConfig) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for GuestOverlayConfig
impl Serialize for GuestOverlayConfig
impl StructuralPartialEq for GuestOverlayConfig
Auto Trait Implementations§
impl Freeze for GuestOverlayConfig
impl RefUnwindSafe for GuestOverlayConfig
impl Send for GuestOverlayConfig
impl Sync for GuestOverlayConfig
impl Unpin for GuestOverlayConfig
impl UnsafeUnpin for GuestOverlayConfig
impl UnwindSafe for GuestOverlayConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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
key and return true if they are equal.