Struct google_api_proto::google::cloud::compute::v1::RouterInterface
source · pub struct RouterInterface {
pub ip_range: Option<String>,
pub ip_version: Option<String>,
pub linked_interconnect_attachment: Option<String>,
pub linked_vpn_tunnel: Option<String>,
pub management_type: Option<String>,
pub name: Option<String>,
pub private_ip_address: Option<String>,
pub redundant_interface: Option<String>,
pub subnetwork: Option<String>,
}
Expand description
Fields§
§ip_range: Option<String>
IP address and range of the interface. - For Internet Protocol version 4 (IPv4), the IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example, 169.254.0.1/30. Note: Do not truncate the IP address, as it represents the IP address of the interface. - For Internet Protocol version 6 (IPv6), the value must be a unique local address (ULA) range from fdff:1::/64 with a mask length of 126 or less. This value should be a CIDR-formatted string, for example, fc00:0:1:1::1/112. Within the router’s VPC, this IPv6 prefix will be reserved exclusively for this connection and cannot be used for any other purpose.
ip_version: Option<String>
IP version of this interface. Check the IpVersion enum for the list of possible values.
linked_interconnect_attachment: Option<String>
URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a subnetwork.
linked_vpn_tunnel: Option<String>
URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a subnetwork.
management_type: Option<String>
[Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted. Check the ManagementType enum for the list of possible values.
name: Option<String>
Name of this interface entry. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z](\[-a-z0-9\]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
private_ip_address: Option<String>
The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
redundant_interface: Option<String>
Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface must be 1-63 characters long and match the regular expression [a-z](\[-a-z0-9\]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
subnetwork: Option<String>
The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
Implementations§
source§impl RouterInterface
impl RouterInterface
sourcepub fn private_ip_address(&self) -> &str
pub fn private_ip_address(&self) -> &str
Returns the value of private_ip_address
, or the default value if private_ip_address
is unset.
sourcepub fn ip_range(&self) -> &str
pub fn ip_range(&self) -> &str
Returns the value of ip_range
, or the default value if ip_range
is unset.
sourcepub fn management_type(&self) -> &str
pub fn management_type(&self) -> &str
Returns the value of management_type
, or the default value if management_type
is unset.
sourcepub fn ip_version(&self) -> &str
pub fn ip_version(&self) -> &str
Returns the value of ip_version
, or the default value if ip_version
is unset.
sourcepub fn subnetwork(&self) -> &str
pub fn subnetwork(&self) -> &str
Returns the value of subnetwork
, or the default value if subnetwork
is unset.
sourcepub fn linked_vpn_tunnel(&self) -> &str
pub fn linked_vpn_tunnel(&self) -> &str
Returns the value of linked_vpn_tunnel
, or the default value if linked_vpn_tunnel
is unset.
sourcepub fn linked_interconnect_attachment(&self) -> &str
pub fn linked_interconnect_attachment(&self) -> &str
Returns the value of linked_interconnect_attachment
, or the default value if linked_interconnect_attachment
is unset.
sourcepub fn redundant_interface(&self) -> &str
pub fn redundant_interface(&self) -> &str
Returns the value of redundant_interface
, or the default value if redundant_interface
is unset.
Trait Implementations§
source§impl Clone for RouterInterface
impl Clone for RouterInterface
source§fn clone(&self) -> RouterInterface
fn clone(&self) -> RouterInterface
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for RouterInterface
impl Debug for RouterInterface
source§impl Default for RouterInterface
impl Default for RouterInterface
source§impl Message for RouterInterface
impl Message for RouterInterface
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for RouterInterface
impl PartialEq for RouterInterface
source§fn eq(&self, other: &RouterInterface) -> bool
fn eq(&self, other: &RouterInterface) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for RouterInterface
Auto Trait Implementations§
impl Freeze for RouterInterface
impl RefUnwindSafe for RouterInterface
impl Send for RouterInterface
impl Sync for RouterInterface
impl Unpin for RouterInterface
impl UnwindSafe for RouterInterface
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request