Netplan dan cara mempersiapkannya dengan benar

Ubuntu adalah sistem operasi yang luar biasa, saya sudah lama tidak bekerja dengan server Ubuntu dan tidak ada gunanya memutakhirkan Desktop saya dari versi stabil. Dan belum lama ini saya harus berurusan dengan rilis terbaru server Ubuntu 18.04, keterkejutan saya tidak mengenal batas ketika saya menyadari bahwa saya sangat ketinggalan zaman dan tidak dapat mengatur jaringan karena sistem lama yang bagus untuk mengatur antarmuka jaringan oleh mengedit file /etc/network /interfaces sia-sia. Dan apa yang menggantikannya? sesuatu yang buruk dan pada pandangan pertama benar-benar tidak dapat dipahami, temui β€œNetplan”.

Sejujurnya, pada awalnya saya tidak mengerti apa masalahnya dan β€œmengapa ini diperlukan, karena semuanya sangat nyaman,” tapi setelah sedikit latihan saya menyadari bahwa itu memiliki daya tarik tersendiri. mari kita lanjutkan dengan apa itu Netplan, ini adalah utilitas baru untuk pengaturan jaringan di Ubuntu, setidaknya "Saya belum pernah melihat yang seperti ini di distribusi lain." Perbedaan yang signifikan antara Netplan adalah bahwa konfigurasinya ditulis dalam bahasa tersebut YAML, ya, Anda salah dengar YAML, para pengembang memutuskan untuk mengikuti perkembangan zaman (dan tidak peduli seberapa besar mereka memujinya, menurut saya itu tetap bahasa yang buruk). Kerugian utama dari bahasa ini adalah sangat sensitif terhadap spasi, mari kita lihat konfigurasinya menggunakan sebuah contoh.

File konfigurasi terletak di sepanjang jalur /etc/netplan/filename.yaml, harus ada + 2 spasi di antara setiap blok.

1) Header standar terlihat seperti ini:

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

Mari kita lihat apa yang telah kita lakukan sekarang:

  • jaringan: - ini adalah awal dari blok konfigurasi.
  • renderer: networkd - di sini kami menunjukkan manajer jaringan yang akan kami gunakan, ini adalah networkd atau NetworkManager
  • versi: 2 - di sini, sejauh yang saya pahami, adalah versi YAML.
  • ethernets: - blok ini menunjukkan bahwa kita akan mengkonfigurasi protokol ethernet.
  • enps0f0: β€” menunjukkan adaptor jaringan mana yang akan kita konfigurasikan.
  • dhcp4:no - nonaktifkan DHCP v4, masing-masing untuk 6 v6 dhcp6

2) Mari kita coba menetapkan alamat 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

Di sini kita mengatur server poppy, ipv4, gateway dan dns. Perhatikan bahwa jika kita memerlukan lebih dari satu alamat IP, maka kita menulisnya dipisahkan dengan koma dengan spasi wajib setelahnya.

3) Bagaimana jika kita membutuhkannya ikatan?

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

  • obligasi: - blok yang menjelaskan bahwa kita akan mengkonfigurasi ikatan.
  • bond0: - nama antarmuka sewenang-wenang.
  • antarmuka: - sekumpulan antarmuka yang dikumpulkan dalam ikatan, β€œseperti yang dinyatakan sebelumnya, jika ada beberapa parameter, kami menjelaskannya dalam tanda kurung siku.”
  • parameter: β€” menjelaskan blok pengaturan parameter
  • mode: β€” menentukan mode yang akan digunakan untuk melakukan pengikatan.
  • mii-monitor-interval: β€” mengatur interval pemantauan ke 1 detik.

Di dalam blok bernama bond, Anda juga dapat mengkonfigurasi parameter seperti alamat, gateway4, rute, dll.

Kami telah menambahkan redundansi untuk jaringan kami, sekarang yang tersisa hanyalah menginstal vlan dan pengaturannya dapat dianggap selesai.

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: β€” mendeklarasikan blok konfigurasi vlan.
  • vlan10: β€” nama arbitrer dari antarmuka vlan.
  • id: β€” tag vlan kami.
  • tautan: β€” antarmuka yang melaluinya vlan dapat diakses.
  • rute: β€” mendeklarasikan blok deskripsi rute.
  • β€” ke: β€” mengatur alamat/subnet tujuan rute yang diperlukan.
  • via: β€” tentukan gateway yang melaluinya subnet kita dapat diakses.
  • on-link: β€” kami menunjukkan bahwa rute harus selalu didaftarkan ketika tautan dimunculkan.

Perhatikan bagaimana saya menempatkan spasi; ini sangat penting di YAML.

Jadi kami menjelaskan antarmuka jaringan, membuat ikatan, dan bahkan menambahkan vlan. Mari kita terapkan konfigurasi kita, perintah netplan apply akan memeriksa kesalahan konfigurasi kita dan menerapkannya jika berhasil.Selanjutnya, konfigurasi akan muncul dengan sendirinya ketika sistem di-reboot.

Setelah mengumpulkan semua blok kode sebelumnya, inilah yang kami dapatkan:

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]
    

Sekarang jaringan kami siap untuk dioperasikan, semuanya menjadi tidak seseram kelihatannya pada awalnya dan kodenya ternyata sangat indah dan mudah dibaca. PC terima kasih untuk netplan ada manual yang bagus di tautan https://netplan.io/.

Sumber: www.habr.com

Tambah komentar