redfish_codegen/models/address_pool/v1_2_2/
ipv4.rs1use crate::models;
4
5#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct IPv4 {
10 #[serde(rename = "AnycastGatewayIPAddress")]
12 #[serde(default, skip_serializing_if = "Option::is_none")]
13 pub anycast_gateway_ip_address: Option<String>,
14 #[serde(rename = "AnycastGatewayMACAddress")]
16 #[serde(default, skip_serializing_if = "Option::is_none")]
17 pub anycast_gateway_mac_address: Option<String>,
18 #[serde(rename = "DHCP")]
19 #[serde(default, skip_serializing_if = "Option::is_none")]
20 pub dhcp: Option<models::address_pool::v1_2_2::DHCP>,
21 #[serde(rename = "DNSDomainName")]
23 #[serde(default, skip_serializing_if = "Option::is_none")]
24 pub dns_domain_name: Option<String>,
25 #[serde(rename = "DNSServer")]
27 #[serde(default, skip_serializing_if = "Option::is_none")]
28 pub dns_server: Option<Vec<String>>,
29 #[serde(rename = "DistributeIntoUnderlayEnabled")]
31 #[serde(default, skip_serializing_if = "Option::is_none")]
32 pub distribute_into_underlay_enabled: Option<bool>,
33 #[serde(rename = "EBGPAddressRange")]
34 #[serde(default, skip_serializing_if = "Option::is_none")]
35 pub ebgp_address_range: Option<models::address_pool::v1_2_2::IPv4AddressRange>,
36 #[serde(rename = "FabricLinkAddressRange")]
37 #[serde(default, skip_serializing_if = "Option::is_none")]
38 pub fabric_link_address_range: Option<models::address_pool::v1_2_2::IPv4AddressRange>,
39 #[serde(rename = "GatewayIPAddress")]
41 #[serde(default, skip_serializing_if = "Option::is_none")]
42 pub gateway_ip_address: Option<String>,
43 #[serde(rename = "HostAddressRange")]
44 #[serde(default, skip_serializing_if = "Option::is_none")]
45 pub host_address_range: Option<models::address_pool::v1_2_2::IPv4AddressRange>,
46 #[serde(rename = "IBGPAddressRange")]
47 #[serde(default, skip_serializing_if = "Option::is_none")]
48 pub ibgp_address_range: Option<models::address_pool::v1_2_2::IPv4AddressRange>,
49 #[serde(rename = "LoopbackAddressRange")]
50 #[serde(default, skip_serializing_if = "Option::is_none")]
51 pub loopback_address_range: Option<models::address_pool::v1_2_2::IPv4AddressRange>,
52 #[serde(rename = "ManagementAddressRange")]
53 #[serde(default, skip_serializing_if = "Option::is_none")]
54 pub management_address_range: Option<models::address_pool::v1_2_2::IPv4AddressRange>,
55 #[serde(rename = "NTPOffsetHoursMinutes")]
57 #[serde(default, skip_serializing_if = "Option::is_none")]
58 pub ntp_offset_hours_minutes: Option<i64>,
59 #[serde(rename = "NTPServer")]
61 #[serde(default, skip_serializing_if = "Option::is_none")]
62 pub ntp_server: Option<Vec<String>>,
63 #[serde(rename = "NTPTimezone")]
65 #[serde(default, skip_serializing_if = "Option::is_none")]
66 pub ntp_timezone: Option<String>,
67 #[serde(rename = "NativeVLAN")]
69 #[serde(default, skip_serializing_if = "Option::is_none")]
70 pub native_vlan: Option<i64>,
71 #[serde(rename = "SystemMACRange")]
72 #[serde(default, skip_serializing_if = "Option::is_none")]
73 pub system_mac_range: Option<models::address_pool::v1_2_2::SystemMACRange>,
74 #[serde(rename = "VLANIdentifierAddressRange")]
75 #[serde(default, skip_serializing_if = "Option::is_none")]
76 pub vlan_identifier_address_range: Option<models::address_pool::v1_2_2::VLANIdentifierAddressRange>,
77}
78
79impl crate::Metadata<'static> for IPv4 {
80 const JSON_SCHEMA: &'static str = "AddressPool.v1_2_2.json";
81}