
com.azure.resourcemanager.network.models.NetworkInterfaceBase Maven / Gradle / Ivy
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.resourcemanager.network.models;
import com.azure.core.annotation.Fluent;
import com.azure.resourcemanager.network.NetworkManager;
import com.azure.resourcemanager.network.fluent.models.NetworkInterfaceInner;
import com.azure.resourcemanager.resources.fluentcore.arm.models.HasManager;
import com.azure.resourcemanager.resources.fluentcore.model.HasInnerModel;
import java.util.List;
/** The base network interface shared across regular and virtual machine scale set network interface. */
@Fluent
public interface NetworkInterfaceBase extends HasManager, HasInnerModel {
/** @return true if accelerated networking is enabled for this network interface */
boolean isAcceleratedNetworkingEnabled();
/** @return true if IP forwarding is enabled in this network interface */
boolean isIPForwardingEnabled();
/** @return the MAC Address of the network interface */
String macAddress();
/** @return the Internal DNS name assigned to this network interface */
String internalDnsNameLabel();
/**
* Gets the fully qualified domain name of this network interface.
*
* A network interface receives FQDN as a part of assigning it to a virtual machine.
*
* @return the qualified domain name
*/
String internalFqdn();
/** @return the internal domain name suffix */
String internalDomainNameSuffix();
/** @return IP addresses of this network interface's DNS servers */
List dnsServers();
/** @return applied DNS servers */
List appliedDnsServers();
/** @return the network security group resource id associated with this network interface */
String networkSecurityGroupId();
/**
* Gets the network security group associated this network interface.
*
* This method makes a rest API call to fetch the Network Security Group resource.
*
* @return the network security group associated with this network interface.
*/
NetworkSecurityGroup getNetworkSecurityGroup();
/** @return the resource ID of the associated virtual machine, or null if none. */
String virtualMachineId();
/**
* Gets the private IP address allocated to this network interface's primary IP configuration.
*
*
The private IP will be within the virtual network subnet of this network interface.
*
* @return the private IP addresses
*/
String primaryPrivateIP();
/**
* @return the private IP allocation method (Dynamic, Static) of this network interface's primary IP configuration.
*/
IpAllocationMethod primaryPrivateIpAllocationMethod();
}