Compartir vía


Asignación de varias direcciones IP a máquinas virtuales mediante Azure PowerShell

Una máquina virtual (VM) de Azure tiene una o varias interfaces de red (NIC) asociadas 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 cualquier dirección IP privada para cualquiera de las NIC a un grupo de servidores 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, vea Direcciones IP en Azure.

Nota:

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 obtener más información sobre cómo usar varias NIC en una máquina virtual en Azure, vea Creación de máquinas virtuales con varias NIC.

Existe un límite para el número de direcciones IP privadas que pueden asignarse a una NIC. También existe un límite para el número de direcciones IP públicas que pueden usarse en una suscripción de Azure. Para más información, consulte el artículo sobre los límites de Azure.

En este artículo se explica cómo agregar varias direcciones IP a una máquina virtual con PowerShell.

Requisitos previos

  • 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 obtener más información sobre el uso de PowerShell en Azure Cloud Shell, consulta Inicio rápido de Azure Cloud Shell.

    • Si decide instalar y usar PowerShell de forma local, para realizar los pasos de este artículo necesita la versión 5.4.1 del módulo de Azure PowerShell o cualquier versión posterior. Ejecute Get-InstalledModule -Name Az para buscar la versión instalada. Si necesita actualizarla, consulte Instalación del módulo de Azure PowerShell. 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 comando Get-InstalledModule -Name "Az.Network". Si el módulo requiere una actualización, use el comando Update-Module -Name "Az.Network" si es necesario.
  • Inicie sesión en Azure PowerShell y asegúrese de que ha seleccionado la suscripción con la que quiere usar esta característica. Para obtener más información, consulte Inicio de sesión con Azure PowerShell.

Nota:

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.

Diagrama de los recursos de configuración de red creados en el artículo Procedimientos.

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 de Azure es un contenedor lógico en el que se implementan y se administran los recursos de Azure.

Cree un grupo de recursos con New-AzResourceGroup con el nombre 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

Para crear una dirección IP pública principal, use New-AzPublicIpAddress.

$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 la interfaz de red 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

Nota:

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

Para crear una dirección IP pública secundaria, use New-AzPublicIpAddress.

$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 de dirección IP secundaria para 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
  1. Abra un símbolo del sistema o PowerShell.

  2. En la línea de comandos, escriba ipconfig /all. Verá la dirección IP privada Principal que se asignó mediante DHCP.

  3. Escriba ncpa.cpl en la línea de comandos para abrir la configuración Conexiones de red.

  4. Abra Propiedades del adaptador de red asignado a las nuevas direcciones IP.

  5. Haga doble clic en Protocolo de Internet versión 4 (TCP/IPv4).

  6. Seleccione Usar la siguiente dirección IP: Escriba los siguientes valores:

    Configuración Valor
    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.
  7. Seleccione Usar las siguientes direcciones de servidor DNS: Escriba los siguientes valores:

    Configuración Valor
    Servidor DNS preferido: Escriba el servidor DNS principal.
    Escriba la dirección IP de 168.63.129.16 para usar el DNS predeterminado proporcionado por Azure.
  8. Seleccione el botón Advanced (Opciones avanzadas).

  9. Seleccione Agregar.

  10. Escriba la dirección IP privada que agregó a la interfaz de red de Azure. Escriba la máscara de subred correspondiente. Seleccione Agregar.

  11. Repita los pasos anteriores para agregar cualquier dirección IP privada adicional que haya agregado a la interfaz de red de Azure.

Importante

No asigne manualmente la dirección IP pública asignada a una máquina virtual de Azure en el sistema operativo de la máquina virtual. Al establecer manualmente la dirección IP privada en el sistema operativo, asegúrese de que sea la misma que la 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 más información, consulte Cambio de configuración de las direcciones IP.

Para más información sobre las direcciones IP privadas, consulte Direcciones IP privadas.

  1. Seleccione Aceptar para cerrar la configuración de la dirección IP secundaria.

  2. Seleccione Aceptar para cerrar la configuración del adaptador. Se restablecerá la conexión RDP.

  3. Abra un símbolo del sistema o PowerShell.

  4. En la línea de comandos, escriba ipconfig /all.

  5. Compruebe que se han agregado las direcciones IP privadas principales y secundarias a 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. . . . . . . . : Enabled
    
  6. Asegúrese de que la dirección IP privada principal usada en Windows es la misma que la de la interfaz de red de máquina virtual de Azure. Para más información, consulte Sin acceso a Internet desde una máquina virtual Windows de Azure que tiene varias 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

Nota

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 el complemento de cloud-netconfig del paquete cloud-netconfig-azure para administrar direcciones IP adicionales. No se requiere ninguna configuración 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. Después, el complemento cloud-netconfig sondea continuamente la API de Azure Instance Metadata Service (una vez por minuto) para las direcciones IP adicionales 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.

  1. Abra una ventana del terminal.

  2. Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:

    sudo -i
    
  3. Actualice el archivo de configuración de la interfaz de red (suponiendo que sea "eth0").

    • Mantenga el elemento de línea existente para dhcp. La dirección IP principal permanece configurada que estaba.

    • Agregue una configuración para una dirección IP estática adicional con los siguientes comandos:

      cd /etc/network/interfaces.d/
      ls
      

      Debería ver un archivo .cfg.

  4. Abra el archivo. Debería ver las siguientes líneas al final del archivo:

    auto eth0
    iface eth0 inet dhcp
    
  5. Agregue las líneas siguientes después de las que existen en el archivo. Reemplace 10.1.0.5 por la dirección IP privada y la máscara de subred.

    iface eth0 inet static
    address 10.1.0.5
    netmask 255.255.255.0
    

    Para agregar direcciones IP privadas adicionales, edite el archivo y agregue las nuevas direcciones IP privadas en las líneas siguientes:

    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.0
    
  6. Guarde el archivo mediante el comando siguiente:

    :wq
    
  7. Restablezca la interfaz de red con el comando siguiente:

    ifdown eth0 && ifup eth0
    

    Importante

    Si usa una conexión remota, ejecute ifdown e ifup en la misma línea.

  8. Compruebe que la dirección IP se agregue a la interfaz de red con el comando siguiente:

    ip addr list eth0
    

    Debería ver la dirección IP que agregó en la lista. Ejemplo:

    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

Nota:

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 siguiente es un método para lograr esto:

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 una dirección IP pública asociada

    • 10.1.0.1 con su puerta de enlace predeterminada

    • eth2 con el nombre de la NIC secundaria

Ubuntu 18.04 y versiones posteriores

Expandir

Ubuntu 18.04 y versiones posteriores han cambiado a netplan para la administración de red del sistema operativo. Se recomienda revisar la documentación más reciente de la distribución de Linux.

  1. Abra una ventana del terminal.

  2. Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:

    sudo -i
    
  3. Cree un archivo para la segunda interfaz y ábralo en un editor de texto:

    vi /etc/netplan/60-static.yaml
    
  4. Agregue las líneas siguientes al archivo, reemplazando 10.1.0.5/24 por la dirección IP y máscara de subred:

    network:
        version: 2
        ethernets:
            eth0:
                addresses:
                    - 10.1.0.5/24
    

    Para agregar direcciones IP privadas adicionales, 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/24
    
  5. Guarde el archivo mediante el comando siguiente:

    :wq
    
  6. Pruebe los cambios mediante netplan try para confirmar la sintaxis:

    netplan try
    

    Nota:

    netplan try aplicará los cambios de forma temporal y los revertirá después de 120 segundos. Si se produce una pérdida de conectividad, espere 120 segundos y vuelva a conectarse. En ese momento, los cambios se habrán revertido.

  7. Si no hay ningún problema con netplan try, aplique los cambios de configuración:

    netplan apply
    
  8. Compruebe que la dirección IP se agregue a la interfaz de red con el comando siguiente:

    ip addr list eth0
    

    Debería ver la dirección IP que agregó en la lista. Ejemplo:

    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

Nota:

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. Existen distintas formas de hacerlo. Consulte la documentación correspondiente a su distribución de Linux. El siguiente es un método para lograr esto:

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 una dirección IP pública asociada

    • 10.1.0.1 con su puerta de enlace predeterminada

    • eth2 con el nombre de la NIC secundaria

Red Hat Enterprise Linux y otros

Expandir
  1. Abra una ventana del terminal.

  2. Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:

    sudo -i
    
  3. Escriba 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-scripts
    
  4. Muestra una lista de los archivos de ifcfg relacionados con el siguiente comando:

    ls ifcfg-*
    

    Debería ver ifcfg-eth0 como uno de los archivos.

  5. Para agregar una dirección IP, cree un archivo de configuración, tal y como se muestra a continuación. Tenga en cuenta que debe crearse un archivo para cada configuración de IP.

    touch ifcfg-eth0:0
    
  6. Abra el archivo ifcfg-eth0:0 con el comando siguiente:

    vi ifcfg-eth0:0
    
  7. Agregue contenido al archivo, eth0:0 en este caso, con el siguiente comando. Reemplace 10.1.0.5 por la dirección IP privada y la máscara de subred adicionales.

    DEVICE=eth0:0
    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=10.1.0.5
    NETMASK=255.255.255.0
    
  8. Guarde el archivo mediante el comando siguiente:

    :wq
    
  9. Para agregar direcciones IP privadas adicionales a la configuración de red, cree archivos de configuración adicionales y agregue la información de IP al archivo.

    touch ifcfg-eth0:1
    
    vi ifcfg-eth0:1
    
    DEVICE=eth0:1
    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=10.1.0.6
    NETMASK=255.255.255.0
    
    :wq
    
  10. Reinicie los servicios de red y asegúrese de que los cambios sean correctos con los comandos siguientes:

    systemctl restart NetworkManager.service
    ifconfig
    

    Debería ver la dirección o direcciones IP que agregó 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

Nota:

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 siguiente es un método para lograr esto:

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 una dirección IP pública asociada

    • 10.0.0.1 con 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.

  1. Abra una ventana del terminal.

  2. Asegúrese de ser el usuario raíz. Si no lo es, escriba el siguiente comando:

    sudo -i
    
  3. Actualice el archivo de configuración de la interfaz de red (suponiendo que sea "eth0").

    • Mantenga el elemento de línea existente para dhcp. La dirección IP principal permanece configurada que estaba.

    • Agregue una configuración para una dirección IP estática adicional con los siguientes comandos:

      cd /etc/network/interfaces.d/
      ls
      

      Debería ver un archivo .cfg.

  4. Abra el archivo. Debería ver las siguientes líneas al final del archivo:

    auto eth0
    iface eth0 inet dhcp
    
  5. Agregue las líneas siguientes después de las que existen en el archivo. Reemplace 10.1.0.5 por la dirección IP privada y la máscara de subred.

    iface eth0 inet static
    address 10.1.0.5
    netmask 255.255.255.0
    

    Para agregar direcciones IP privadas adicionales, edite el archivo y agregue las nuevas direcciones IP privadas en las líneas siguientes:

    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.0
    
  6. Guarde el archivo mediante el comando siguiente:

    :wq
    
  7. Reinicie los servicios de red para que los cambios surtan efecto. En Debian 8 y versiones posteriores, esta acción se puede hacer mediante el comando siguiente:

    systemctl restart networking
    

    En versiones anteriores de Debian, puede usar los siguientes comandos:

    service networking restart
    
  8. Compruebe que la dirección IP se agregue a la interfaz de red con el comando siguiente:

    ip addr list eth0
    

    Debería ver la dirección IP que agregó en la lista. Ejemplo:

    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

Nota:

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 siguiente es un método para lograr esto:

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 una dirección IP pública asociada

    • 10.1.0.1 con su puerta de enlace predeterminada

    • eth2 con el nombre de la NIC secundaria

Pasos siguientes