Skip to content

Netwerken configureren in Linux met Netplan

15 de augustus de 2021
network 3424070 1920 5bd1f0a046e0fb00587ad978

Toen Ubuntu Server 18.04 arriveerde, heeft het enkele belangrijke wijzigingen aangebracht in de manier waarop beheerders met het platform werken. Een belangrijke verandering – een die menig old-school gebruiker zou kunnen doen struikelen – is hoe netwerken is geconfigureerd. Voorbij is de oude methode om netwerken te configureren in /etc/netwerk/interfaces. Zeg hallo tegen Netplan om netwerken in de nieuwste versie te configureren.

Wat is Netplan?

Netplan is een hulpprogramma voor het configureren van netwerken op een Linux-systeem, dat YAML-beschrijvingen gebruikt voor elke netwerkinterface op een server of desktop.

Hoe werkt Netplan?

Netplan leest de YAML-beschrijvingsbestanden die worden gevonden in /etc/netplan. Tijdens de vroege opstartfasen van het besturingssysteem zal Netplan vervolgens (van de door de gebruiker gemaakte YAML-bestanden) de benodigde configuratiebestanden genereren in de /run directory, zodat de controle over elk netwerkapparaat wordt overgedragen aan een bepaalde netwerkdaemon. Met andere woorden, u maakt een YAML-beschrijvingsbestand voor een netwerkinterface dat Netplan kan lezen en gebruiken om die specifieke interface te laten werken.

Is het ingewikkeld?

Geen paniek. Hoewel de netwerkconfiguratie op een Netplan-enabled server enorm verschilt van wat het was in eerdere iteraties, is het niet zo uitdagend. Het is echter specifiek. Laten we eens kijken hoe u netwerken kunt configureren, via Netplan, op een Ubuntu Server 18.04-installatie. Zoals je zou verwachten, wordt het configureren van netwerken op een Linux-server meestal gedaan via de opdrachtregel, dus bereid je voor om een ​​beetje te typen.

Een statisch IP-adres configureren met Netplan

Aangezien we het hebben over een serverinstallatie, willen we de server configureren voor een statisch IP-adres. Er is één ding dat u moet weten over het Netplan YAML-bestand. U moet zich houden aan de juiste code-inspringing voor elke regel van het blok. Dat betekent niet dat u specifieke regels naar een specifiek punt moet laten inspringen. Wat het betekent is dat als je de eerste regel van een blok drie spaties laat inspringen, je de rest van het blok drie spaties moet laten inspringen. Als u zich hier niet aan houdt, zal Netplan een foutmelding geven. Dat gezegd hebbende, laten we configureren.

  1. Voordat u wijzigingen aanbrengt, moet u de naam van de netwerkinterface weten. Geef hiervoor het commando: ip a

    U zou de naam van de netwerkinterface moeten zien (zoals ens5 of ens3). Met die interfacenaam in de hand ben je klaar om te configureren.

  2. Out of the box vind je waarschijnlijk een enkel YAML-bestand in /etc/netplan. Dat bestand krijgt de naam 01-netcfg.yaml of 50-cloud-init.yaml. U wilt het bestand 01-netcfg.yaml bewerken. Als het niet bestaat, maak het dan aan met de opdracht: sudo touch 01-netcfg.yaml

    Als het bestand bestaat, bewerk het dan met de opdracht: sudo nano 01-netcfg.yaml

  3. Uw standaardbestand kan er als volgt uitzien: netwerk:
    versie 2
    renderer: netwerk
    ethernetten:
    ens5:
    dhcp4: waar

    De bovenstaande configuratie is ingesteld voor DHCP. Omdat dit een server is, wil je gebruik maken van een statisch IP-adres, zodat het nooit verandert. U moet alles onder de ens5-regel bewerken. Het eerste dat u moet doen, is dhcp4 instellen op false, zoals: dhcp4: false

    Een Netplan YAML-bestand om een ​​statisch IP-adres te configureren

  4. Voeg vervolgens vermeldingen toe voor adressen, gateway en DNS-naamservers. Stel de server bijvoorbeeld in op IP-adres 192.168.1.206, met een gateway van 192.168.1.254 en DNS-servers van 8.8.4.4 en 8.8.8.8. Die vermeldingen worden toegevoegd onder de dhcp4-invoer en zien er als volgt uit: adressen: [192.168.1.206/24]
    gateway4: 192.168.1.254
    naamservers:
    adressen: [8.8.4.4,8.8.8.8]

  5. Onthoud dat u consistent moet zijn met uw inspringing, anders zal Netplan een fout maken bij het lezen van het bestand. Houd er ook rekening mee dat u het netmasker niet op dezelfde manier instelt als via het interfacebestand. In plaats van dat een adres en netmasker als volgt worden ingesteld: adres = 192.168.1.206
    netmasker = 255.255.255.0

    Beide configuraties worden afgehandeld met de enkele regel: adressen: [192.168.1.206/24]

  6. Bewaar en sluit dat bestand met de toetsenbordcombinatie van Ctrl+x.

  7. Nadat u dat bestand hebt opgeslagen, moet u Netplan op de hoogte stellen van de wijzigingen. Om Netplan de configuratiebestanden te laten herlezen en toepassen, geeft u de opdracht: sudo netplan apply

    Debuggen van de uitvoer van de netplan-opdracht

  8. U zou helemaal geen fouten of uitvoer moeten zien. Als je fouten ziet, voeg dan de debug-optie toe, die je output geeft terwijl Netplan het configuratiebestand als volgt probeert toe te passen: sudo netplan –debug apply

    Het gebruik van de optie –debug zou u voldoende informatie moeten geven om u te helpen bij het oplossen van problemen met uw YAML-bestand. Als u geen uitvoer ontvangt, geeft u de opdracht: ip a

    De uitvoer van de bovenstaande opdracht moet de wijzigingen weerspiegelen die u zojuist hebt aangebracht. Je server heeft nu dankzij Netplan een statisch IP-adres.