Freigeben über


Zuweisen von mehreren IP-Adressen zu virtuellen Computern mit Azure PowerShell

Ein virtueller Azure-Computer (VM) verfügt über mindestens eine angefügte Netzwerkschnittstelle (NIC). Jede NIC kann eine oder mehrere zugewiesene statische und dynamische öffentliche oder private IP-Adressen besitzen.

Durch das Zuweisen von mehreren IP-Adressen zu einem virtuellen Computer bestehen folgende Möglichkeiten:

  • Hosten mehrerer Websites oder Dienste mit unterschiedlichen IP-Adressen und TLS/SSL-Zertifikaten auf einem einzelnen Server

  • Übernehmen der Rolle als virtuelles Netzwerkgerät, z.B. als Firewall oder Load Balancer

  • Fähigkeit zum Hinzufügen einer privaten IP-Adresse für eine der NICs zu einem Azure Load Balancer-Back-End-Pool hinzufügen. Bisher konnte nur die primäre IP-Adresse für die primäre NIC einem Back-End-Pool hinzugefügt werden. Weitere Informationen dazu, wie in Konfigurationen mit mehreren IPs ein Lastenausgleich durchgeführt werden kann, finden Sie unter Lastenausgleich bei Konfigurationen mit mehreren IPs.

Jeder NIC, die an einen virtuellen Computer angefügt ist, ist mindestens eine IP-Konfiguration zugeordnet. Jeder Konfiguration wird eine statische oder dynamische private IP-Adresse zugewiesen. Jeder Konfiguration kann auch eine öffentliche IP-Adressressource zugeordnet sein. Weitere Informationen zu IP-Adressen in Azure finden Sie unter IP-Adressen in Azure.

Hinweis

Alle IP-Konfigurationen auf einer einzelnen NIC müssen demselben Subnetz zugeordnet sein. Wenn mehrere IP-Adressen in unterschiedlichen Subnetzen gewünscht werden, können mehrere NICs auf einer VM verwendet werden. Weitere Informationen zu mehreren NICs auf einer VM in Azure finden Sie unter Erstellen einer VM mit mehreren NICs.

Es gilt ein Grenzwert dafür, wie viele private IP-Adressen einer NIC zugewiesen werden können. Außerdem ist begrenzt, wie viele öffentliche IP-Adressen in einem Azure-Abonnement verwendet werden können. Weitere Informationen finden Sie im Artikel Einschränkungen für Azure-Abonnements und Dienste, Kontingente und Einschränkungen.

In diesem Artikel erfahren Sie, wie Sie einem virtuellen Computer mithilfe von PowerShell mehrere IP-Adressen zuweisen.

Voraussetzungen

  • Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.

  • PowerShell-Umgebung in Azure Cloud Shell oder lokale Installation von Azure PowerShell. Weitere Informationen zur Verwendung von PowerShell in Azure Cloud Shell finden Sie unter Azure Cloud Shell-Schnellstart.

    • Wenn Sie PowerShell lokal installieren und verwenden möchten, müssen Sie für diesen Artikel mindestens Version 5.4.1 des Azure PowerShell-Moduls verwenden. Führen Sie Get-InstalledModule -Name Az aus, um die installierte Version zu ermitteln. Wenn Sie ein Upgrade ausführen müssen, finden Sie unter Installieren des Azure PowerShell-Moduls Informationen dazu. Stellen Sie sicher, dass Ihr Az.Network-Modul 4.3.0 oder höher ist. Um das installierte Modul zu überprüfen, verwenden Sie den Befehl Get-InstalledModule -Name "Az.Network". Falls das Modul ein Update erfordert, verwenden Sie bei Bedarf den Befehl Update-Module -Name "Az.Network".
  • Melden Sie sich bei Azure PowerShell an, und stellen Sie sicher, dass Sie das Abonnement ausgewählt haben, mit dem Sie dieses Feature verwenden möchten. Weitere Informationen finden Sie unter Anmelden mit Azure PowerShell.

Hinweis

In den Schritten dieses Artikels werden zwar alle IP-Konfigurationen einer einzelnen NIC zugewiesen, es ist jedoch auch möglich, jeder NIC in einem virtuellen Computer mit mehreren NICs mehrere IP-Konfigurationen zuzuweisen. Im Artikel Erstellen und Verwalten eines virtuellen Windows-Computers mit mehreren Netzwerkkarten erfahren Sie, wie Sie einen virtuellen Computer mit mehreren NICs erstellen.

Diagramm von im Artikel zur Vorgehensweise erstellten Netzwerkkonfigurationsressourcen.

Abbildung: Diagramm der in diesem Artikel zur Vorgehensweise erstellten Netzwerkkonfigurationsressourcen

Erstellen einer Ressourcengruppe

Eine Azure-Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen bereitgestellt und verwaltet werden.

Erstellen Sie eine Ressourcengruppe mit New-AzResourceGroup namens myResourceGroup am Speicherort eastus2.

$rg =@{
    Name = 'myResourceGroup'
    Location = 'eastus2'
}
New-AzResourceGroup @rg

Erstellen eines virtuellen Netzwerks

In diesem Abschnitt erstellen Sie ein virtuelles Netzwerk für den virtuellen Computer.

Verwenden Sie New-AzVirtualNetwork und New-AzVirtualNetworkSubnetConfig, um ein virtuelles Netzwerk mit einem Subnetz zu erstellen.

## 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

Erstellen einer primären öffentlichen IP-Adresse

Verwenden Sie New-AzPublicIpAddress, um eine primäre öffentliche IP-Adresse zu erstellen.

$ip1 = @{
    Name = 'myPublicIP-1'
    ResourceGroupName = 'myResourceGroup'
    Location = 'eastus2'
    Sku = 'Standard'
    AllocationMethod = 'Static'
    IpAddressVersion = 'IPv4'
    Zone = 1,2,3
}
New-AzPublicIpAddress @ip1

Erstellen einer Netzwerksicherheitsgruppe

In diesem Abschnitt erstellen Sie eine Netzwerksicherheitsgruppe für den virtuellen Computer und das virtuelle Netzwerk. Sie erstellen eine Regel, die Verbindungen zum virtuellen Computer auf Port 22 für SSH zulässt.

Verwenden Sie New-AzNetworkSecurityGroup und New-AzNetworkSecurityRuleConfig, um die Netzwerksicherheitsgruppe und -regeln zu erstellen.

## 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

Erstellen einer Netzwerkschnittstelle

Verwenden Sie New-AzNetworkInterface und New-AzNetworkInterfaceIpConfig, um eine Netzwerkschnittstelle (NIC) für den virtuellen Computer zu erstellen. Die zuvor erstellte öffentliche IP-Adresse und Netzwerksicherheitsgruppe sind der Netzwerkschnittstelle zugeordnet. Die Netzwerkschnittstelle ist mit dem virtuellen Netzwerk verbunden, das Sie zuvor erstellt haben.

## 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

Hinweis

Wenn Sie eine statische IP-Adresse hinzufügen möchten, müssen Sie eine nicht verwendete, gültige Adresse im Subnetz angeben, mit dem die NIC verbunden ist.

Erstellen eines virtuellen Computers

Verwenden Sie die folgenden Befehle, um den virtuellen Computer zu erstellen:

$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

Hinzufügen sekundärer privater und öffentlicher IP-Adressen

Verwenden Sie New-AzPublicIpAddress, um eine sekundäre öffentliche IP-Adresse zu erstellen.

$ip2 = @{
    Name = 'myPublicIP-2'
    ResourceGroupName = 'myResourceGroup'
    Location = 'eastus2'
    Sku = 'Standard'
    AllocationMethod = 'Static'
    IpAddressVersion = 'IPv4'
    Zone = 1,2,3
}
New-AzPublicIpAddress @ip2

Verwenden Sie New-AzNetworkInterfaceIpConfig, um die sekundäre IP-Konfiguration für den virtuellen Computer zu erstellen.

## 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

Hinzufügen von IP-Adressen zu einem VM-Betriebssystem

Stellen Sie eine Verbindung mit einem virtuellen Computer her, den Sie mit mehreren privaten IP-Adresse erstellt haben, und melden Sie sich an. Alle dem virtuellen Computer hinzugefügten privaten IP-Adressen müssen manuell hinzugefügt werden. Das gilt auch für die primäre Adresse. Führen Sie für das Betriebssystem Ihres virtuellen Computers folgende Schritte aus:

Windows Server

Erweitern
  1. Öffnen Sie eine Eingabeaufforderung oder PowerShell.

  2. Geben Sie ipconfig /all in die Befehlszeile ein. Die primäre private IP-Adresse, die über DHCP zugewiesen wurde, wird angezeigt.

  3. Geben Sie ncpa.cpl in die Befehlszeile ein, um die Konfiguration für Netzwerkverbindungen zu öffnen.

  4. Öffnen Sie die Eigenschaften für den Netzwerkadapter, dem die neuen IP-Adressen zugewiesen wurden.

  5. Doppelklicken Sie auf Internetprotokoll Version 4 (TCP/IPv4).

  6. Wählen Sie Folgende IP-Adresse verwenden: aus. Geben Sie die folgenden Werte ein.

    Einstellung Wert
    IP-Adresse: Geben Sie die primäre private IP-Adresse ein.
    Subnetzmaske: Geben Sie eine Subnetzmaske basierend auf Ihrer IP-Adresse ein.
    Wenn das Subnetz beispielsweise ein /24-Subnetz ist, lautet die Subnetzmaske 255.255.255.0.
    Standardgateway: Die erste IP-Adresse im Subnetz.
    Wenn das Subnetz 10.0.0.1/24 ist, lautet die Gateway-IP-Adresse 10.0.0.0/24.
  7. Wählen Sie Folgende DNS-Serveradressen verwenden: aus. Geben Sie die folgenden Werte ein.

    Einstellung Wert
    Bevorzugter DNS-Server: Geben Sie Ihren primären DNS-Server ein.
    Geben Sie die IP-Adresse 168.63.129.16 ein, um das von Azure bereitgestellte Standard-DNS zu verwenden.
  8. Wählen Sie die Schaltfläche Advanced (Erweitert).

  9. Wählen Sie Hinzufügen.

  10. Geben Sie die private IP-Adresse ein, die Sie der Azure-Netzwerkschnittstelle hinzugefügt haben. Geben Sie die entsprechende Subnetzmaske ein. Wählen Sie Hinzufügen.

  11. Wiederholen Sie die vorherigen Schritte, um zusätzliche private IP-Adressen hinzuzufügen, die Sie der Azure-Netzwerkschnittstelle hinzugefügt haben.

Wichtig

Die öffentliche IP-Adresse sollte niemals manuell einem virtuellen Azure-Computer innerhalb des Betriebssystems des virtuellen Computers zugewiesen werden. Wenn Sie die IP-Adresse im Betriebssystem manuell festlegen, stellen Sie sicher, dass es sich um dieselbe Adresse wie die private IP-Adresse handelt, die der Azure-Netzwerkschnittstelle zugewiesen ist. Wird die Adresse nicht richtig zugewiesen, kann die Verbindung mit dem virtuellen Computer verloren gehen. Weitere Informationen finden Sie unter Ändern von IP-Adresseinstellungen.

Weitere Informationen zu privaten IP-Adressen finden Sie unter Private IP-Adressen.

  1. Wählen Sie OK aus, um die Einstellungen für die sekundäre IP-Adresse zu schließen.

  2. Wählen Sie OK aus, um die Adaptereinstellungen zu schließen. Die RDP-Verbindung wird wiederhergestellt.

  3. Öffnen Sie eine Eingabeaufforderung oder PowerShell.

  4. Geben Sie ipconfig /all in die Befehlszeile ein.

  5. Überprüfen Sie, ob die primären und sekundären privaten IP-Adressen der Konfiguration hinzugefügt wurden.

    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. Stellen Sie sicher, dass die primäre private IP-Adresse, die in Windows verwendet wird, identisch mit der primären IP-Adresse der Azure-VM-Netzwerkschnittstelle ist. Ausführliche Informationen finden Sie unter Kein Internetzugriff über einen virtuellen Azure Windows-Computer mit mehreren IP-Adressen.

Überprüfung (Windows Server)

Um mit Ihrer sekundären IP-Konfiguration über die öffentliche IP-Adresse die Verbindung mit dem Internet zu überprüfen, verwenden Sie den folgenden Befehl: Ersetzen Sie 10.1.0.5 durch die sekundäre private IP-Adresse, die Sie der Azure-VM-Netzwerkschnittstelle hinzugefügt haben.

ping -S 10.1.0.5 outlook.com

Hinweis

Bei sekundären IP-Konfigurationen können Sie das Internet pingen, wenn der Konfiguration eine öffentliche IP-Adresse zugeordnet ist. Bei primären IP-Konfigurationen ist keine öffentliche IP-Adresse zum Pingen des Internets erforderlich.

SUSE Linux Enterprise und openSUSE

Erweitern SUSE-basierte Distributionen verwenden das cloud-netconfig-Plug-In aus dem cloud-netconfig-azure-Paket, um zusätzliche IP-Adressen zu verwalten. Für den Administrator ist keine manuelle Konfiguration erforderlich. Die erste IP-Adresse einer auf der Plattform festgelegten Schnittstelle wird über DHCP zugewiesen. Das „cloud-netconfig“-Plug-In testet dann die Azure Instance Metadata Service-API kontinuierlich (einmal pro Minute) auf zusätzliche IP-Adressen, die der Schnittstelle zugewiesen sind, und fügt diese automatisch als sekundäre IP-Adressen hinzu bzw. entfernt sie als sekundäre IP-Adressen.

Dieses Plug-In sollte standardmäßig auf neuen Images installiert und aktiviert werden. Konfigurationsschritte für alte Workloads finden Sie hier: https://www.suse.com/c/multi-nic-cloud-netconfig-ec2-azure/.

Ubuntu 14/16

Erweitern

Es wird empfohlen, die aktuelle Dokumentation für Ihre Linux-Distribution zu nutzen.

  1. Öffnen Sie ein Terminalfenster.

  2. Stellen Sie sicher, dass Sie der root-Benutzer sind. Geben Sie andernfalls den folgenden Befehl ein:

    sudo -i
    
  3. Aktualisieren Sie die Konfigurationsdatei der Netzwerkschnittstelle (es wird „eth0“ vorausgesetzt).

    • Behalten Sie den vorhandenen Eintrag für DHCP bei. Die Konfiguration der primären IP-Adresse bleibt unverändert.

    • Fügen Sie mit den folgenden Befehlen eine Konfiguration für eine weitere statische IP-Adresse hinzu:

      cd /etc/network/interfaces.d/
      ls
      

      Es sollte eine CFG-Datei angezeigt werden.

  4. Öffnen Sie die Datei. Am Ende der Datei sollten die folgenden Zeilen angezeigt werden:

    auto eth0
    iface eth0 inet dhcp
    
  5. Fügen Sie hinter den in dieser Datei vorhandenen Zeilen die folgenden Zeilen hinzu. Ersetzen Sie 10.1.0.5 durch Ihre private IP-Adresse und Subnetzmaske.

    iface eth0 inet static
    address 10.1.0.5
    netmask 255.255.255.0
    

    Um zusätzliche private IP-Adressen hinzuzufügen, bearbeiten Sie die Datei, und fügen Sie die neuen privaten IP-Adressen in aufeinanderfolgenden Zeilen hinzu:

    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. Speichern Sie die Datei mit dem folgenden Befehl:

    :wq
    
  7. Setzen Sie die Netzwerkschnittstelle mit dem folgenden Befehl zurück:

    ifdown eth0 && ifup eth0
    

    Wichtig

    Führen Sie bei Verwendung einer Remoteverbindung „ifdown“ und „ifup“ in derselben Zeile aus.

  8. Geben Sie den folgenden Befehl ein, um zu überprüfen, ob die IP-Adresse der Netzwerkschnittstelle hinzugefügt wurde:

    ip addr list eth0
    

    Es sollte die IP-Adresse angezeigt werden, die Sie als Teil der Liste hinzugefügt haben. Beispiel:

    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
    

Überprüfung (Ubuntu 14/16)

Um sicherzustellen, dass Sie mit Ihrer sekundären IP-Konfiguration über die ihr zugeordnete öffentliche IP-Adresse eine Verbindung mit dem Internet herstellen können, verwenden Sie den folgenden Befehl:

ping -I 10.1.0.5 outlook.com

Hinweis

Bei sekundären IP-Konfigurationen können Sie das Internet nur pingen, wenn der Konfiguration eine öffentliche IP-Adresse zugeordnet ist. Bei primären IP-Konfigurationen ist keine öffentliche IP-Adresse zum Pingen des Internets erforderlich.

Wenn Sie ausgehende Verbindungen von einem sekundären NIC für virtuelle Linux-Computer überprüfen möchten, müssen Sie möglicherweise entsprechende Routen hinzufügen. Weitere Informationen für Ihre Linux-Distribution finden Sie in der entsprechenden Dokumentation. Nachfolgend finden Sie eine der möglichen Methoden:

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
  • Stellen Sie folgende Ersetzungen sicher:

    • 10.1.0.5 durch die private IP-Adresse, der eine öffentliche IP-Adresse zugeordnet ist.

    • 10.1.0.1 durch Ihr Standardgateway.

    • eth2 durch den Namen Ihrer sekundären NIC

Ubuntu 18.04+

Erweitern

Ubuntu 18.04 und höher wurden für die Betriebssystem-Netzwerkverwaltung in netplan geändert. Es wird empfohlen, die aktuelle Dokumentation für Ihre Linux-Distribution zu nutzen.

  1. Öffnen Sie ein Terminalfenster.

  2. Stellen Sie sicher, dass Sie der root-Benutzer sind. Geben Sie andernfalls den folgenden Befehl ein:

    sudo -i
    
  3. Erstellen Sie eine Datei für die zweite Schnittstelle, und öffnen Sie diese in einem Text-Editor:

    vi /etc/netplan/60-static.yaml
    
  4. Fügen Sie der Datei die folgenden Zeilen hinzu, und ersetzen Sie dabei 10.1.0.5/24 durch Ihre IP-Adresse und Subnetzmaske:

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

    Um zusätzliche private IP-Adressen hinzuzufügen, bearbeiten Sie die Datei, und fügen Sie die neuen privaten IP-Adressen in aufeinanderfolgenden Zeilen hinzu:

    network:
        version: 2
        ethernets:
            eth0:
                addresses:
                    - 10.1.0.5/24
                    - 10.1.0.6/24
    
  5. Speichern Sie die Datei mit dem folgenden Befehl:

    :wq
    
  6. Testen Sie die Änderungen mit netplan try, um die Syntax zu bestätigen:

    netplan try
    

    Hinweis

    netplan try wendet die Änderungen temporär an und macht sie nach 120 Sekunden wieder rückgängig. Wenn ein Verbindungsverlust vorliegt, warten Sie 120 Sekunden, und stellen Sie dann erneut eine Verbindung her. Zu diesem Zeitpunkt wurden etwaige Änderungen zurückgesetzt.

  7. Wenn keine Probleme mit netplan try auftreten, wenden Sie die Konfigurationsänderungen an:

    netplan apply
    
  8. Geben Sie den folgenden Befehl ein, um zu überprüfen, ob die IP-Adresse der Netzwerkschnittstelle hinzugefügt wurde:

    ip addr list eth0
    

    Es sollte die IP-Adresse angezeigt werden, die Sie als Teil der Liste hinzugefügt haben. Beispiel:

    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
    

Überprüfung (Ubuntu 18.04+)

Um sicherzustellen, dass Sie mit Ihrer sekundären IP-Konfiguration über die ihr zugeordnete öffentliche IP-Adresse eine Verbindung mit dem Internet herstellen können, verwenden Sie den folgenden Befehl:

ping -I 10.1.0.5 outlook.com

Hinweis

Bei sekundären IP-Konfigurationen können Sie das Internet nur pingen, wenn der Konfiguration eine öffentliche IP-Adresse zugeordnet ist. Bei primären IP-Konfigurationen ist keine öffentliche IP-Adresse zum Pingen des Internets erforderlich.

Wenn Sie ausgehende Verbindungen von einem sekundären NIC für virtuelle Linux-Computer überprüfen möchten, müssen Sie möglicherweise entsprechende Routen hinzufügen. Dazu gibt es zahlreiche Möglichkeiten. Weitere Informationen für Ihre Linux-Distribution finden Sie in der entsprechenden Dokumentation. Nachfolgend finden Sie eine der möglichen Methoden:

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
  • Stellen Sie sicher, dass Sie Folgendes ersetzen:

    • 10.1.0.5 durch die private IP-Adresse, der eine öffentliche IP-Adresse zugeordnet ist.

    • 10.1.0.1 durch Ihr Standardgateway.

    • eth2 durch den Namen Ihrer sekundären NIC

Red Hat Enterprise Linux und andere

Erweitern
  1. Öffnen Sie ein Terminalfenster.

  2. Stellen Sie sicher, dass Sie der root-Benutzer sind. Geben Sie andernfalls den folgenden Befehl ein:

    sudo -i
    
  3. Geben Sie Ihr Kennwort ein, und befolgen Sie die entsprechenden Anweisungen. Nachdem Sie der Root-Benutzer sind, wechseln Sie mit dem folgenden Befehl zum Ordner der Netzwerkskripts:

    cd /etc/sysconfig/network-scripts
    
  4. Listen Sie die zugehörigen ifcfg-Dateien mit dem folgenden Befehl auf:

    ls ifcfg-*
    

    Unter den Dateien sollte die Datei ifcfg-eth0 angezeigt werden.

  5. Erstellen Sie zum Hinzufügen einer IP-Adresse eine entsprechende Konfigurationsdatei, wie weiter unten gezeigt. Beachten Sie, dass für jede IP-Konfiguration eine Datei erstellt werden muss.

    touch ifcfg-eth0:0
    
  6. Öffnen Sie die Datei ifcfg-eth0:0 mithilfe des folgenden Befehls:

    vi ifcfg-eth0:0
    
  7. Fügen Sie der Datei mithilfe des folgenden Befehls Inhalt hinzu (in diesem Fall: Eth0:0). Ersetzen Sie 10.1.0.5 durch Ihre zusätzliche private IP-Adresse und Subnetzmaske.

    DEVICE=eth0:0
    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=10.1.0.5
    NETMASK=255.255.255.0
    
  8. Speichern Sie die Datei mit dem folgenden Befehl:

    :wq
    
  9. Wenn Sie der Netzwerkkonfiguration zusätzliche private IP-Adressen hinzufügen möchten, erstellen Sie zusätzliche Konfigurationsdateien, und fügen Sie die IP-Informationen in der Datei hinzu.

    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. Starten Sie die Netzwerkdienste neu, und stellen Sie sicher, dass die Änderungen übernommen wurden. Führen Sie dazu die folgenden Befehle aus:

    systemctl restart NetworkManager.service
    ifconfig
    

    In der zurückgegebenen Liste sollte(n) die von Ihnen hinzugefügte(n) IP-Adresse(n) angezeigt werden.

    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)
    

Validierung (Red Hat und andere)

Um sicherzustellen, dass Sie mit Ihrer sekundären IP-Konfiguration über die ihr zugeordnete öffentliche IP-Adresse eine Verbindung mit dem Internet herstellen können, verwenden Sie den folgenden Befehl:

ping -I 10.0.0.5 outlook.com

Hinweis

Bei sekundären IP-Konfigurationen können Sie das Internet nur pingen, wenn der Konfiguration eine öffentliche IP-Adresse zugeordnet ist. Bei primären IP-Konfigurationen ist keine öffentliche IP-Adresse zum Pingen des Internets erforderlich.

Wenn Sie ausgehende Verbindungen von einem sekundären NIC für virtuelle Linux-Computer überprüfen möchten, müssen Sie möglicherweise entsprechende Routen hinzufügen. Weitere Informationen für Ihre Linux-Distribution finden Sie in der entsprechenden Dokumentation. Nachfolgend finden Sie eine der möglichen Methoden:

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
  • Stellen Sie folgende Ersetzungen sicher:

    • 10.0.0.5 durch die private IP-Adresse, der eine öffentliche IP-Adresse zugeordnet ist

    • 10.0.0.1 durch Ihr Standardgateway

    • eth2 durch den Namen Ihrer sekundären NIC

Debian GNU/Linux

Erweitern

Es wird empfohlen, die aktuelle Dokumentation für Ihre Linux-Distribution zu nutzen.

  1. Öffnen Sie ein Terminalfenster.

  2. Stellen Sie sicher, dass Sie der root-Benutzer sind. Geben Sie andernfalls den folgenden Befehl ein:

    sudo -i
    
  3. Aktualisieren Sie die Konfigurationsdatei der Netzwerkschnittstelle (es wird „eth0“ vorausgesetzt).

    • Behalten Sie den vorhandenen Eintrag für DHCP bei. Die Konfiguration der primären IP-Adresse bleibt unverändert.

    • Fügen Sie mit den folgenden Befehlen eine Konfiguration für eine weitere statische IP-Adresse hinzu:

      cd /etc/network/interfaces.d/
      ls
      

      Es sollte eine CFG-Datei angezeigt werden.

  4. Öffnen Sie die Datei. Am Ende der Datei sollten die folgenden Zeilen angezeigt werden:

    auto eth0
    iface eth0 inet dhcp
    
  5. Fügen Sie hinter den in dieser Datei vorhandenen Zeilen die folgenden Zeilen hinzu. Ersetzen Sie 10.1.0.5 durch Ihre private IP-Adresse und Subnetzmaske.

    iface eth0 inet static
    address 10.1.0.5
    netmask 255.255.255.0
    

    Um zusätzliche private IP-Adressen hinzuzufügen, bearbeiten Sie die Datei, und fügen Sie die neuen privaten IP-Adressen in aufeinanderfolgenden Zeilen hinzu:

    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. Speichern Sie die Datei mit dem folgenden Befehl:

    :wq
    
  7. Starten Sie die Netzwerkdienste neu, damit die Änderungen wirksam werden. Für Debian 8 und höher kann dies mithilfe des folgenden Befehls erfolgen:

    systemctl restart networking
    

    Für frühere Versionen von Debian können Sie die folgenden Befehle verwenden:

    service networking restart
    
  8. Geben Sie den folgenden Befehl ein, um zu überprüfen, ob die IP-Adresse der Netzwerkschnittstelle hinzugefügt wurde:

    ip addr list eth0
    

    Es sollte die IP-Adresse angezeigt werden, die Sie als Teil der Liste hinzugefügt haben. Beispiel:

    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
    

Validierung (Debian GNU/Linux)

Um sicherzustellen, dass Sie mit Ihrer sekundären IP-Konfiguration über die ihr zugeordnete öffentliche IP-Adresse eine Verbindung mit dem Internet herstellen können, verwenden Sie den folgenden Befehl:

ping -I 10.1.0.5 outlook.com

Hinweis

Bei sekundären IP-Konfigurationen können Sie das Internet nur pingen, wenn der Konfiguration eine öffentliche IP-Adresse zugeordnet ist. Bei primären IP-Konfigurationen ist keine öffentliche IP-Adresse zum Pingen des Internets erforderlich.

Wenn Sie ausgehende Verbindungen von einem sekundären NIC für virtuelle Linux-Computer überprüfen möchten, müssen Sie möglicherweise entsprechende Routen hinzufügen. Weitere Informationen für Ihre Linux-Distribution finden Sie in der entsprechenden Dokumentation. Nachfolgend finden Sie eine der möglichen Methoden:

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
  • Stellen Sie folgende Ersetzungen sicher:

    • 10.1.0.5 durch die private IP-Adresse, der eine öffentliche IP-Adresse zugeordnet ist.

    • 10.1.0.1 durch Ihr Standardgateway.

    • eth2 durch den Namen Ihrer sekundären NIC

Nächste Schritte