Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Una Azure máquina virtual (VM) tiene una o varias interfaces de red (NIC) conectadas a ella. Una NIC puede tener una o varias direcciones IP públicas o privadas estáticas o dinámicas asignadas.
La asignación de varias direcciones IP a una VM permite las siguientes capacidades:
Hospedaje de varios sitios web o servicios con direcciones IP y certificados TLS/SSL diferentes en un único servidor.
Actúe como aplicación de red virtual, como un firewall o equilibrador de carga.
La capacidad de agregar cualquiera de las direcciones IP privadas de cualquiera de las NIC a un grupo de back-end de Azure Load Balancer. En el pasado, solo la dirección IP principal para la NIC principal podía agregarse a un grupo de back-end. Para más información sobre el equilibrio de carga de varias configuraciones de IP, consulte Equilibrio de carga de varias configuraciones de IP.
Cada NIC conectada a una VM tiene una o varias configuraciones de IP asociadas. Se asigna a cada configuración una dirección IP privada estática o dinámica. Cada configuración también puede tener un recurso de dirección IP pública asociado. Para obtener más información sobre las direcciones IP en Azure, consulte DIRECCIONESIP en Azure.
Note
Todas las configuraciones IP de una sola NIC deben estar asociadas a la misma subred. Si se quieren varias direcciones IP en distintas subredes, se pueden usar varias NIC en una máquina virtual. Para más información sobre varias NIC en una máquina virtual en Azure, consulte Crear máquina virtual con varias NIC.
Existe un límite para el número de direcciones IP privadas que pueden asignarse a una NIC. También hay un límite para el número de direcciones IP públicas que se pueden usar en una suscripción de Azure. Consulte el artículo límites de Azure para obtener más información.
En este artículo se explica cómo agregar varias direcciones IP a una máquina virtual con PowerShell.
Prerequisites
Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
Entorno de PowerShell en Azure Cloud Shell o Azure PowerShell instalado localmente. Para más información sobre el uso de PowerShell en Azure Cloud Shell, consulte Azure Cloud Shell Inicio rápido.
- Si decide instalar y usar PowerShell localmente, en este artículo se requiere el módulo Azure PowerShell versión 5.4.1 o posterior. Ejecute
Get-InstalledModule -Name Azpara buscar la versión instalada. Si necesita actualizar, consulte Install Azure PowerShell module. Asegúrese de que el módulo Az.Network es 4.3.0, o cualquier versión posterior. Para comprobar el módulo instalado, use el comandoGet-InstalledModule -Name "Az.Network". Si el módulo requiere una actualización, use el comandoUpdate-Module -Name "Az.Network"si es necesario.
- Si decide instalar y usar PowerShell localmente, en este artículo se requiere el módulo Azure PowerShell versión 5.4.1 o posterior. Ejecute
Inicie sesión en Azure PowerShell y asegúrese de que ha seleccionado la suscripción con la que desea usar esta característica. Para obtener más información, vea Sign in with Azure PowerShell.
Note
Aunque los pasos de este artículo asignan todas las configuraciones de IP a una NIC única, también puede asignar varias configuraciones de IP a cualquiera de las NIC de una máquina virtual con varias NIC. Para aprender a crear una VM con varias NIC, consulte Implementación de máquinas virtuales con varias NIC.
Figura: Diagrama de los recursos de configuración de red creados en este artículo de procedimientos.
Crear un grupo de recursos
Un grupo de recursos Azure es un contenedor lógico en el que se implementan y administran los recursos Azure.
Cree un grupo de recursos con New-AzResourceGroup denominado myResourceGroup en la ubicación eastus2 .
$rg =@{
Name = 'myResourceGroup'
Location = 'eastus2'
}
New-AzResourceGroup @rg
Creación de una red virtual
En esta sección creas una red virtual para la máquina virtual.
Use New-AzVirtualNetwork y New-AzVirtualNetworkSubnetConfig para crear una red virtual con una subred.
## Create backend subnet config ##
$subnet = @{
Name = 'myBackendSubnet'
AddressPrefix = '10.1.0.0/24'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet
## Create the virtual network ##
$vnet = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
AddressPrefix = '10.1.0.0/16'
Subnet = $subnetConfig
}
New-AzVirtualNetwork @vnet
Creación de una dirección IP pública principal
Use New-AzPublicIpAddress para crear una dirección IP pública principal.
$ip1 = @{
Name = 'myPublicIP-1'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
IpAddressVersion = 'IPv4'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip1
Crear un grupo de seguridad de red
En esta sección creas un grupo de seguridad de red para la máquina virtual y la red virtual. Creas una regla para permitir conexiones a la máquina virtual en el puerto 22 para SSH.
Use New-AzNetworkSecurityGroup y New-AzNetworkSecurityRuleConfig para crear el grupo de seguridad de red y las reglas.
## Create rule for network security group and place in variable. ##
$nsgrule1 = @{
Name = 'myNSGRuleSSH'
Description = 'Allow SSH'
Protocol = '*'
SourcePortRange = '*'
DestinationPortRange = '22'
SourceAddressPrefix = 'Internet'
DestinationAddressPrefix = '*'
Access = 'Allow'
Priority = '200'
Direction = 'Inbound'
}
$rule1 = New-AzNetworkSecurityRuleConfig @nsgrule1
## Create network security group ##
$nsg = @{
Name = 'myNSG'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
SecurityRules = $rule1
}
New-AzNetworkSecurityGroup @nsg
Crear una interfaz de red
Use New-AzNetworkInterface y New-AzNetworkInterfaceIpConfig para crear una interfaz de red (NIC) para la máquina virtual. La dirección IP pública y el grupo de seguridad de red creados anteriormente están asociados a la interfaz de red. La interfaz de red está conectada a la red virtual creada anteriormente.
## Place the virtual network into a variable. ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
## Place the network security group into a variable. ##
$ns = @{
Name = 'myNSG'
ResourceGroupName = 'myResourceGroup'
}
$nsg = Get-AzNetworkSecurityGroup @ns
## Place the primary public IP address into a variable. ##
$pub1 = @{
Name = 'myPublicIP-1'
ResourceGroupName = 'myResourceGroup'
}
$pubIP1 = Get-AzPublicIPAddress @pub1
## Create a primary IP configuration for the network interface. ##
$IP1 = @{
Name = 'ipconfig1'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv4'
PublicIPAddress = $pubIP1
}
$IP1Config = New-AzNetworkInterfaceIpConfig @IP1 -Primary
## Create a secondary IP configuration for the network interface. ##
$IP3 = @{
Name = 'ipconfig3'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv4'
PrivateIpAddress = '10.1.0.6'
}
$IP3Config = New-AzNetworkInterfaceIpConfig @IP3
## Command to create a network interface. ##
$nic = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
NetworkSecurityGroup = $nsg
IpConfiguration = $IP1Config,$IP3Config
}
New-AzNetworkInterface @nic
Note
Al agregar una dirección IP estática, debe especificar una dirección válida no utilizada en la subred a la que la está conectada la NIC.
Creación de una máquina virtual
Use los siguientes comandos para crear la máquina virtual:
$cred = Get-Credential
## Place network interface into a variable. ##
$nic = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
}
$nicVM = Get-AzNetworkInterface @nic
## Create a virtual machine configuration for VMs ##
$vmsz = @{
VMName = 'myVM'
VMSize = 'Standard_DS1_v2'
}
$vmos = @{
ComputerName = 'myVM'
Credential = $cred
}
$vmimage = @{
PublisherName = 'Debian'
Offer = 'debian-11'
Skus = '11'
Version = 'latest'
}
$vmConfig = New-AzVMConfig @vmsz `
| Set-AzVMOperatingSystem @vmos -Linux `
| Set-AzVMSourceImage @vmimage `
| Add-AzVMNetworkInterface -Id $nicVM.Id
## Create the virtual machine for VMs ##
$vm = @{
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
VM = $vmConfig
SshKeyName = 'mySSHKey'
}
New-AzVM @vm -GenerateSshKey
Adición de una dirección IP pública y privada secundaria
Use New-AzPublicIpAddress para crear una dirección IP pública secundaria.
$ip2 = @{
Name = 'myPublicIP-2'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
IpAddressVersion = 'IPv4'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip2
Use New-AzNetworkInterfaceIpConfig para crear la configuración ip secundaria de la máquina virtual.
## Place the virtual network into a variable. ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
## Place your virtual network subnet into a variable. ##
$sub = @{
Name = 'myBackendSubnet'
VirtualNetwork = $vnet
}
$subnet = Get-AzVirtualNetworkSubnetConfig @sub
## Place the secondary public IP address you created previously into a variable. ##
$pip = @{
Name = 'myPublicIP-2'
ResourceGroupName = 'myResourceGroup'
}
$pubIP2 = Get-AzPublicIPAddress @pip
## Place the network interface into a variable. ##
$net = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
}
$nic = Get-AzNetworkInterface @net
## Create a secondary IP configuration for the network interface. ##
$IPc2 = @{
Name = 'ipconfig2'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv4'
PrivateIpAddress = '10.1.0.5'
PublicIPAddress = $pubIP2
}
$IP2Config = New-AzNetworkInterfaceIpConfig @IPc2
## Add the IP configuration to the network interface. ##
$nic.IpConfigurations.Add($IP2Config)
## Save the configuration to the network interface. ##
$nic | Set-AzNetworkInterface
Incorporación de direcciones IP a un sistema operativo de la máquina virtual
Conéctese e inicie sesión en una máquina virtual que creó con múltiples direcciones IP privadas. Debe agregar manualmente todas las direcciones IP privadas (incluida la principal) que ha agregado a la máquina virtual. Complete los pasos siguientes para el sistema operativo de su máquina virtual.
Windows Server
Expandir
Abra un símbolo del sistema o PowerShell.
En la línea de comandos, escriba
ipconfig /all. Verá la dirección IP privada principal que se asignó a través de DHCP.Escriba
ncpa.cplen la línea de comandos para abrir la configuración conexiones de red .Abra las propiedades del adaptador de red asignado a las nuevas direcciones IP.
Haga doble clic en Protocolo de Internet versión 4 (TCP/IPv4).
Seleccione Usar la siguiente dirección IP: Escriba los siguientes valores.
Setting Value Dirección IP: Escriba la dirección IP privada principal . Máscara de subred: Escriba una máscara de subred basada en la dirección IP.
Por ejemplo, si la subred es una subred /24 , la máscara de subred es 255.255.255.0.Puerta de enlace predeterminada: la primera dirección IP de la subred.
Si la subred es 10.0.0.0/24, la dirección IP de la puerta de enlace es 10.0.0.1.Seleccione Usar las siguientes direcciones de servidor DNS:. Escriba los siguientes valores.
Setting Value Servidor DNS preferido: Escriba el servidor DNS principal.
Escriba la dirección IP de 168.63.129.16 para usar el DNS proporcionado por el Azure predeterminado.Seleccione el botón Avanzadas .
Selecciona Agregar.
Escriba la dirección IP privada que agregó a la interfaz de red de Azure. Escriba la máscara de subred correspondiente. Selecciona Agregar.
Repita los pasos anteriores para agregar más direcciones IP privadas que agregó a la interfaz de red de Azure.
Important
Nunca debe asignar manualmente la dirección IP pública asignada a una máquina virtual Azure dentro del sistema operativo de la máquina virtual. Al establecer manualmente la dirección IP en el sistema operativo, asegúrese de que es la misma dirección que la dirección IP privada asignada a la interfaz de red de Azure. Si no se asigna correctamente la dirección, se puede perder la conectividad a la máquina virtual. Para obtener más información, consulte Cambiar la configuración de la dirección IP.
Para más información sobre las direcciones IP privadas, consulte Direcciones IP privadas.
Seleccione Aceptar para cerrar la configuración de la dirección IP secundaria.
Seleccione Aceptar para cerrar la configuración del adaptador. La conexión RDP vuelve a establecerse.
Abra un símbolo del sistema o PowerShell.
En la línea de comandos, escriba
ipconfig /all.Compruebe que las direcciones IP privadas principales y secundarias están presentes en la configuración.
PS C:\Users\azureuser> ipconfig /all Windows IP Configuration Host Name . . . . . . . . . . . . : myVM Primary Dns Suffix . . . . . . . : Node Type . . . . . . . . . . . . : Hybrid IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No Ethernet adapter Ethernet: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Microsoft Hyper-V Network Adapter Physical Address. . . . . . . . . : 00-0D-3A-E6-CE-A3 DHCP Enabled. . . . . . . . . . . : No Autoconfiguration Enabled . . . . : Yes Link-local IPv6 Address . . . . . : fe80::a8d1:11d5:3ab2:6a51%5(Preferred) IPv4 Address. . . . . . . . . . . : 10.1.0.4(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 IPv4 Address. . . . . . . . . . . : 10.1.0.5(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 IPv4 Address. . . . . . . . . . . : 10.1.0.6(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 10.1.0.1 DHCPv6 IAID . . . . . . . . . . . : 100666682 DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2A-A8-26-B1-00-0D-3A-E6-CE-A3 DNS Servers . . . . . . . . . . . : 168.63.129.16 NetBIOS over Tcpip. . . . . . . . : EnabledAsegúrese de que la dirección IP privada principal que se usa en windows es la misma que la dirección IP principal de la interfaz de red de la máquina virtual de Azure. Para obtener más información, consulte Sin acceso a Internet desde una VM de Azure Windows que tiene múltiples direcciones IP.
Validación (Windows Server)
Para validar la conectividad a Internet desde la configuración de IP secundaria a través de la dirección IP pública, use el siguiente comando. Reemplace 10.1.0.5 por la dirección IP privada secundaria que agregó a la interfaz de red de máquina virtual de Azure.
ping -S 10.1.0.5 outlook.com
Note
Para las configuraciones de IP secundarias, se puede hacer ping a Internet si la configuración tiene una dirección IP pública asociada. Para configuraciones de IP principales, no se requiere una dirección IP pública para hacer ping a Internet.
SUSE Linux Enterprise y openSUSE
Expandir
Las distribuciones basadas en SUSE usan elcloud-netconfig complemento del cloud-netconfig-azure paquete para administrar la configuración de IP. No se requiere ningún paso manual por parte del administrador. La primera dirección IP de un conjunto de interfaces en la plataforma se asigna a través de DHCP. A continuación, el complemento cloud-netconfig sondea la API del servicio de metadatos de instancia de Azure continuamente (una vez por minuto) para obtener más direcciones IP asignadas a la interfaz y las agrega o quita como direcciones IP secundarias automáticamente.
Este complemento debe instalarse y habilitarse en imágenes nuevas de forma predeterminada. Los pasos de configuración de las cargas de trabajo antiguas se pueden encontrar aquí: https://www.suse.com/c/multi-nic-cloud-netconfig-ec2-azure/.
Ubuntu 14/16
Expandir
Se recomienda revisar la documentación más reciente de la distribución de Linux.
Abra una ventana del terminal.
Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:
sudo -iActualice el archivo de configuración de la interfaz de red (suponiendo "eth0").
Mantenga el elemento de línea existente para dhcp. La dirección IP principal permanece configurada que estaba.
Agregue una configuración para otra dirección IP estática con los siguientes comandos:
cd /etc/network/interfaces.d/ lsDebería ver un archivo .cfg.
Abra el archivo. Debería ver las siguientes líneas al final del archivo:
auto eth0 iface eth0 inet dhcpAgregue las líneas siguientes después de las que existen en el archivo. Reemplace
10.1.0.5por la dirección IP privada y la máscara de subred.iface eth0 inet static address 10.1.0.5 netmask 255.255.255.0Para agregar otras direcciones IP privadas, edite el archivo y agregue las nuevas direcciones IP privadas en líneas posteriores:
iface eth0 inet static address 10.1.0.5 netmask 255.255.255.0 iface eth0 inet static address 10.1.0.6 netmask 255.255.255.0Guarde el archivo mediante el comando siguiente:
:wqRestablezca la interfaz de red con el comando siguiente:
ifdown eth0 && ifup eth0Important
Si usa una conexión remota, ejecute ifdown e ifup en la misma línea.
Compruebe que la dirección IP se agregue a la interfaz de red con el comando siguiente:
ip addr list eth0Debería ver la dirección IP que agregó en la lista. Example:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0d:3a:04:45:16 brd ff:ff:ff:ff:ff:ff inet 10.1.0.5/24 brd 10.1.0.255 scope global eth0 valid_lft forever preferred_lft forever inet 10.1.0.6/24 brd 10.1.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet 10.1.0.4/24 brd 10.1.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet6 fe80::20d:3aff:fe04:4516/64 scope link valid_lft forever preferred_lft forever
Validación (Ubuntu 14/16)
Para asegurarse de que puede conectarse a internet desde su configuración de IP secundaria a través de la dirección IP pública asociada, use el siguiente comando:
ping -I 10.1.0.5 outlook.com
Note
Para las configuraciones de IP secundarias, solo se puede hacer ping a Internet si la configuración tiene una dirección IP pública asociada. Para configuraciones de IP principales, no se requiere una dirección IP pública para hacer ping a Internet.
Para máquinas virtuales Linux, al intentar validar la conectividad saliente de una NIC secundaria, debe agregar las rutas adecuadas. Consulte la documentación correspondiente a su distribución de Linux. El método siguiente para lograr este objetivo:
echo 150 custom >> /etc/iproute2/rt_tables
ip rule add from 10.1.0.5 lookup custom
ip route add default via 10.1.0.1 dev eth2 table custom
Asegúrese de reemplazar:
10.1.0.5 con la dirección IP privada que tiene asociada una dirección IP pública
10.1.0.1 a la puerta de enlace predeterminada
eth2 con el nombre de la NIC secundaria
Ubuntu 18.04 y versiones posteriores
Expandir
A partir de la versión 18.04, netplan se usa en Ubuntu para la administración de red. Se recomienda revisar la documentación más reciente de la distribución de Linux.
Abra una ventana del terminal.
Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:
sudo -iCree un archivo para la segunda interfaz y ábralo en un editor de texto:
vi /etc/netplan/60-static.yamlAgregue las líneas siguientes al archivo, reemplazando
10.1.0.5/24por la dirección IP y máscara de subred:network: version: 2 ethernets: eth0: addresses: - 10.1.0.5/24Para agregar direcciones IP privadas, edite el archivo y agregue las nuevas direcciones IP privadas en las líneas siguientes:
network: version: 2 ethernets: eth0: addresses: - 10.1.0.5/24 - 10.1.0.6/24Guarde el archivo mediante el comando siguiente:
:wqPruebe los cambios con netplan try para confirmar la sintaxis.
netplan tryNote
netplan tryaplicará los cambios temporalmente y revertirá los cambios después de 120 segundos. Si hay una pérdida de conectividad, espere 2 minutos y vuelva a conectarse. En ese momento, los cambios se habrán revertido.Si no hay ningún problema con
netplan try, aplique los cambios de configuración:netplan applyCompruebe que la dirección IP se agregue a la interfaz de red con el comando siguiente:
ip addr list eth0Debería ver la dirección IP que agregó en la lista. Example:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0d:3a:04:45:16 brd ff:ff:ff:ff:ff:ff inet 10.1.0.5/24 brd 10.1.0.255 scope global eth0 valid_lft forever preferred_lft forever inet 10.1.0.6/24 brd 10.1.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet 10.1.0.4/24 brd 10.1.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet6 fe80::20d:3aff:fe04:4516/64 scope link valid_lft forever preferred_lft forever
Validación (Ubuntu 18.04+)
Para asegurarse de que puede conectarse a internet desde su configuración de IP secundaria a través de la dirección IP pública asociada, use el siguiente comando:
ping -I 10.1.0.5 outlook.com
Note
Para las configuraciones de IP secundarias, solo se puede hacer ping a Internet si la configuración tiene una dirección IP pública asociada. Para configuraciones de IP principales, no se requiere una dirección IP pública para hacer ping a Internet.
Para máquinas virtuales Linux, al intentar validar la conectividad saliente de una NIC secundaria, debe agregar las rutas adecuadas. Siga la documentación adecuada para la distribución de Linux. El método siguiente es una manera de lograr este objetivo:
echo 150 custom >> /etc/iproute2/rt_tables
ip rule add from 10.1.0.5 lookup custom
ip route add default via 10.1.0.1 dev eth2 table custom
Asegúrese de reemplazar:
10.1.0.5 con la dirección IP privada que tiene asociada una dirección IP pública
10.1.0.1 a la puerta de enlace predeterminada
eth2 con el nombre de la NIC secundaria
Red Hat Enterprise Linux y otros
Expandir
Note
Para configurar las direcciones IP adicionales en RHEL10.x, es suficiente reiniciar NetworkManger con: systemctl restart NetworkManger.service o reiniciar el sistema. No es necesario ningún paso más.
RHEL 8.6 y versiones posteriores, RHEL 9
A partir de RHEL 8.6 y versiones posteriores y RHEL 9, el paquete "networkmanager-cloud-setup" puede controlar varias configuraciones IP y su configuración de ruta asociada.
- Deshabilita cloud-init para controlar la configuración de IP secundaria en los archivos respectivos /etc/cloud/cloud.cfg.d/99-apply-network-config.cfg o /etc/cloud/cloud.cfg.d/91-azure_datasource.cfg. Esto permitirá que NetworkManager y nm-cloud-setup administren toda la configuración de red.
[root@rhel8 ~]# cat /etc/cloud/cloud.cfg.d/99-apply-network-config.cfg
datasource:
Azure:
apply_network_config: False
- Instale el paquete "NetworkManager-cloud-setup" si aún no está instalado
]# yum install NetworkManager-cloud-setup
Red Hat Enterprise Linux 8 for x86_64 - BaseOS from RHUI (RPMs) 39 MB/s | 66 MB 00:01
Red Hat Enterprise Linux 8 for x86_64 - Supplementary (RPMs) from RHUI 2.3 MB/s | 340 kB 00:00
Red Hat Enterprise Linux 8 for x86_64 - AppStream from RHUI (RPMs) 41 MB/s | 60 MB 00:01
Red Hat CodeReady Linux Builder for RHEL 8 x86_64 (RPMs) from RHUI 33 MB/s | 8.9 MB 00:00
Red Hat Ansible Engine 2 for RHEL 8 x86_64 (RPMs) from RHUI 14 MB/s | 2.5 MB 00:00
Dependencies resolved.
==============================================================================================================================================================================================
Package Architecture Version Repository Size
==============================================================================================================================================================================================
Installing:
NetworkManager-cloud-setup x86_64 1:1.40.16-13.el8_9 rhel-8-for-x86_64-appstream-rhui-rpms 198 k
Upgrading:
NetworkManager x86_64 1:1.40.16-13.el8_9 rhel-8-for-x86_64-baseos-rhui-rpms 2.3 M
NetworkManager-libnm x86_64 1:1.40.16-13.el8_9 rhel-8-for-x86_64-baseos-rhui-rpms 1.9 M
NetworkManager-team x86_64 1:1.40.16-13.el8_9 rhel-8-for-x86_64-baseos-rhui-rpms 161 k
NetworkManager-tui x86_64 1:1.40.16-13.el8_9 rhel-8-for-x86_64-baseos-rhui-rpms 356 k
Transaction Summary
==============================================================================================================================================================================================
Install 1 Package
Upgrade 4 Packages
Total download size: 4.9 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): NetworkManager-cloud-setup-1.40.16-13.el8_9.x86_64.rpm 2.0 MB/s | 198 kB 00:00
(2/5): NetworkManager-1.40.16-13.el8_9.x86_64.rpm 18 MB/s | 2.3 MB 00:00
(3/5): NetworkManager-team-1.40.16-13.el8_9.x86_64.rpm 4.1 MB/s | 161 kB 00:00
(4/5): NetworkManager-libnm-1.40.16-13.el8_9.x86_64.rpm 12 MB/s | 1.9 MB 00:00
(5/5): NetworkManager-tui-1.40.16-13.el8_9.x86_64.rpm 8.8 MB/s | 356 kB 00:00
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 28 MB/s | 4.9 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: NetworkManager-libnm-1:1.40.16-13.el8_9.x86_64 1/1
Upgrading : NetworkManager-libnm-1:1.40.16-13.el8_9.x86_64 1/9
Running scriptlet: NetworkManager-libnm-1:1.40.16-13.el8_9.x86_64 1/9
Running scriptlet: NetworkManager-1:1.40.16-13.el8_9.x86_64 2/9
Upgrading : NetworkManager-1:1.40.16-13.el8_9.x86_64 2/9
Running scriptlet: NetworkManager-1:1.40.16-13.el8_9.x86_64 2/9
Installing : NetworkManager-cloud-setup-1:1.40.16-13.el8_9.x86_64 3/9
Running scriptlet: NetworkManager-cloud-setup-1:1.40.16-13.el8_9.x86_64 3/9
Upgrading : NetworkManager-team-1:1.40.16-13.el8_9.x86_64 4/9
Upgrading : NetworkManager-tui-1:1.40.16-13.el8_9.x86_64 5/9
Cleanup : NetworkManager-tui-1:1.40.0-1.el8.x86_64 6/9
Cleanup : NetworkManager-team-1:1.40.0-1.el8.x86_64 7/9
Running scriptlet: NetworkManager-1:1.40.0-1.el8.x86_64 8/9
Cleanup : NetworkManager-1:1.40.0-1.el8.x86_64 8/9
Running scriptlet: NetworkManager-1:1.40.0-1.el8.x86_64 8/9
Cleanup : NetworkManager-libnm-1:1.40.0-1.el8.x86_64 9/9
Running scriptlet: NetworkManager-libnm-1:1.40.0-1.el8.x86_64 9/9
Verifying : NetworkManager-cloud-setup-1:1.40.16-13.el8_9.x86_64 1/9
Verifying : NetworkManager-1:1.40.16-13.el8_9.x86_64 2/9
Verifying : NetworkManager-1:1.40.0-1.el8.x86_64 3/9
Verifying : NetworkManager-libnm-1:1.40.16-13.el8_9.x86_64 4/9
Verifying : NetworkManager-libnm-1:1.40.0-1.el8.x86_64 5/9
Verifying : NetworkManager-team-1:1.40.16-13.el8_9.x86_64 6/9
Verifying : NetworkManager-team-1:1.40.0-1.el8.x86_64 7/9
Verifying : NetworkManager-tui-1:1.40.16-13.el8_9.x86_64 8/9
Verifying : NetworkManager-tui-1:1.40.0-1.el8.x86_64 9/9
Installed products updated.
Upgraded:
NetworkManager-1:1.40.16-13.el8_9.x86_64 NetworkManager-libnm-1:1.40.16-13.el8_9.x86_64 NetworkManager-team-1:1.40.16-13.el8_9.x86_64 NetworkManager-tui-1:1.40.16-13.el8_9.x86_64
Installed:
NetworkManager-cloud-setup-1:1.40.16-13.el8_9.x86_64
Complete!
- Para habilitar "nm-cloud-setup" para controlar la configuración de IP secundaria, cree los archivos nm-cloud-setup.service y nm-cloud-setup.timer (ajuste los parámetros OnBootSec y OnUnitActiveSec para satisfacer sus necesidades).
[root@rhel8 ~]# cat /etc/systemd/system/nm-cloud-setup.service
[Unit]
Description=Automatically configure NetworkManager in cloud
Documentation=man:nm-cloud-setup(8)
Before=network-online.target
After=NetworkManager.service
[Service]
Environment=NM_CLOUD_SETUP_AZURE=yes
Type=oneshot
ExecStart=/usr/libexec/nm-cloud-setup
[Install]
WantedBy=NetworkManager.service
[root@rhel8 ~]# cat /etc/systemd/system/nm-cloud-setup.timer
[Unit]
Description=Periodically run nm-cloud-setup
[Timer]
OnBootSec=1min
OnUnitActiveSec=1min
[Install]
WantedBy=timers.target
- Habilitar servicios y el demonio de recarga
systemctl enable --now nm-cloud-setup.service
systemctl start nm-cloud-setup.service
systemctl enable --now nm-cloud-setup.timer
systemctl daemon-reload
- Reinicie la máquina virtual y compruebe. La máquina virtual ahora debería identificar correctamente las direcciones IP principales y secundarias correspondientes.
RHEL 8.5 y versiones inferiores
Abra una ventana del terminal.
Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:
sudo -iEscriba la contraseña y siga las instrucciones que aparezcan. Una vez que sea el usuario raíz, vaya a la carpeta de scripts de red con el comando siguiente:
cd /etc/sysconfig/network-scriptsMuestra una lista de los archivos de ifcfg relacionados con el siguiente comando:
ls ifcfg-*Debería ver ifcfg-eth0 como uno de los archivos.
Cree un nuevo archivo de configuración para cada dirección IP agregada al sistema.
touch ifcfg-eth0:0Abra el archivo ifcfg-eth0:0 con el siguiente comando:
vi ifcfg-eth0:0Agregue contenido al archivo eth0:0 en este caso, con el siguiente comando. Reemplace por
10.1.0.5la nueva dirección IP privada y la máscara de subred.DEVICE=eth0:0 BOOTPROTO=static ONBOOT=yes IPADDR=10.1.0.5 NETMASK=255.255.255.0Guarde el archivo mediante el comando siguiente:
:wqCree un archivo de configuración por dirección IP para agregar con sus valores correspondientes:
touch ifcfg-eth0:1vi ifcfg-eth0:1DEVICE=eth0:1 BOOTPROTO=static ONBOOT=yes IPADDR=10.1.0.6 NETMASK=255.255.255.0:wqReinicie los servicios de red y asegúrese de que los cambios sean correctos con los comandos siguientes:
systemctl restart NetworkManager.service ifconfigDebería ver la dirección o direcciones IP que ha agregado en la lista que se devuelve.
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.1.0.4 netmask 255.255.255.0 broadcast 10.1.0.255 inet6 fe80::6245:bdff:fe7d:704a prefixlen 64 scopeid 0x20<link> ether 60:45:bd:7d:70:4a txqueuelen 1000 (Ethernet) RX packets 858 bytes 244215 (238.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1021 bytes 262077 (255.9 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eth0:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.1.0.5 netmask 255.255.255.0 broadcast 10.1.0.255 ether 60:45:bd:7d:70:4a txqueuelen 1000 (Ethernet) eth0:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.1.0.6 netmask 255.255.255.0 broadcast 10.1.0.255 ether 60:45:bd:7d:70:4a txqueuelen 1000 (Ethernet)
Validación (Red Hat y otros)
Para asegurarse de que puede conectarse a internet desde su configuración de IP secundaria a través de la dirección IP pública asociada, use el siguiente comando:
ping -I 10.0.0.5 outlook.com
Note
Para las configuraciones de IP secundarias, solo se puede hacer ping a Internet si la configuración tiene una dirección IP pública asociada. Para configuraciones de IP principales, no se requiere una dirección IP pública para hacer ping a Internet.
Para máquinas virtuales Linux, al intentar validar la conectividad saliente de una NIC secundaria, debe agregar las rutas adecuadas. Consulte la documentación adecuada para la distribución de Linux. El método siguiente para lograr este objetivo:
echo 150 custom >> /etc/iproute2/rt_tables
ip rule add from 10.1.0.5 lookup custom
ip route add default via 10.1.0.1 dev eth2 table custom
Asegúrese de reemplazar:
10.0.0.5 con la dirección IP privada que tiene asociada una dirección IP pública
10.0.0.1 como su puerta de enlace predeterminada
eth2 con el nombre de la NIC secundaria
Debian GNU/Linux
Expandir
Se recomienda revisar la documentación más reciente de la distribución de Linux.
Abra una ventana del terminal.
Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:
sudo -iActualice el archivo de configuración de la interfaz de red (suponiendo "eth0").
Mantenga el elemento de línea existente para dhcp. La dirección IP principal permanece configurada que estaba.
Agregue una configuración para cada dirección IP estática mediante los siguientes comandos:
cd /etc/network/interfaces.d/ lsDebería ver un archivo .cfg.
Abra el archivo. Debería ver las siguientes líneas al final del archivo:
auto eth0 iface eth0 inet dhcpAgregue las líneas siguientes después de las que existen en el archivo. Reemplace
10.1.0.5por la dirección IP privada y la máscara de subred.iface eth0 inet static address 10.1.0.5 netmask 255.255.255.0Agregue la nueva información de direcciones IP en el archivo de configuración:
iface eth0 inet static address 10.1.0.5 netmask 255.255.255.0 iface eth0 inet static address 10.1.0.6 netmask 255.255.255.0Guarde el archivo mediante el comando siguiente:
:wqReinicie los servicios de red para que los cambios surtan efecto. Para Debian 8 y versiones posteriores, use:
systemctl restart networkingEn versiones anteriores de Debian, puede usar los siguientes comandos:
service networking restartCompruebe que la dirección IP se agregue a la interfaz de red con el comando siguiente:
ip addr list eth0Debería ver la dirección IP que agregó en la lista. Example:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0d:3a:04:45:16 brd ff:ff:ff:ff:ff:ff inet 10.1.0.5/24 brd 10.1.0.255 scope global eth0 valid_lft forever preferred_lft forever inet 10.1.0.6/24 brd 10.1.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet 10.1.0.4/24 brd 10.1.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet6 fe80::20d:3aff:fe04:4516/64 scope link valid_lft forever preferred_lft forever
Validación (Debian GNU/Linux)
Para asegurarse de que puede conectarse a internet desde su configuración de IP secundaria a través de la dirección IP pública asociada, use el siguiente comando:
ping -I 10.1.0.5 outlook.com
Note
Para las configuraciones de IP secundarias, solo se puede hacer ping a Internet si la configuración tiene una dirección IP pública asociada. Para configuraciones de IP principales, no se requiere una dirección IP pública para hacer ping a Internet.
Para máquinas virtuales Linux, al intentar validar la conectividad saliente de una NIC secundaria, debe agregar las rutas adecuadas. Consulte la documentación correspondiente a su distribución de Linux. El método siguiente para lograr este objetivo:
echo 150 custom >> /etc/iproute2/rt_tables
ip rule add from 10.1.0.5 lookup custom
ip route add default via 10.1.0.1 dev eth2 table custom
Asegúrese de reemplazar:
10.1.0.5 con la dirección IP privada que tiene asociada una dirección IP pública
10.1.0.1 a la puerta de enlace predeterminada
eth2 con el nombre de la NIC secundaria
Pasos siguientes
- Obtenga más información sobre las direcciones IP public en Azure.
- Obtenga más información sobre las direcciones IP private en Azure.
- Aprenda a Configure direcciones IP para una interfaz de red Azure.