Netplan și cum să-l pregătiți corect

Ubuntu este un sistem de operare uimitor, nu am mai lucrat cu serverul Ubuntu de mult timp și nu avea niciun rost să îmi actualizez Desktop-ul de la versiunea stabilă. Și nu cu mult timp în urmă am avut de-a face cu cea mai recentă lansare a serverului Ubuntu 18.04, surpriza mea nu a cunoscut limite când mi-am dat seama că eram infinit în urmă cu vremurile și nu puteam configura o rețea, deoarece sistemul vechi și bun pentru configurarea interfețelor de rețea de către editarea fișierului /etc/network /interfaces a dispărut. Și ce a venit să-l înlocuiască? ceva groaznic și la prima vedere complet de neînțeles, întâlniți „Netplan”.

Sincer să fiu, la început nu am putut înțelege care este problema și „de ce este nevoie de asta, pentru că totul era atât de convenabil”, dar după puțină practică mi-am dat seama că are propriul farmec. Și așa, destule versuri, hai să continuăm cu ce este Netplan, acesta este un nou utilitar pentru setările de rețea în Ubuntu, cel puțin „Nu am văzut așa ceva în alte distribuții.” O diferență semnificativă între Netplan este că configurația este scrisă în limbaj YAML, da, ați auzit bine YAML, dezvoltatorii au decis să țină pasul cu vremurile (și oricât de mult l-ar lăuda, tot cred că este un limbaj teribil). Principalul dezavantaj al acestui limbaj este că este foarte sensibil la spații, să ne uităm la configurație folosind un exemplu.

Fișierele de configurare sunt situate de-a lungul căii /etc/netplan/filename.yaml, între fiecare bloc ar trebui să fie + 2 spații.

1) Antetul standard arată astfel:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4:no

Să ne uităm la ce am făcut acum:

  • reţea: - acesta este începutul blocului de configurare.
  • renderer: networked - aici indicăm managerul de rețea pe care îl vom folosi, acesta este fie în rețea, fie NetworkManager
  • versiunea: 2 - aici, după cum am înțeles, este versiunea YAML.
  • ethernets: - acest bloc indică faptul că vom configura protocolul ethernet.
  • enps0f0: — indicați ce adaptor de rețea vom configura.
  • dhcp4:no - dezactivați DHCP v4, respectiv pentru 6 v6 dhcp6

2) Să încercăm să atribuim adrese IP:

    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

Aici setăm poppy, ipv4, gateway-ul și serverul dns. Rețineți că dacă avem nevoie de mai multe adrese IP, atunci le scriem separate prin virgule cu un spațiu obligatoriu după.

3) Dacă avem nevoie lipirea?

  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1

  • legături: - un bloc care explică faptul că vom configura legătura.
  • bond0: - nume de interfață arbitrar.
  • interfețe: - un set de interfețe colectate într-un bond-ding, „după cum am menționat mai devreme, dacă există mai mulți parametri, îi descriem între paranteze drepte.”
  • parametri: — descrieți blocul de setări a parametrilor
  • mod: — specificați modul în care va funcționa lipirea.
  • mii-monitor-interval: — setați intervalul de monitorizare la 1 secundă.

În interiorul blocului numit bond, puteți configura și parametri precum adrese, gateway4, rute etc.

Am adăugat redundanță pentru rețeaua noastră, acum nu mai rămâne decât să instalați wham iar configurarea poate fi considerată completă.

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: — declara blocul de configurare vlan.
  • vlan10: — numele arbitrar al interfeței vlan.
  • id: — eticheta vlan-ului nostru.
  • link: — interfață prin care vlan-ul va fi accesibil.
  • rute: — declara un bloc de descriere a rutei.
  • — la: — setați adresa/subrețeaua către care este necesară ruta.
  • prin: — specificați gateway-ul prin care subrețeaua noastră va fi accesibilă.
  • on-link: — indicăm că rutele ar trebui să fie întotdeauna înregistrate atunci când legătura este deschisă.

Acordați atenție modului în care plasez spațiile; acest lucru este foarte important în YAML.

Așa că am descris interfețele de rețea, am creat legături și chiar am adăugat vlan-uri. Să aplicăm configurația noastră, comanda netplan apply va verifica configurația noastră pentru erori și o va aplica dacă reușește. În continuare, configurația va fi lansată singură când sistemul este repornit.

După ce am colectat toate blocurile anterioare de cod, iată ce am obținut:

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]
    

Acum rețeaua noastră este gata de funcționare, totul s-a dovedit a nu fi atât de înfricoșător pe cât părea la început și codul s-a dovedit a fi foarte frumos și ușor de citit. PC mulțumesc pentru netplan există un manual excelent la link https://netplan.io/.

Sursa: www.habr.com

Adauga un comentariu