Linux stöder implementeringen av en mjukvarunätverksbrygga för att återskapa funktionen hos en nätverksbrygga, en nätverksenhet som kopplar samman två eller flera kommunikationsnätverk eller nätverkssegment som ger dem ett sätt att fungera som ett enda nätverk. Den fungerar nästan som en nätverksswitch, och i en mjukvarumässig mening används den för att implementera konceptet en virtual network switch.

Ett typiskt användningsfall av mjukvarunätverksbryggning är i en virtualiseringsmiljö för att ansluta virtuella maskiner (VM) direkt till värdservernätverket. På så sätt distribueras de virtuella datorerna på samma subnät som värden och kan komma åt tjänster som t.ex DHCP och mycket mer.

I den här artikeln kommer du att lära dig olika sätt att sätta upp en nätverksbrygga i Ubuntu och använd den i en virtualiseringsmiljö för att skapa virtuella nätverk i ett överbryggat läge under VirtualBox och KVMför att ansluta virtuella maskiner till samma nätverk som värden.

Installera Network Bridge Utilities i Ubuntu

Börja med att installera bridge-utils som innehåller verktyg för att konfigurera Ubuntu Ethernet-bryggan med hjälp av apt package manager som visas.

$ apt-get install bridge-utils

Identifiera sedan gränssnittsnamnet för din Ethernet-enhet med hjälp av IP-kommandot som visas.

$ ip ad
OR
$ ip add
Kontrollera nätverksgränssnitt i Ubuntu

Skapa en nätverksbrygga med NetPlan i Ubuntu

Netplan är ett enkelt och lättanvänt front-end-verktyg för att konfigurera nätverk i Linux med hjälp av YAML. Det stöder för närvarande NetworkManager och systemd-netword som backend-verktyg.

För att konfigurera nätverk för ett gränssnitt som t.ex bridgeredigera din netplan konfigurationsfil som finns i /etc/netplan/.

Följande är ett exempel på en konfigurationsfil, där renderer är systemd-netword som är standard (ersätt enp1s0 ditt Ethernet-gränssnittsnamn).

network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:
      dhcp4: no
  bridges:
    br0:
      dhcp4: yes
      interfaces:
	     - enp1s0
Netplan konfigurationsfil
Netplan konfigurationsfil

Spara konfigurationsfilen och använd konfigurationen för att aktivera bryggnätverket genom att köra följande kommando.

$ sudo netplan apply

Använd sedan brctl för att visa alla bryggor i systemet. I det här fallet Ethernet läggs automatiskt till som en hamn på bryggan.

$ sudo brctl show
Visa nätverksbryggor
Visa nätverksbryggor

Om du vill ta bort eller avaktivera den skapade nätverksbryggan, radera den med följande kommandon.

$ sudo ip link set enp1s0 up
$ sudo ip link set br0 down
$ sudo brctl delbr br0
OR
$ sudo nmcli conn up Wired connection 1
$ sudo nmcli conn down br0
$ sudo nmcli conn del br0
$ sudo nmcli conn del bridge-br0

Skapa en nätverksbrygga med Nmcli i Ubuntu

nmcli är ett mycket använt kommandoradsverktyg för nätverkshanterare att administrera NetworkManager (skapa, visa, redigera, ta bort, aktivera och avaktivera nätverksanslutningar) och visa nätverksenhetsstatus.

För att skapa en nätverksbrygga med hjälp av nmclikör följande kommando.

$ sudo nmcli conn add type bridge con-name br0 ifname br0
Skapa en nätverksbrygga med nmcli-verktyget
Skapa en nätverksbrygga med nmcli-verktyget

Lägg sedan till Ethernet som port i bryggan enligt bilden (kom ihåg att byta ut enp1s0 ditt enhetsnamn).

$ sudo nmcli conn add type ethernet slave-type bridge con-name bridge-br0 ifname enp1s0 master br0
Lägg till en nätverksbrygga portar
Lägg till en nätverksbrygga portar

Bekräfta sedan att bridge har skapats genom att visa alla nätverksanslutningar.

$ sudo nmcli conn show --active
Verifiera Network Bridge
Verifiera Network Bridge

Aktivera sedan bridge anslutning enligt följande (du kan använda antingen anslutnings-/gränssnittsnamnet eller UUID).

$ sudo nmcli conn up br0
OR
$ sudo nmcli conn up e7385b2d-0e93-4a8e-b9a0-5793e5a1fda3
Aktivera Bridge Network Connection
Aktivera Bridge Network Connection

Avaktivera sedan Ethernet eller anslutning.

$ sudo nmcli conn down Ethernet connection 1
OR
$ sudo nmcli conn down 525284a9-60d9-4396-a1c1-a37914d43eff
Inaktivera Ethernet-anslutning
Inaktivera Ethernet-anslutning

Försök nu att se aktiva anslutningar en gång till, den Ethernet bör nu vara en slav i bridge anslutning som visas i följande skärmdump.

$ sudo nmcli conn show --active
Kontrollera Aktiva nätverksanslutningar
Kontrollera Aktiva nätverksanslutningar

Skapa en nätverksbrygga med nm-connection-editor Tool

För att öppna nm-connection-editorkör följande kommando från terminalen.

$ nm-connection-editor

Från network connections redigerarfönstret, klicka på + signera för att lägga till en ny anslutningsprofil.

Lägg till en ny nätverksanslutning
Lägg till en ny nätverksanslutning

Välj sedan anslutningstyp som Bridge från rullgardinsmenyn och klicka Create.

Välj nätverksanslutningstyp
Välj nätverksanslutningstyp

Ställ sedan in brygganslutningsnamnet och gränssnittsnamnet.

Ställ in Bridge Connection Name
Ställ in Bridge Connection Name

Klicka sedan på Add för att lägga till broslavportarna, dvs Ethernet som visas i följande skärmdump. Välj Ethernet som anslutningstyp och klicka Create.

Lägg till en nätverksbrygganslutning
Lägg till en nätverksbrygganslutning

Ställ sedan in anslutningsnamnet enligt dina önskemål och klicka Save.

Ange nytt namn på brygganslutning
Ange nytt namn på brygganslutning

Under bridged anslutningar ska den nya anslutningen nu visas.

Verifiera ny brygganslutning
Verifiera ny brygganslutning

Om du nu öppnar nätverksanslutningsredigeraren en gång till, bör det nya brygggränssnittet och slavgränssnittet finnas som indikeras i följande skärmdump.

Kontrollera nätverksbrygganslutning
Kontrollera nätverksbrygganslutning

Aktivera sedan brygggränssnittet och inaktivera Ethernet-gränssnittet med kommandot nmcli.

$ sudo nmcli conn up br0
$ sudo nmcli conn down Ethernet connection 1

Hur man använder en nätverksbrygga i ett virtualiseringsprogram

Efter att ha ställt in en network bridge (virtuell nätverksswitch), du kan använda den i en virtualiseringsmiljö som t.ex Oracle VirtualBox och KVM för att ansluta virtuella datorer till värdnätverket.

Använda en nätverksbrygga i Oracle VirtualBox

Öppna VirtualBoxsedan från listan över VMsVälj en VM, klicka sedan på dess inställningar. Från inställningsfönstret, gå till Network och välj en adapter (t.ex Adapter 1).

Kontrollera sedan alternativet Enable Network Adapterställ in värdet på det bifogade fältet till Bridged Adapterställ sedan in Name av det överbryggade gränssnittet (t.ex br0) enligt följande skärmdump. Klicka sedan på Ok.

Konfigurera VM för att använda Bridge Network i VirtualBox
Konfigurera VM för att använda Bridge Network i VirtualBox

Använda en nätverksbrygga i KVM

Du kan använda den nya nätverksbryggan under KVM genom att lägga till –network=bridge=br0 medan du skapar en ny virtuell maskin med hjälp av virt-install.

# virt-install --virt-type=kvm --name Ubuntu18.04 --ram 1536 --vcpus=4 --os-variant=ubuntu18.04 --cdrom=/path/to/install.iso --network=bridge=br0,model=virtio --graphics vnc --disk path=/var/lib/libvirt/images/ubuntu18.04.qcow2,size=20,bus=virtio,format=qcow2

Från webbkonsolen väljs den automatiskt. Dessutom kan du också konfigurera en nätverksbrygga med hjälp av virsh-line-verktyg och en virtuell dators XML-konfigurationsfil.

För mer information, läs netplan och nmcli man-sidor (genom att köra man netplan och man nmcli) samt virtuellt nätverk i libvirt och virtuellt nätverk i VirtualBox. Du kan skicka frågor till oss via kommentarsektionen nedan.