Ubuntu er et fantastisk operativsystem, jeg har ikke arbejdet med Ubuntu server i lang tid, og det var ingen mening i at opgradere mit skrivebord fra den stabile version. Og for ikke længe siden skulle jeg forholde mig til den seneste udgivelse af Ubuntu server 18.04, min overraskelse kendte ingen grænser, da jeg indså, at jeg var uendeligt bagud og ikke kunne sætte et netværk op, fordi det gode gamle system til opsætning af netværksgrænseflader af redigering af /etc/network-filen /interfaces er gået i vasken. Og hvad kom til at erstatte det? noget frygteligt og ved første øjekast helt uforståeligt, mød “Netplan”.
Konfigurationsfilerne er placeret langs stien /etc/netplan/filename.yaml, mellem hver blok skal der være +2 mellemrum.
1) Standardoverskriften ser sådan ud:
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4:no
Lad os se på, hvad vi har gjort nu:
- netværk: - dette er starten på konfigurationsblokken.
- renderer: networkd - her angiver vi den netværksadministrator vi vil bruge, dette er enten networkd eller NetworkManager
- version: 2 - her er, som jeg forstår det, YAML-versionen.
- ethernets: - denne blok angiver, at vi vil konfigurere ethernet-protokollen.
- enps0f0: — angiv hvilken netværksadapter vi vil konfigurere.
- dhcp4:nej - deaktiver DHCP v4, for henholdsvis 6 v6 dhcp6
2) Lad os prøve at tildele IP-adresser:
enp3s0f0:
dhcp4:no
macaddress: bb:11:13:ab:ff:32
addresses: [10.10.10.2/24, 10.10.10.3/24]
gateway4: 10.10.10.1
nameservers:
addresses: 8.8.8.8
Her indstiller vi poppy, ipv4, gateway og dns server. Bemærk, at hvis vi har brug for mere end én IP-adresse, så skriver vi dem adskilt af kommaer med et obligatorisk mellemrum efter.
3) Hvad hvis vi har brug for
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
- bindinger: - en blok, der forklarer, at vi vil konfigurere binding.
- bond0: - vilkårligt grænsefladenavn.
- grænseflader: - et sæt grænseflader samlet i en binding, "som tidligere nævnt, hvis der er flere parametre, beskriver vi dem i firkantede parenteser."
- parametre: — beskriv parameterindstillingsblokken
- tilstand: — angiv den tilstand, som bonding vil fungere med.
- mii-monitor-interval: — Indstil overvågningsintervallet til 1 sekund.
Inde i blokken med navnet bond kan du også konfigurere parametre som adresser, gateway4, ruter osv.
Vi har tilføjet redundans til vores netværk, nu er der kun tilbage at installere
vlans:
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
gateway: 10.10.10.1
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
- vlans: — erklær vlan-konfigurationsblokken.
- vlan10: — vilkårligt navn på vlan-grænsefladen.
- id: — tag på vores vlan.
- link: — grænseflade, hvorigennem vlan'et vil være tilgængeligt.
- ruter: — angiv en rutebeskrivelsesblok.
- — for at: — indstille den adresse/undernet, som ruten skal bruges til.
- via: — angiv den gateway, hvorigennem vores subnet vil være tilgængeligt.
- on-link: — vi angiver, at ruter altid skal registreres, når linket er hævet.
Vær opmærksom på, hvordan jeg placerer rum; dette er meget vigtigt i YAML.
Så vi beskrev netværksgrænsefladerne, skabte binding og tilføjede endda vlans. Lad os anvende vores config, kommandoen netplan application vil tjekke vores config for fejl og anvende den, hvis den lykkes. Dernæst vil config'en blive rejst af sig selv, når systemet genstartes.
Efter at have samlet alle de tidligere kodeblokke, er dette, hvad vi fik:
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4: no
ensp3s0f1:
dhcp4: no
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
vlan20:
id: 20
link: bond0
dhcp4: no
addresses: [10.10.11.2/24]
gateway: 10.10.11.1
nameserver:
addresses: [8.8.8.8]
Nu er vores netværk klar til drift, alt viste sig ikke at være så skræmmende, som det så ud til i første omgang, og koden viste sig at være meget smuk og læsbar. PC tak for netplan der er en udmærket manual på linket
Kilde: www.habr.com