Netplan kaj kiel prepari ĝin ĝuste

Ubuntu estas mirinda mastruma sistemo, mi ne laboris kun Ubuntu-servilo dum longa tempo kaj tute ne servis ĝisdatigi mian Labortablo de la stabila versio. Kaj antaŭ nelonge mi devis trakti la plej novan eldonon de Ubuntu-servilo 18.04, mia surprizo ne konis limojn kiam mi konstatis, ke mi estas senfine malantaŭ la tempoj kaj ne povas agordi reton ĉar la bona malnova sistemo por agordi retajn interfacojn per redaktado de la /etc/network-dosiero /interfaces malflugis. Kaj kio anstataŭis ĝin? io terura kaj unuavide tute nekomprenebla, renkontu "Netplan".

Verdire, unue mi ne povis kompreni kio estas la afero kaj “kial tio ĉi estas bezonata, ĉar ĉio estis tiel oportuna”, sed post iom da ekzercado mi konstatis, ke ĝi havas sian propran ĉarmon. Kaj do sufiĉe da la kantoteksto, ni daŭrigu kun kio estas Netplan, ĉi tio estas nova ilo por retaj agordoj en Ubuntu, almenaŭ "Mi ne vidis ion tian en aliaj distribuoj." Grava diferenco inter Netplan estas, ke la agordo estas skribita en la lingvo. YAML, jes, vi aŭdis ĝuste YAML, la programistoj decidis daŭrigi kun la tempoj (kaj kiom ajn ili laŭdas ĝin, mi ankoraŭ pensas, ke ĝi estas terura lingvo). La ĉefa malavantaĝo de ĉi tiu lingvo estas ke ĝi estas tre sentema al spacoj, ni rigardu la agordon uzante ekzemplon.

La agordaj dosieroj troviĝas laŭ la vojo /etc/netplan/filename.yaml, inter ĉiu bloko devus esti + 2 spacoj.

1) La norma kaplinio aspektas jene:

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

Ni rigardu, kion ni nun faris:

  • reto: - ĉi tio estas la komenco de la agorda bloko.
  • bildilo: networkd - ĉi tie ni indikas la retan administranton, kiun ni uzos, ĉi tio estas aŭ interreta aŭ NetworkManager
  • versio: 2 - jen, kiel mi komprenas, la versio YAML.
  • ethernets: - ĉi tiu bloko indikas, ke ni agordos la ethernet-protokolon.
  • enps0f0: — indiku kiun retan adaptilon ni agordos.
  • dhcp4:ne - malŝaltu DHCP v4, por 6 v6 dhcp6 respektive

2) Ni provu atribui IP-adresojn:

    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

Ĉi tie ni starigas la papavon, ipv4, enirejon kaj dns-servilon. Notu, ke se ni bezonas pli ol unu IP-adreson, tiam ni skribas ilin apartigitaj per komoj kun deviga spaco poste.

3) Kio se ni bezonas ligo?

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

  • obligacioj: - bloko klariganta ke ni agordos ligadon.
  • bond0: - arbitra nomo de interfaco.
  • interfacoj: - aro de interfacoj kolektitaj en interligo, "kiel dirite antaŭe, se estas pluraj parametroj, ni priskribas ilin en kvadrataj krampoj."
  • parametroj: — priskribu la blokon de agordoj de parametroj
  • reĝimo: — specifu la reĝimon, per kiu ligado funkcios.
  • mii-monitor-interval: — agordu la monitoran intervalon al 1 sekundo.

Ene de la bloko nomita ligo, vi ankaŭ povas agordi parametrojn kiel adresojn, enirejon4, itinerojn, ktp.

Ni aldonis redundon por nia reto, nun restas nur instali wham kaj la aranĝo povas esti konsiderata kompleta.

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: — deklari la vlan-agordan blokon.
  • vlan10: — arbitra nomo de la vlan-interfaco.
  • id: — etikedo de nia vlan.
  • ligilo: — interfaco per kiu la vlan estos alirebla.
  • itineroj: — deklari itineran priskribblokon.
  • — al: — agordi la adreson/subreton al kiu la itinero estas bezonata.
  • per: — specifu la enirejon per kiu nia subreto estos alirebla.
  • on-link: — ni indikas, ke itineroj estu ĉiam registritaj kiam la ligilo estas levita.

Atentu kiel mi metas spacojn; ĉi tio estas tre grava en YAML.

Do ni priskribis la retajn interfacojn, kreis ligojn kaj eĉ aldonis vlanojn. Ni apliku nian agordon, la netplan apply komando kontrolos nian agordon por eraroj kaj aplikas ĝin se sukcesa. Poste, la agordo estos levita memstare kiam la sistemo estas rekomencita.

Kolektinte ĉiujn antaŭajn blokojn de kodo, jen kion ni ricevis:

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]
    

Nun nia reto estas preta por funkcii, ĉio montriĝis ne tiel timiga kiel ĝi ŝajnis komence kaj la kodo montriĝis tre bela kaj legebla. Komputilo dankon pro netplan estas bonega manlibro ĉe la ligilo https://netplan.io/.

fonto: www.habr.com

Aldoni komenton