podman_rest_client/v5/models/
inspect_network_settings.rs

1use serde::{Deserialize, Serialize};
2#[derive(Default, Debug, Serialize, Deserialize)]
3/// InspectNetworkSettings holds information about the network settings of the
4/// container.
5/// Many fields are maintained only for compatibility with `docker inspect` and
6/// are unused within Libpod.
7pub struct InspectNetworkSettings {
8    /// AdditionalMacAddresses is a set of additional MAC Addresses beyond
9    /// the first. CNI may configure more than one interface for a single
10    /// network, which can cause this.
11    #[serde(rename = "AdditionalMACAddresses")]
12    pub additional_mac_addresses: Option<Vec<String>>,
13    #[serde(rename = "Bridge")]
14    pub bridge: Option<String>,
15    /// EndpointID is unused, maintained exclusively for compatibility.
16    #[serde(rename = "EndpointID")]
17    pub endpoint_id: Option<String>,
18    /// Gateway is the IP address of the gateway this network will use.
19    #[serde(rename = "Gateway")]
20    pub gateway: Option<String>,
21    /// GlobalIPv6Address is the global-scope IPv6 Address for this network.
22    #[serde(rename = "GlobalIPv6Address")]
23    pub global_i_pv6_address: Option<String>,
24    /// GlobalIPv6PrefixLen is the length of the subnet mask of this network.
25    #[serde(rename = "GlobalIPv6PrefixLen")]
26    pub global_i_pv6_prefix_len: Option<i64>,
27    #[serde(rename = "HairpinMode")]
28    pub hairpin_mode: Option<bool>,
29    /// IPAddress is the IP address for this network.
30    #[serde(rename = "IPAddress")]
31    pub ip_address: Option<String>,
32    /// IPPrefixLen is the length of the subnet mask of this network.
33    #[serde(rename = "IPPrefixLen")]
34    pub ip_prefix_len: Option<i64>,
35    /// IPv6Gateway is the IPv6 gateway this network will use.
36    #[serde(rename = "IPv6Gateway")]
37    pub i_pv6_gateway: Option<String>,
38    #[serde(rename = "LinkLocalIPv6Address")]
39    pub link_local_i_pv6_address: Option<String>,
40    #[serde(rename = "LinkLocalIPv6PrefixLen")]
41    pub link_local_i_pv6_prefix_len: Option<i64>,
42    /// MacAddress is the MAC address for the interface in this network.
43    #[serde(rename = "MacAddress")]
44    pub mac_address: Option<String>,
45    /// Networks contains information on non-default networks this
46    /// container has joined.
47    /// It is a map of network name to network information.
48    #[serde(rename = "Networks")]
49    pub networks:
50        Option<std::collections::HashMap<String, crate::v5::models::InspectAdditionalNetwork>>,
51    #[serde(rename = "Ports")]
52    pub ports:
53        Option<std::collections::HashMap<String, Option<Vec<crate::v5::models::InspectHostPort>>>>,
54    #[serde(rename = "SandboxID")]
55    pub sandbox_id: Option<String>,
56    #[serde(rename = "SandboxKey")]
57    pub sandbox_key: Option<String>,
58    /// SecondaryIPAddresses is a list of extra IP Addresses that the
59    /// container has been assigned in this network.
60    #[serde(rename = "SecondaryIPAddresses")]
61    pub secondary_ip_addresses: Option<Vec<crate::v5::models::Address>>,
62    /// SecondaryIPv6Addresses is a list of extra IPv6 Addresses that the
63    /// container has been assigned in this network.
64    #[serde(rename = "SecondaryIPv6Addresses")]
65    pub secondary_i_pv6_addresses: Option<Vec<crate::v5::models::Address>>,
66}