Class: Google::Cloud::Compute::V1::NetworkInterface

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/compute/v1/compute.rb

Overview

A network interface resource attached to an instance.

Defined Under Namespace

Modules: IgmpQuery, Ipv6AccessType, NicType, StackType

Instance Attribute Summary collapse

Instance Attribute Details

#access_configs::Array<::Google::Cloud::Compute::V1::AccessConfig>

Returns An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are noaccessConfigs specified, then this instance will have no external internet access.

Returns:

  • (::Array<::Google::Cloud::Compute::V1::AccessConfig>)

    An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are noaccessConfigs specified, then this instance will have no external internet access.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#alias_ip_ranges::Array<::Google::Cloud::Compute::V1::AliasIpRange>

Returns An array of alias IP ranges for this network interface. You can only specify this field for network interfaces in VPC networks.

Returns:



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#enable_vpc_scoped_dns::Boolean

Returns Optional. If true, DNS resolution will be enabled over this interface. Only valid with network_attachment.

Returns:

  • (::Boolean)

    Optional. If true, DNS resolution will be enabled over this interface. Only valid with network_attachment.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#fingerprint::String

Returns Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update theNetworkInterface. The request will fail with error400 Bad Request if the fingerprint is not provided, or412 Precondition Failed if the fingerprint is out of date.

Returns:

  • (::String)

    Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update theNetworkInterface. The request will fail with error400 Bad Request if the fingerprint is not provided, or412 Precondition Failed if the fingerprint is out of date.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#igmp_query::String

Returns Indicate whether igmp query is enabled on the network interface or not. If enabled, also indicates the version of IGMP supported. Check the IgmpQuery enum for the list of possible values.

Returns:

  • (::String)

    Indicate whether igmp query is enabled on the network interface or not. If enabled, also indicates the version of IGMP supported. Check the IgmpQuery enum for the list of possible values.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#internal_ipv6_prefix_length::Integer

Returns The prefix length of the primary internal IPv6 range.

Returns:

  • (::Integer)

    The prefix length of the primary internal IPv6 range.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#ipv6_access_configs::Array<::Google::Cloud::Compute::V1::AccessConfig>

Returns An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access.

Returns:

  • (::Array<::Google::Cloud::Compute::V1::AccessConfig>)

    An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#ipv6_access_type::String

Returns Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.

Valid only if stackType is IPV4_IPV6. Check the Ipv6AccessType enum for the list of possible values.

Returns:

  • (::String)

    Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.

    Valid only if stackType is IPV4_IPV6. Check the Ipv6AccessType enum for the list of possible values.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#ipv6_address::String

Returns An IPv6 internal network address for this network interface. To use a static internal IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an internal IPv6 address from the instance's subnetwork.

Returns:

  • (::String)

    An IPv6 internal network address for this network interface. To use a static internal IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an internal IPv6 address from the instance's subnetwork.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#kind::String

Returns Output only. [Output Only] Type of the resource. Alwayscompute#networkInterface for network interfaces.

Returns:

  • (::String)

    Output only. [Output Only] Type of the resource. Alwayscompute#networkInterface for network interfaces.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#name::String

Returns [Output Only] The name of the network interface, which is generated by the server. For a VM, the network interface uses the nicN naming format. Where N is a value between 0 and7. The default interface value is nic0.

Returns:

  • (::String)

    [Output Only] The name of the network interface, which is generated by the server. For a VM, the network interface uses the nicN naming format. Where N is a value between 0 and7. The default interface value is nic0.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#network::String

Returns URL of the VPC network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used. If the selected project doesn't have the default network, you must specify a network or subnet. If the network is not specified but the subnetwork is specified, the network is inferred.

If you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs:

  - https://www.googleapis.com/compute/v1/projects/project/global/networks/network
  - projects/project/global/networks/network
  - global/networks/default.

Returns:

  • (::String)

    URL of the VPC network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used. If the selected project doesn't have the default network, you must specify a network or subnet. If the network is not specified but the subnetwork is specified, the network is inferred.

    If you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs:

      - https://www.googleapis.com/compute/v1/projects/project/global/networks/network
      - projects/project/global/networks/network
      - global/networks/default
    


55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#network_attachment::String

Returns The URL of the network attachment that this interface should connect to in the following format: projects/{project_number}/regions/{region_name}/networkAttachments/{network_attachment_name}.

Returns:

  • (::String)

    The URL of the network attachment that this interface should connect to in the following format: projects/{project_number}/regions/{region_name}/networkAttachments/{network_attachment_name}.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#network_i_p::String

Returns An IPv4 internal IP address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.

Returns:

  • (::String)

    An IPv4 internal IP address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#nic_type::String

Returns The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. Check the NicType enum for the list of possible values.

Returns:

  • (::String)

    The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. Check the NicType enum for the list of possible values.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#parent_nic_name::String

Returns Name of the parent network interface of a dynamic network interface.

Returns:

  • (::String)

    Name of the parent network interface of a dynamic network interface.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#queue_count::Integer

Returns The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It'll be empty if not specified by the users.

Returns:

  • (::Integer)

    The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It'll be empty if not specified by the users.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#service_class_id::String

Returns Optional. Producer Service's Service class Id for the region of this network interface. Can only be used with network_attachment. It is not possible to use on its own however, network_attachment can be used without service_class_id.

Returns:

  • (::String)

    Optional. Producer Service's Service class Id for the region of this network interface. Can only be used with network_attachment. It is not possible to use on its own however, network_attachment can be used without service_class_id.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#stack_type::String

Returns The stack type for this network interface. To assign only IPv4 addresses, use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.

This field can be both set at instance creation and update network interface operations. Check the StackType enum for the list of possible values.

Returns:

  • (::String)

    The stack type for this network interface. To assign only IPv4 addresses, use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.

    This field can be both set at instance creation and update network interface operations. Check the StackType enum for the list of possible values.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#subnetwork::String

Returns The URL of the Subnetwork resource for this instance. If the network resource is inlegacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required. If you specify this field, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs:

  - https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork
  • regions/region/subnetworks/subnetwork.

Returns:

  • (::String)

    The URL of the Subnetwork resource for this instance. If the network resource is inlegacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required. If you specify this field, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs:

      - https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork
    
    • regions/region/subnetworks/subnetwork


55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end

#vlan::Integer

Returns VLAN tag of a dynamic network interface, must be an integer in the range from 2 to 255 inclusively.

Returns:

  • (::Integer)

    VLAN tag of a dynamic network interface, must be an integer in the range from 2 to 255 inclusively.



55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 55036

class NetworkInterface
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Indicate whether igmp query is enabled on the network interface
  # or not. If enabled, also indicates the version of IGMP supported.
  module IgmpQuery
    # A value indicating that the enum field is not set.
    UNDEFINED_IGMP_QUERY = 0

    # The network interface has disabled IGMP query.
    IGMP_QUERY_DISABLED = 28_285_169

    # The network interface has enabled IGMP query - v2.
    IGMP_QUERY_V2 = 333_493_457
  end

  # Output only. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
  # accessed from the Internet. This field is always inherited from its
  # subnetwork.
  #
  # Valid only if stackType is IPV4_IPV6.
  module Ipv6AccessType
    # A value indicating that the enum field is not set.
    UNDEFINED_IPV6_ACCESS_TYPE = 0

    # This network interface can have external IPv6.
    EXTERNAL = 35_607_499

    # This network interface can have internal IPv6.
    INTERNAL = 279_295_677

    UNSPECIFIED_IPV6_ACCESS_TYPE = 313_080_613
  end

  # The type of vNIC to be used on this interface. This may be gVNIC or
  # VirtioNet.
  module NicType
    # A value indicating that the enum field is not set.
    UNDEFINED_NIC_TYPE = 0

    # GVNIC
    GVNIC = 68_209_305

    # IDPF
    IDPF = 2_242_641

    # IRDMA
    IRDMA = 69_927_695

    # MRDMA
    MRDMA = 73_621_779

    # No type specified.
    UNSPECIFIED_NIC_TYPE = 67_411_801

    # VIRTIO
    VIRTIO_NET = 452_123_481
  end

  # The stack type for this network interface. To assign only IPv4 addresses,
  # use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.
  #
  # This field can be both set at instance creation and update network
  # interface operations.
  module StackType
    # A value indicating that the enum field is not set.
    UNDEFINED_STACK_TYPE = 0

    # The network interface can have both IPv4 and IPv6 addresses.
    IPV4_IPV6 = 22_197_249

    # The network interface will only be assigned IPv4 addresses.
    IPV4_ONLY = 22_373_798

    # The network interface will only be assigned IPv6 addresses.
    IPV6_ONLY = 79_632_100

    UNSPECIFIED_STACK_TYPE = 298_084_569
  end
end