Netplan и како правилно да го подготвите

Ubuntu е неверојатен оперативен систем, не сум работел со Ubuntu сервер долго време и немаше смисла да ја надградам мојата работна површина од стабилна верзија. И не така одамна морав да се занимавам со најновото издание на Ubuntu серверот 18.04, моето изненадување немаше граници кога сфатив дека сум бескрајно зад времето и не можам да поставам мрежа бидејќи стариот добар систем за поставување мрежни интерфејси од уредувањето на /etc/мрежната датотека /интерфејси помина низ цедило. И што дојде да го замени? нешто страшно и на прв поглед сосема неразбирливо, запознајте го „Нетплан“.

Да бидам искрен, на почетокот не можев да разберам што е работата и „зошто е потребно ова, бидејќи сè беше толку погодно“, но по малку вежбање сфатив дека тоа има свој шарм. И толку многу од текстовите ајде да продолжиме со тоа што е Netplan, ова е нова алатка за мрежните поставки во Ubuntu, барем „Не сум видел вакво нешто во други дистрибуции.“ Значајна разлика помеѓу Netplan е тоа што конфигурацијата е напишана на јазикот ЈАМЛ, да, добро слушнавте YAML, програмерите решија да бидат во чекор со времето (и колку и да го фалат, сепак мислам дека е ужасен јазик). Главниот недостаток на овој јазик е тоа што е многу чувствителен на празни места, ајде да ја погледнеме конфигурацијата користејќи пример.

Конфигурациските датотеки се наоѓаат по патеката /etc/netplan/filename.yaml, помеѓу секој блок треба да има + 2 празни места.

1) Стандардното заглавие изгледа вака:

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

Ајде да погледнеме што направивме сега:

  • мрежа: - ова е почеток на конфигурацискиот блок.
  • renderer: networkd - тука го означуваме мрежниот менаџер што ќе го користиме, ова е или мрежно или NetworkManager
  • верзија: 2 - тука, како што јас разбирам, е верзијата YAML.
  • етернет: - овој блок покажува дека ќе го конфигурираме етернет протоколот.
  • enps0f0: — наведете кој мрежен адаптер ќе го конфигурираме.
  • dhcp4:не - оневозможи DHCP v4, за 6 v6 dhcp6 соодветно

2) Ајде да се обидеме да доделиме 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

Овде ги поставивме серверот poppy, ipv4, gateway и dns. Забележете дека ако ни требаат повеќе од една IP адреса, тогаш ги пишуваме одделени со запирки со задолжително празно место потоа.

3) Што ако ни треба поврзување?

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

  • обврзници: - блок кој објаснува дека ќе го конфигурираме поврзувањето.
  • bond0: - произволно име на интерфејс.
  • интерфејси: - збир на интерфејси собрани во врска, „како што е наведено претходно, ако има неколку параметри, ги опишуваме во квадратни загради“.
  • параметри: — опишете го блокот за поставки за параметри
  • режим: — наведете го режимот со кој ќе функционира лепењето.
  • mii-monitor-interval: — поставете го интервалот за следење на 1 секунда.

Внатре во блокот со име обврзница, можете исто така да конфигурирате параметри како што се адреси, gateway4, маршрути итн.

Додадовме вишок за нашата мрежа, сега останува само да се инсталира влан и поставувањето може да се смета за завршено.

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: — декларирајте го конфигурацискиот блок vlan.
  • vlan10: — произволно име на интерфејсот vlan.
  • id: — ознака на нашиот влан.
  • врска: — интерфејс преку кој ќе биде достапен vlan.
  • рути: — прогласете блок за опис на маршрутата.
  • — до: — поставете ја адресата/подмрежата до која е потребна рутата.
  • преку: — наведете ја портата преку која ќе биде достапна нашата подмрежа.
  • on-link: — укажуваме дека маршрутите секогаш треба да се регистрираат кога врската е подигната.

Обрнете внимание на тоа како поставувам простори; ова е многу важно во YAML.

Така, ги опишавме мрежните интерфејси, создадовме поврзување, па дури и додадовме vlans. Ајде да ја примениме нашата конфигурација, командата netplan apply ќе ја провери нашата конфигурација за грешки и ќе ја примени ако е успешна. Следно, конфигурацијата ќе се подигне сама кога ќе се рестартира системот.

Откако ги собравме сите претходни блокови на код, ова е она што го добивме:

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]
    

Сега нашата мрежа е подготвена за работа, сè се покажа дека не е толку страшно како што изгледаше на почетокот и кодот се покажа многу убав и читлив. Компјутер благодарам за netplan има одличен прирачник на врската https://netplan.io/.

Извор: www.habr.com

Додадете коментар