Netplan ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ ΠΏΡ€ΠΈΠ³ΠΎΡ‚Π²ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ

Ubuntu Π΅ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π° систСма, ΠΎΡ‚Π΄Π°Π²Π½Π° Π½Π΅ бях Ρ€Π°Π±ΠΎΡ‚ΠΈΠ» с Ubuntu server ΠΈ нямашС смисъл Π΄Π° обновявам своя Desktop ΠΎΡ‚ стабилната вСрсия. И Π΅Ρ‚ΠΎ, наскоро ΠΌΠΈ сС Π½Π°Π»ΠΎΠΆΠΈ Π΄Π° сС сблъскам със свСТата вСрсия Π½Π° Ubuntu server 18.04, ΠΌΠΎΠ΅Ρ‚ΠΎ ΡƒΡ‡ΡƒΠ΄Π²Π°Π½Π΅ нямашС ΠΊΡ€Π°ΠΉ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΎΡΡŠΠ·Π½Π°Ρ…, Ρ‡Π΅ съм Π±Π΅Π·ΠΊΡ€Π°ΠΉΠ½ΠΎ изостанал ΠΈ Π½Π΅ ΠΌΠΎΠ³Π° Π΄Π° настроя ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ старата Π΄ΠΎΠ±Ρ€Π° систСма Π·Π° настройка Π½Π° ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ интСрфСйси Ρ‡Ρ€Π΅Π· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»Π° /etc/network/interfaces ΠΈΠ·Ρ‡Π΅Π·Π½Π°. А ΠΊΠ°ΠΊΠ²ΠΎ Π΄ΠΎΠΉΠ΄Π΅ Π½Π° Π½Π΅ΠΉΠ½ΠΎ място? НСщо уТасно ΠΈ Π½Π° ΠΏΡ€ΡŠΠ² ΠΏΠΎΠ³Π»Π΅Π΄ напълно Π½Π΅Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΎ, Π·Π°ΠΏΠΎΠ·Π½Π°ΠΉΡ‚Π΅ сС с β€žNetplan.”

Π”Π° си призная, Π² Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ… Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π° ΠΊΠ°ΠΊΠ²ΠΎ става ΠΈ β€žΠ·Π°Ρ‰ΠΎ Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ²Π°, слСд ΠΊΠ°Ρ‚ΠΎ всичко бСшС Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° удобно”, Π½ΠΎ слСд ΠΌΠ°Π»ΠΊΠΎ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Ρ€Π°Π·Π±Ρ€Π°Ρ…, Ρ‡Π΅ Π² Π½Π΅Π³ΠΎ ΠΈΠΌΠ° своСто ΠΎΡ‡Π°Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅. И Ρ‚Π°ΠΊΠ°, стига с Π»ΠΈΡ€ΠΈΠΊΠ°Ρ‚Π°, Π½Π΅ΠΊΠ° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΠΌ: ΠΊΠ°ΠΊΠ²ΠΎ Π΅ Netplan? Π’ΠΎΠ²Π° Π΅ Π½ΠΎΠ²Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° Π·Π° настройка Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π² Ubuntu, ΠΏΠΎΠ½Π΅ β€žΠ² Π΄Ρ€ΡƒΠ³ΠΈ дистрибуции Π½Π΅ съм срСщал ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ.” Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° Π½Π° Netplan Π΅, Ρ‡Π΅ конфигурацията сС пишС Π½Π° Π΅Π·ΠΈΠΊ YAML, Π΄Π°, Π΄Π°, Π½Π΅ стС сС Π·Π°Π±Π»ΡƒΠ΄ΠΈΠ»ΠΈ – YAML. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠΈΡ…Π° Π΄Π° Π²ΡŠΡ€Π²ΡΡ‚ с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ (ΠΈ ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΈ Π΄Π° Π³ΠΎ хвалят, Π°Π· всС ΠΏΠ°ΠΊ Π³ΠΎ смятам Π·Π° уТасСн Π΅Π·ΠΈΠΊ). ΠžΡΠ½ΠΎΠ²Π½ΠΈΡΡ‚ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΠΊ Π½Π° Ρ‚ΠΎΠ·ΠΈ Π΅Π·ΠΈΠΊ Π΅, Ρ‡Π΅ Ρ‚ΠΎΠΉ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ чувствитСлСн към ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΈΡ‚Π΅, Π½Π΅ΠΊΠ° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ конфигурацията Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ сС Π½Π°ΠΌΠΈΡ€Π°Ρ‚ Π½Π° ΠΏΡŠΡ‚Ρ /etc/netplan/имяфайла.yaml, ΠΌΠ΅ΠΆΠ΄Ρƒ всСки Π±Π»ΠΎΠΊ трябва Π΄Π° ΠΈΠΌΠ° + 2 ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°.

1) Бтандартният header ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π°ΠΊΠ°:

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

НСка Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…ΠΌΠ΅:

  • network: β€” Ρ‚ΠΎΠ²Π° Π΅ Π±Π»ΠΎΠΊΡŠΡ‚, с ΠΊΠΎΠΉΡ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΌΠ΅ конфигурацията.
  • renderer: networkd β€” Ρ‚ΡƒΠΊ ΡƒΠΊΠ°Π·Π²Π°ΠΌΠ΅ мрСТовия ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅, Ρ‚ΠΎΠ²Π° Π΅ ΠΈΠ»ΠΈ networkd, ΠΈΠ»ΠΈ NetworkManager.
  • version: 2 β€” Ρ‚ΡƒΠΊ, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°ΠΌ, Π΅ вСрсията Π½Π° YAML.
  • ethernets: β€” Ρ‚ΠΎΠ·ΠΈ Π±Π»ΠΎΠΊ ΡƒΠΊΠ°Π·Π²Π°, Ρ‡Π΅ Ρ‰Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°ΠΌΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Ethernet.
  • enp3s0f0: β€” ΡƒΠΊΠ°Π·Π²Π°ΠΌΠ΅ ΠΊΠΎΠΉ ΠΌΡ€Π΅ΠΆΠΎΠ² Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ Ρ‰Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°ΠΌΠ΅.
  • dhcp4: no β€” Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°ΠΌΠ΅ DHCP v4, Π·Π° 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

Π’ΡƒΠΊ Π·Π°Π΄Π°Π΄ΠΎΡ…ΠΌΠ΅ MAC, IPv4, шлюз ΠΈ DNS ΡΡŠΡ€Π²ΡŠΡ€. Π—Π°Π±Π΅Π»Π΅ΠΆΠ΅Ρ‚Π΅, Ρ‡Π΅ Π°ΠΊΠΎ Π½ΠΈ трябва ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Π΅Π΄ΠΈΠ½ IP адрСс, Π³ΠΈ записвамС с запСтая ΠΈ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ с ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» слСд нСя.

3) А ΠΊΠ°ΠΊΠ²ΠΎ Ρ‰Π΅ станС, Π°ΠΊΠΎ Π½ΠΈ Π΅ Π½ΡƒΠΆΠ½ΠΎ bonding?

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

  • bonds: β€” Π±Π»ΠΎΠΊ, ΠΊΠΎΠΉΡ‚ΠΎ обяснява ΠΊΠ°ΠΊ Ρ‰Π΅ настроим bonding.
  • bond0: β€” ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ ΠΈΠΌΠ΅ Π½Π° интСрфСйса.
  • interfaces: β€” Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ интСрфСйси, ΡΡŠΠ±Ρ€Π°Π½ΠΈ Π² bonding, Β»ΠΊΠ°ΠΊ бСшС обсъдСно ΠΏΠΎ-Ρ€Π°Π½ΠΎ, Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ са няколко, Π³ΠΈ описвамС Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΈ скобки".
  • parameters: β€” описвамС Π±Π»ΠΎΠΊΠ° Π·Π° настройка Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ.
  • mode: β€” ΡƒΠΊΠ°Π·Π²Π°ΠΌΠ΅ Ρ€Π΅ΠΆΠΈΠΌΠ°, ΠΏΠΎ ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ bonding.
  • mii-monitor-interval: β€” Π·Π°Π΄Π°Π²Π°ΠΌΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° 1 сСкунда.

Π’ Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Π±Π»ΠΎΠΊΠ° с ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° bonding-Π° ΡΡŠΡ‰ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°ΠΌΠ΅ Ρ‚Π°ΠΊΠΈΠ²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ ΠΊΠ°Ρ‚ΠΎ addresses, gateway4, routes ΠΈ Ρ‚.Π½.

Π”ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½Π΅ Π·Π° Π½Π°ΡˆΠ°Ρ‚Π° ΠΌΡ€Π΅ΠΆΠ°, остава само Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ vlan ΠΈ настройката ΠΌΠΎΠΆΠ΅ Π΄Π° сС счита Π·Π° Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½Π°.

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.
  • link: β€” ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡŠΡ‚, Ρ‡Ρ€Π΅Π· ΠΊΠΎΠΉΡ‚ΠΎ vlan Ρ‰Π΅ бъдС Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½.
  • routes: β€” обявявамС Π±Π»ΠΎΠΊΠ° Π·Π° описаниС Π½Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΡ‚Π΅.
  • β€” to: β€” Π·Π°Π΄Π°Π²Π°ΠΌΠ΅ адрСс/ΠΏΠΎΠ΄ΠΌΡ€Π΅ΠΆΠ°, Π΄ΠΎ която Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚.
  • via: β€” ΡƒΠΊΠ°Π·Π²Π°ΠΌΠ΅ ΡˆΠ»ΡŽΠ·ΡŠΡ‚, Ρ‡Ρ€Π΅Π· ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ бъдС Π΄ΠΎΡΡ‚ΡŠΠΏΠ½Π° Π½Π°ΡˆΠ°Ρ‚Π° подсистСма.
  • on-link: β€” ΡƒΠΊΠ°Π·Π²Π°ΠΌΠ΅, Ρ‡Π΅ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΡ‚Π΅ трябва Π²ΠΈΠ½Π°Π³ΠΈ Π΄Π° сС прописват ΠΏΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π»ΠΈΠ½ΠΊΠ°.

ΠžΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΊ разпрСдСлям ΠΏΡ€ΠΎΠ±Π΅Π»ΠΈΡ‚Π΅, Π² Π΅Π·ΠΈΠΊΠ° YAML Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ.

Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ описахмС ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈΡ‚Π΅ интСрфСйси, ΡΡŠΠ·Π΄Π°Π΄ΠΎΡ…ΠΌΠ΅ bonding ΠΈ Π΄ΠΎΡ€ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅ vlan. НСка ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌ нашия ΠΊΠΎΠ½Ρ„ΠΈΠ³, ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° 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]
    

Π•Ρ‚ΠΎ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π½ΠΈ, Π³ΠΎΡ‚ΠΎΠ²Π° Π·Π° Сксплоатация, всичко сС ΠΎΠΊΠ°Π·Π° Π½Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎ, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ изглСТдашС Π² Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ ΠΈ ΠΊΠΎΠ΄ΡŠΡ‚ стана ΠΌΠ½ΠΎΠ³ΠΎ красив ΠΈ Ρ‡Π΅Ρ‚ΠΈΠΌ. P.C Благодаря, Ρ‡Π΅ Π·Π° netplan ΠΈΠΌΠ° страхотСн Π½Π°Ρ€ΡŠΡ‡Π½ΠΈΠΊ Π½Π° Π»ΠΈΠ½ΠΊΠ°. https://netplan.io/.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster