Het Instellen van de DNS-zoekvolgorde in Ubuntu 18.04 met NetPlan

0
38

Voorafgaand aan Ubuntu-18.04, DNS-nameservers traditioneel zou worden geconfigureerd met de /etc/resolv.conf configuratie bestand. Voor een lange tijd, dit bestand mag een snelle en gemakkelijke configuratie van de DNS-nameservers, zoals gezien kan worden in een voorbeeld resolv.conf bestand hieronder.

nameserver 1.1.1.1
nameserver 1.0.0.1

Vanaf Ubuntu-18.04, netwerk instellingen, met inbegrip van nameservers, wordt nu beheerd door het NetPlan interface. Zelfs nog vóór de 18.04, je was nog steeds toegestaan om wijzigingen aan de oorspronkelijke resolv.conf, maar het bestand was eigenlijk beheerd door NetworkManager en zijn configuratie bestanden, meestal gelegen in het /etc/network/interfaces directory.

Dus, wat was de aanleiding voor deze wijziging van het gebruik van de nieuwe NetPlan interface? Eenvoud en flexibiliteit. Met behulp van een door de mens leesbare YAML-bestand maakt het configureren van complexe netwerken configuraties veel gemakkelijker om te doen. Daarnaast foutopsporing is sneller en fouten zijn eenvoudiger te traceren.

Het wijzigen van NameServers in NetPlan

Met deze wijziging in de interfaces, hoe doen we eigenlijk een update van de nameservers voor een Ubuntu-18.04 systeem? In plaats van het gebruik van /etc/resolv.conf, navigeer naar /etc/netplan, en je kan het vinden van een serie *.yaml er bestanden in. Als er nog geen gedefinieerd, moet u een in de aanbevolen notatie van naamgeving van, ##-naam.yaml, zoals 01-netconfig.yaml. NetPlan zal het laden van deze bestanden in de volgende map volgorde van prioriteit en vervolgens door het voorgaande getal bestelling.

  • /run/netplan/*.yaml
  • /etc/netplan/*.yaml
  • /lib/netplan/*.yaml

Zoek de Bestaande IP-Configuratie

Voor het wijzigen van het NetPlan van de netwerk configuratie, is het verstandig om te weten wat de bestaande interface configuratie is. NetPlan van zichzelf niet controleren van de actieve status, in plaats daarvan gebruiken we de ip-opdracht weer te geven.

gebruiker> ip-een

De uitvoer ziet er ongeveer als onderstaand screenshot, maar houd in gedachten dat elk netwerk interface kan verschillen afhankelijk van het systeem.

Binnen deze configuratie vindt u uw actieve interfaces. In dit geval zijn we op zoek naar de eth0 configuratie voor de doeleinden van deze tutorial.

Het bijwerken van de Configuratie

Kies een bestaand YAML-bestand te bewerken of een nieuwe te maken en voeg de volgende configuratie, aangepast zoals nodig is voor uw configuratie.

Deze configuratie wordt ervan uitgegaan dat u gebruik maakt van een statisch IP-en eth0 is de primaire interface zoals die zijn geleerd uit de bovenstaande ip-een opdracht.

netwerk:
versie: 2
ethernets:
eth0:
adressen:
– 10.10.10.2/24
gateway4: 10.10.10.1
nameservers:
adressen:
– 1.1.1.1
– 1.0.0.1
– 2606:4700:4700::1111
– 2606:4700:4700::1001
zoeken: []

De nameservers die in gebruik zijn, hier zijn de openbare Cloudflare nameservers, maar gebruik er een die het beste werkt voor u. Inbegrepen zijn de IPv6-resolvers ook.

Als u DHCP wilt gebruiken, u kunt de plaats van het statische IP-configuratie met dhcp4: ja onder de eth0 sectie.

Bovendien, als u DHCP gebruikt, moet u een override voor de nameservers.

dhcp4-overrides:
gebruik dns: false

U zult merken dat de adressen zijn vermeld in een lijst onder-adressen, maar het is mogelijk om ook het definiëren van deze adressen in een array configuratie ook.

adressen: [1.1.1.1, 1.0.0.1, “2606:4700:4700::1111”, “2606:4700:4700::1001”]

Renderers

In sommige configuraties, zie je misschien een renderer configuratie vermeld. Er zijn twee types beschikbaar: NetworkManager en networkd. Standaard networkd wordt gebruikt. Het verschil is dat NetworkManager is de GUI-manager gebruikt wordt door Ubuntu, terwijl networkd wordt gebruikt door Systemd. Het is onnodig om te definieer dit als de standaard configuratie moet werken in de meeste gevallen.

Het testen van de NameServer Wijziging

Na de configuratie-bestand heeft gemaakt, voert u de volgende opdracht om tijdelijk het proberen van de nieuwe instellingen en herstellen als er een fout in de configuratie.

sudo netplan proberen

Als er een storing, wordt de configuratie automatisch terugkeren na 120 seconden. U kunt het openen van een tweede schil om uit te testen configuraties terwijl deze is toe te passen. Als de instellingen werken zoals verwacht, u kunt op enter te houden van die instellingen of terugkeren als ze dat niet doen. Zo kunt u de configuraties wijzigen totdat het werkt.

Het toepassen van de Verandering

Eindelijk, na ervoor te zorgen dat de wijzigingen correct zijn, zijn de wijzigingen moeten worden toegepast. Om dit te doen, voer je het netplan van toepassing commando.

sudo netplan van toepassing

Als de interface is gewoon in te schakelen nameservers, een reboot is over het algemeen niet nodig. Als grotere configuratie veranderingen gemaakt zijn, dan is een reboot van het systeem kan het nodig zijn om het effect van de wijzigingen.

Het brengen van Interfaces Omhoog en Omlaag

Eerder, ifconfig gebruikt om een interface neer. Zoals eerder al, het ip-opdracht nemen de plaats in van ifconfig. In het voorbeeld hieronder, eth0 is gebracht omlaag en vervolgens weer omhoog.

ip link set eth0 down
ip link set eth0 up

Als eth0 is de enige interface, wees voorzichtig niet om de interface uit te schakelen, zonder dat een manier om verbinding te maken met het systeem op afstand.

Foutopsporing NetPlan

Wat gebeurt er wanneer een configuratie fout gaat? Er zijn een paar manieren om te verkennen het NetPlan configuratie en erachter te komen waar een storing zou hebben plaatsgevonden. Een manier om te bepalen of de juiste configuratie-actief toegepast is om te controleren of de configuratie-bestanden die zijn gegenereerd in /run/systemd/netwerk. Voor voorbeeld, kunt u navigeren naar die map en zoek een bijpassend *.netwerk configuratie bestand, en vervolgens controleren of de configuratie overeenkomt met wat u verwacht.

Een extra opdracht die goed werkt om te controleren of de gegenereerde config juist is, is om de volgende te gebruiken:

sudo netplan –debug genereren

Houd in gedachten dat de volgende screenshot kan verschillen, afhankelijk van uw configuratie.

Conclusie

NetPlan is een grote verandering in de bestaande Ubuntu netwerken, maar het is de bedoeling te vereenvoudigen en meer flexibele configuraties. Met behulp van een combinatie van bestaande commando ‘s en de nieuw NetPlan één’ s kunnen wij snel maken en toepassen van complexe netwerken configuraties.

Met de introductie van een YAML-gebaseerde configuratie en bijgewerkt vaardigheden door middel van het ip-opdracht, is het makkelijker dan ooit te maken met complexe configuraties om zelfs de meest unieke situaties.