Hantera Privata nätverk för dina KVM-servrar

Inledning

Genom att sätta upp ett privat nätverk mellan två servrar kan de kommunicera isolerat från det publika internet, vilket gör det säkrare att utbyta information mellan servrarna.

I sin första version kan man endast skapa ett isolerat nätverk mellan sina virtuella maskiner som befinner sig i samma datacenter.

Skapa ditt första privata nätverk


Logga in i GleSYS Cloud

Under Nätverk i vänstermenyn hittar du Privata nätverk. Klicka på Privata nätverk och skapa ett nytt genom att klicka på Skapa.

privata-natverk-1

I nästa steg namnger du nätverket.

privata-natverk-2

När det privata nätverket är skapat visas segmenten i nätverket. I ett nytt privat nätverk finns inga segment – detta måste du skapa själv. Ett segment är ett nätverketssegment för att dela upp sitt privata nätverk i mindre delar. Klicka på Skapa segment.

privata-natverk-3

I nästa steg anger du inställningarna för ditt segmentet. Under Plattform väljer du KVM och under Datacenter väljer du det datacenter där dina KVM-servrar är placerade.

Under IP-adresser anger du det nätverkssegmentet – nätet och nätmasken – som du vill använda.

I detta exemplet har vi valt 192.168.0.0/24. Detta ger oss 251 användbara adresser för servrar (256 adresser minus adresserna .0, .1, .2, .3 och .255). De tre första adresserna, .1, .2 och .3, reserveras för trafik mellan segmenten ifall man har flera segment i ett privat nätverk.

privata-natverk-4

Nu är nätverket klart och du ser en översiktsbild.

privata-natverk-5

Konfigurera servern för det privata nätverk


För att kunna koppla ihop dina servrar med det privata nätverket behöver du först skapa nätverksadaptra i KVM-servrarna som ska prata med varandra. Nätverksadaptern på respektive server kopplar du sedan till det privata nätverk och ger en IP-adress i samma nät som det vi angav i segmentet.

För att skapa en ny nätverksadapter i en KVM-server väljer du först servern under ComputeVirtuella maskiner. Sedan klickar du på den server som du vill skapa en nätverksadapter i.

Sedan väljer du fliken Nätverksadaptrar och klickar på Skapa nätverksadapter (den nätverksadapter som redan syns i listan är den för internet).

privata-natverk-6

I dialogrutan som öppnas väljer du ett namn för nätverksadaptern, hastigheten på nätverketsadaptern och i vilket segment som adaptern ska placeras. Hastigheten är nätverketsadpatern är 1 Gbit/s – 10 Gbit/s.

privata-natverk-7

När adaptern är skapad syns det i översikten över KVM-serverns alla adaptrar. Här visas nu standardadaptern för internet och den nya adaptern för ditt privata nätverk.

privata-natverk-8

Ge adaptern en IP-adress


Innan du kan börja använda det privata nätverket behöver du ge den nya nätverksadaptern i respektive server en IP-adress i det segmentet du angav när du skapade nätverket. Hur man gör detta skiljer sig åt mellan olika system.

Hur du ger adaptern en IP-adress i Ubuntu

Efter att du lagt till adaptern i KVM-servern måste du ta reda på namnet på adaptern i Ubuntu. Det gör du enklast genom att titta i dmesg. Skriv följande kommando:

$ sudo dmesg

Raden du letar efter är:

virtio_net virtio5 enp9s0: renamed from eth0

Detta betyder att den nya adaptern har fått namnet enp9s0 i systemet.

Skulle det av någon anledning inte gå att hitta adaptern i utdatan från dmesg går det också att lista alla adaptrar med ip addr. Den adapter som inte har någon IP-adress är med största sannolikhet den nya adaptern.

När du har namnet på adaptern kan du lägga till det i /etc/netplan/50-cloud-init.yaml. Du behöver anpassa filen efter vad du redan har i den.

I det här fallet behöver vi tar bort match för ens-adpatern, men behåller ens1 för DHCP. Därefter lägger vi till den nya privata adaptern och ger det en IP-adress. Här ger vi det adressen 192.168.0.6 med nätmasken /24 (255.255.255.0). Eftersom detta enbart är ett privat nätverk behöver vi inte ge adaptern någon gateway eller DNS. Filen bör därför se ut så här:

network:
    ethernets:
        ens1:
            dhcp4: true
        enp9s0:
            addresses: [192.168.0.6/24]
    version: 2

Spara filen och testar konfigurationen med sudo netplan try. Om du ser nedräkningstimern fungerar förmodligen filen och du kan trycker på retur-tangenten för att bekräfta.

$ sudo netplan try

Do you want to keep these settings?

Press ENTER before the timeout to accept the new configuration

Changes will revert in 117 seconds
Configuration accepted.

Kontrollera att adaptern har fått en IP-adress:

$ ip addr show dev enp9s0
3: enp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 12:06:33:70:96:02 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.6/24 brd 192.168.0.255 scope global enp9s0
       valid_lft forever preferred_lft forever
    inet6 fe80::1006:33ff:fe70:9602/64 scope link
       valid_lft forever preferred_lft forever

För att förhindra att inställningarna skrivs över av cloud-init måste du exekvera följande kommando:

$ sudo sh -c 'echo "network: {config: disabled}" > /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg'

Hur du ger adaptern en IP-adress i Debian

Du börjar med att titta i dmesg efter den nya adaptern med kommandot:

$ sudo dmesg

Raden du letar efter ser ut såhär:

84.251404] virtio_net virtio4 ens2: renamed from eth0

Detta betyder att den nya adaptern har fått namnet ens2 i systemet.

Skulle det av någon anledning inte gå att hitta adaptern i utdatan från dmesg går det också att lista alla adaptrar med ip addr. Den adapter som inte har någon IP-adress är med största sannolikhet den nya adaptern.

När du vet adapterns namn kan du lägga till den i filen /etc/network/interfaces.d/50-cloud-init och ge den en IP-adress. Befintliga rader i filen kan du låta vara.

Här ger vi adaptern IP-adressen 192.168.0.7 med nätmasken /24 (255.255.255.0). Hela filen kommer då se ut ungefär så här, beroende på vad för innehåll som redan fanns i den:

auto lo
iface lo inet loopback

auto ens1
iface ens1 inet dhcp

# control-alias ens1
iface ens1 inet6 dhcp

# Nya privata adaptern
auto ens2
iface ens2 inet static
        address 192.168.0.7/24

Starta om nätverket så att ändringarna slår igenom med kommandot:

$ sudo systemctl restart networking

Med detta kommando kontrollerar du att det fungerade:

$ ip addr show dev ens2
3: ens2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 12:08:0b:9b:f7:02 brd ff:ff:ff:ff:ff:ff
    altname enp1s2
    inet 192.168.0.7/24 brd 192.168.0.255 scope global ens2
       valid_lft forever preferred_lft forever
    inet6 fe80::1008:bff:fe9b:f702/64 scope link    
       valid_lft forever preferred_lft forever 

Nu behöver du stänga av automatisk nätverkskonfiguration via cloud-init så att det inte skriver över dina inställningar. Det gör du med kommandot:

$ sudo sh -c 'echo "network: {config: disabled}" > /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg'

Hur du ger adaptern en IP-adress i Alma Linux

Du börjar med att leta upp den nya adapterns namn med antingen dmesg eller ip addr.

$ sudo dmesg

Raden du letar efter ser ut såhär:

eth1: link becomes ready

Namnet på den nya adaptern är då eth1. Om det av någon anledning inte går att hitta adaptern i utdatan från dmesg kan du istället exekvera ip addr. Den adaptern som saknar IP-adress är mest troligen den nya adaptern för det privata nätverket.

När du har namnet på adaptern kan du lägga till en IP-adress till den. Det gör du enklast med kommandot nmcli. Du kan börja med att bekräfta att adaptern finns med i listan med nmcli connection.

$ nmcli connection
Wired connection 2  34d00714-76fb-387f-b861-44381cddd4c1  ethernet  eth1
Wired connection 1  bb4e1efd-f5d1-37c0-b0cb-8f5e36b51dc4  ethernet  eth0
lo                  36c76c31-7077-492f-8d4d-1b98e5b861d9  loopback  lo
System ens1         d18b6429-133f-4947-3b25-4482c7f9d5e7  ethernet  --

Adaptern eth1 är med största sannolikhet gulmarkerad för att den saknar en adress. Nu ger du adaptern adressen 192.168.0.8 med nätmasken /24 (255.255.255.0).

Här använder vi oss av det långa namnet från listan, Wired connection 2, som hör till eth1. Vi sätter också adaptern i manuellt (statiskt) läge.

$ sudo nmcli connection modify "Wired connection 2" ipv4.address "192.168.0.8/24"
$ sudo nmcli connection modify "Wired connection 2" ipv4.method manual

Nu aktiverar du adaptern med de nya inställningarna:

$ sudo nmcli connection up "Wired connection 2"

Slutligen kontrollerar du att adaptern har fått rätt IP-adress:

$ ip addr show dev eth2
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 12:9b:ec:f3:83:02 brd ff:ff:ff:ff:ff:ff
    altname enp1s2
    altname ens2
    inet 192.168.0.8/24 brd 192.168.0.255 scope global noprefixroute eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::58aa:dbd0:1a4b:b26d/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

Hur du ger adaptern en IP-adress i Windows Server

Du börjar med att högerklicka på nätverksikonen i aktivitetsfältet. Därefter väljer du Open Network & Internet settings.

privata-nat-windows1

I dialogrutan som öppnas väljer du Change adapter options.

privata-nat-windows2

Nu visas en lista över serverns alla nätverksadaptrar. Den med högst nummer är mest troligen den nya apdatern. I det här fallet är det Ethernet 2. Högerklicka på den och välj Properties.

privata-nat-windows3

I nästa dialogruta markerar du Internet Procotol Version 4 (TCP/IPv4) och klickar sedan på Properties.

privata-nat-windows4

Nu anger du en IP-adress för adaptern.

Här väljer vi IP-adressen 192.168.0.9 med nätmasken /24 (255.255.255.0).

När du är klara klickar på OK för att spara inställningarna.

privata-nat-windows5

Testa anslutningen mellan servrarna

När servrarna fått en IP-adress ska du kunna pinga mellan dem.

$ ping -c 3 192.168.0.6
PING 192.168.0.6 (192.168.0.6) 56(84) bytes of data.
64 bytes from 192.168.0.6: icmp_seq=1 ttl=64 time=0.183 ms
64 bytes from 192.168.0.6: icmp_seq=2 ttl=64 time=0.206 ms
64 bytes from 192.168.0.6: icmp_seq=3 ttl=64 time=0.158 ms

--- 192.168.0.6 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2086ms
rtt min/avg/max/mdev = 0.158/0.182/0.206/0.019 ms

Hittar du inte det du söker?

Kontakta oss gärna för mer information. Vi hjälper dig att komma fram till den bästa lösningen för dina behov.

Skicka e-post Ring 0200-23 88 00