Нетплан и како га правилно припремити

Ubuntu Одличан оперативни систем, нисам дуго радио са њим Ubuntu сервер, а ажурирање моје радне површине са стабилне верзије није имало смисла. И тако, не тако давно, морао сам да се позабавим потпуно новим издањем. Ubuntu На серверу 18.04, био сам апсолутно запањен када сам схватио да сам далеко иза времена и да не могу да конфигуришем своју мрежу јер је добри стари систем конфигурисања мрежних интерфејса уређивањем датотеке /etc/network/interfaces нестао. А шта га је заменило? Нешто застрашујуће и, на први поглед, потпуно несхватљиво - упознајте „Netplan“.

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

Конфигурационе датотеке се налазе дуж путање /етц/нетплан/филенаме.иамл, између сваког блока треба да буде + 2 размака.

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

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

Погледајмо шта смо сада урадили:

  • мрежа: - ово је почетак конфигурационог блока.
  • рендерер: нетворкд - овде указујемо на менаџер мреже који ћемо користити, ово је или умрежени или НетворкМанагер
  • верзија: 2 - овде је, колико сам разумео, ИАМЛ верзија.
  • етхернетс: - овај блок означава да ћемо конфигурисати етернет протокол.
  • енпс0ф0: — назначите који мрежни адаптер ћемо конфигурисати.
  • дхцп4:не - онемогући ДХЦП в4, за 6 в6 дхцп6 респективно

2) Покушајмо да доделимо ИП адресе:

    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

Овде постављамо мак, ипв4, гатеваи и днс сервер. Имајте на уму да ако нам треба више од једне ИП адресе, онда их пишемо одвојене зарезима са обавезним размаком после.

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

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

  • бондс: - блок који објашњава да ћемо конфигурисати повезивање.
  • бонд0: - произвољно име интерфејса.
  • интерфејси: - скуп интерфејса прикупљених у бонд-дингу, „као што је раније речено, ако постоји неколико параметара, описујемо их у угластим заградама.“
  • параметри: — описати блок подешавања параметара
  • режим: — одредите начин на који ће повезивање радити.
  • мии-монитор-интервал: — подесите интервал надгледања на 1 секунду.

Унутар блока који се зове веза, такође можете да конфигуришете параметре као што су адресе, гатеваи4, руте, итд.

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

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

  • вланс: — прогласити блок конфигурације влан-а.
  • влан10: — произвољно име влан интерфејса.
  • ид: — ознака нашег влана.
  • линк: — интерфејс преко кога ће влан бити доступан.
  • руте: — декларисати блок описа руте.
  • — за: — подесите адресу/подмрежу до које је потребна рута.
  • виа: — одредите гејтвеј преко кога ће наша подмрежа бити доступна.
  • он-линк: — указујемо да руте увек треба да буду регистроване када се линк подигне.

Обратите пажњу на то како постављам размаке; ово је веома важно у ИАМЛ-у.

Тако смо описали мрежне интерфејсе, направили повезивање, па чак и додали влан-ове. Хајде да применимо нашу конфигурацију, команда нетплан аппли ће проверити нашу конфигурацију да ли има грешака и примениће је ако успе. Следеће, конфигурација ће бити подигнута сама када се систем поново покрене.

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

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]
    

Сада је наша мрежа спремна за рад, испоставило се да све није тако страшно као што се у почетку чинило и код се показао веома лепим и читљивим. ПЦ хвала на нетплану, на линку је одличан приручник https://netplan.io/.

Извор: ввв.хабр.цом

Купите поуздан хостинг за сајтове са ДДоС заштитом, ВПС ВДС сервере 🔥 Купите поуздан веб хостинг са DDoS заштитом, VPS VDS сервере | ProHoster