Netplan va uni qanday qilib to'g'ri tayyorlash

Ubuntu ajoyib operatsion tizim, men u bilan uzoq vaqt ishlamadim Ubuntu server va ish stolimni barqaror versiyadan yangilashning ma'nosi yo'q edi. Shunday qilib, yaqinda men yangi versiya bilan shug'ullanishim kerak edi. Ubuntu 18.04 serverida, men zamondan ancha orqada qolganimni va tarmoq interfeyslarini /etc/network/interfaces faylini tahrirlash orqali sozlashning eski yaxshi tizimi yo'q bo'lib ketganligi sababli tarmog'imni sozlay olmasligimni anglaganimda juda hayratda qoldim. Va uning o'rnini nima egalladi? Qo'rqinchli va bir qarashda mutlaqo tushunarsiz narsa - "Netplan" bilan tanishing.

Rostini aytsam, avvaliga men kelishuv nima ekanligini va "nima uchun bu kerak edi, axir hamma narsa juda qulay edi" degan savolni tushuna olmadim, lekin ozgina mashq qilgandan so'ng, uning o'ziga xos jozibasi borligini angladim. Xo'sh, lirik suhbatlar yetarli, keling, Netplan nima ekanligi haqida davom etaylik. Bu tarmoqni sozlash uchun yangi yordamchi dastur... Ubuntu, hech bo'lmaganda "Men boshqa distributivlarda bunga o'xshash narsaga duch kelmaganman." Netplan bilan sezilarli farq shundaki, konfiguratsiya tilda yozilgan YAML, ha, siz to'g'ri YAMLni eshitdingiz, ishlab chiquvchilar zamon bilan hamqadam bo'lishga qaror qilishdi (va ular qanchalik maqtashmasin, men hali ham bu dahshatli til deb o'ylayman). Ushbu tilning asosiy kamchiligi shundaki, u bo'shliqlarga juda sezgir, keling, misol yordamida konfiguratsiyani ko'rib chiqamiz.

Konfiguratsiya fayllari /etc/netplan/filename.yaml yo'li bo'ylab joylashgan, har bir blok o'rtasida + 2 bo'sh joy bo'lishi kerak.

1) Standart sarlavha quyidagicha ko'rinadi:

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

Keling, nima qilganimizni ko'rib chiqaylik:

  • tarmoq: - bu konfiguratsiya blokining boshlanishi.
  • renderer: networkd - bu erda biz foydalanadigan tarmoq menejerini ko'rsatamiz, bu tarmoq yoki NetworkManager
  • versiya: 2 - bu erda, men tushunganimdek, YAML versiyasi.
  • ethernets: - bu blok chekilgan protokolini sozlashimizni bildiradi.
  • enps0f0: — qaysi tarmoq adapterini sozlashimizni ko'rsating.
  • dhcp4:yo'q - mos ravishda 4 v6 dhcp6 uchun DHCP v6 o'chiring

2) IP manzillarni belgilashga harakat qilaylik:

    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

Bu erda biz poppy, ipv4, shlyuz va dns serverini o'rnatamiz. E'tibor bering, agar bizga bir nechta IP-manzil kerak bo'lsa, biz ularni vergul bilan ajratib, keyin majburiy bo'sh joy bilan yozamiz.

3) Agar bizga kerak bo'lsa nima bo'ladi? bog'lanish?

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

  • obligatsiyalar: - bog'lanishni sozlashimizni tushuntiruvchi blok.
  • bond0: - ixtiyoriy interfeys nomi.
  • interfeyslar: - bog'lanishda yig'ilgan interfeyslar to'plami, "yuqorida aytib o'tilganidek, agar bir nechta parametrlar mavjud bo'lsa, biz ularni kvadrat qavs ichida tasvirlaymiz."
  • parametrlar: — parametrlarni sozlash blokini tavsiflash
  • rejim: — bog‘lash qaysi rejimda ishlashini belgilang.
  • mii-monitor-interval: — kuzatish oralig'ini 1 soniyaga o'rnating.

Bond deb nomlangan blokning ichida siz manzillar, shlyuz4, marshrutlar va boshqalar kabi parametrlarni ham sozlashingiz mumkin.

Biz tarmog'imiz uchun ortiqcha qo'shdik, endi faqat o'rnatish qoladi vlan va sozlash tugallangan deb hisoblanishi mumkin.

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 konfiguratsiya blokini e'lon qilish.
  • vlan10: — vlan interfeysining ixtiyoriy nomi.
  • id: - bizning vlan yorlig'i.
  • havola: — vlan-ga kirish mumkin bo'lgan interfeys.
  • marshrutlar: — marshrut tavsifi blokini e'lon qilish.
  • — kimga: — marshrut kerak bo'lgan manzilni/pastki tarmoqni o'rnating.
  • orqali: — quyi tarmoqqa kirish mumkin bo'lgan shlyuzni belgilang.
  • on-link: — havola ko'tarilganda marshrutlar har doim ro'yxatga olinishi kerakligini bildiramiz.

Bo'shliqlarni qanday joylashtirishimga e'tibor bering; bu YAMLda juda muhim.

Shunday qilib, biz tarmoq interfeyslarini tasvirlab berdik, bog'lanishni yaratdik va hatto vlanlarni qo'shdik. Keling, konfiguratsiyamizni qo'llaymiz, netplan apply buyrug'i bizning konfiguratsiyamizda xatolar bor-yo'qligini tekshiradi va muvaffaqiyatli bo'lsa uni qo'llaydi.Keyin, tizim qayta ishga tushirilganda konfiguratsiya o'z-o'zidan ko'tariladi.

Oldingi barcha kod bloklarini to'plaganimizdan so'ng, biz quyidagilarni oldik:

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]
    

Endi bizning tarmog'imiz ishlashga tayyor, hamma narsa birinchi bo'lib tuyulganidek qo'rqinchli emas va kod juda chiroyli va o'qilishi mumkin bo'lib chiqdi. Kompyuter netplan uchun rahmat, havolada ajoyib qo'llanma mavjud https://netplan.io/.

Manba: www.habr.com

DDoS himoyasi, VPS VDS serverlari bo'lgan saytlar uchun ishonchli hosting sotib oling 🔥 DDoS himoyasi, VPS VDS serverlari bilan ishonchli veb-sayt xostingini sotib oling | ProHoster