ΠΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ Π΅ ΡΠ΅Π»ΠΈΠ·ΡΡ Π½Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Netplan 1.1, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·Π²ΠΈΠ²Π° ΡΠΎΡΠΌΠ°ΡΠ° Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ ΠΈ ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ Ρ Π½Π΅Π³ΠΎ ΡΡΠΈΠ»ΠΈΡΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. Netplan ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π² YAML ΡΠΎΡΠΌΠ°Ρ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π±Π΅ΠΊΠ΅Π½Π΄ΠΈ, ΠΊΠΎΠΈΡΠΎ Π°Π±ΡΡΡΠ°Ρ ΠΈΡΠ°Ρ Π΄ΠΎΡΡΡΠΏΠ° Π΄ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π·Π° NetworkManager ΠΈ systemd-networkd. ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΡΡ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° Ubuntu ΠΎΡ Π²Π΅ΡΡΠΈΡ 17.10 ΠΈ Π² ΡΠ±ΠΎΡΠΊΠΈΡΠ΅ Debian 12 Π·Π° ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΡΠΎΠ΅ΠΊΡΡΡ ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π° ΠΎΡ Canonical Ρ ΡΡΠ°ΡΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠ»ΡΠΆΠΈΡΠ΅Π»ΠΈ ΠΎΡ Microsoft ΠΈ Deutsche Telekom. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Python ΠΈ C, ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π· GPLv3.
Π Π°Π±ΠΎΡΠ°ΡΠ° Π½Π° netplan ΡΠ΅ ΡΠ²Π΅ΠΆΠ΄Π° Π΄ΠΎ ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ "{/lib,/etc,/run}/netplan/*.yaml" ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΈ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° /run Π² ΡΠΎΡΠΌΠ°Ρ, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π·Π° ΠΏΠΎ-Π½Π°ΡΠ°ΡΡΡΠ½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π² systemd-networkd ΠΈΠ»ΠΈ NetworkManager. Π¦ΡΠ»Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΡΠ°ΠΌΠΎ Π² ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΡ YAML ΡΠ°ΠΉΠ» Π±Π΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° "/etc/network/interfaces", ΠΊΠ°ΡΠΎ Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ°ΠΉΠ»Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° ΠΈΠ·Π½Π°ΡΡΠ½Π΅ Π² ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° libvirt ΠΈ lxd. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΡΠ΅Π· Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π»Π΅ΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΡΠ»ΠΎΠΆΠ½Π° ΠΌΡΠ΅ΠΆΠ°.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠΎΡΠΌΠ°ΡΠ° ifupdown, Π² netplan ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ; ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΌΠ°ΡΠΊΠΈ Π·Π° ΠΈΠΌΠ΅Π½Π° Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ, MAC Π°Π΄ΡΠ΅ΡΠΈ, Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ; ΠΏΡΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡΡΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ ΡΠ΅ ΠΎΡΡΠΈΡΠ° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΎΡΠΎ ΠΈ Π² ΠΏΡΠ°Π²ΠΈΠ»Π΅Π½ ΡΠ΅Π΄ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠΈΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ (Π² ifupdown ΠΏΡΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΏΡΠΈΡΠΈΠ½Π΅Π½ΠΈ ΠΎΡ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° Π³ΠΎΠ½ΠΊΠ°).
Π Π½ΠΎΠ²ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅:
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ° systemd-networkd-wait-online Π·Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π²ΡΡΡΠ΅ΡΠ½ΠΈ (link-local) ΠΈ ΠΌΠ°ΡΡΡΡΡΠΈΠ·ΠΈΡΡΠ΅ΠΌΠΈ (ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ routable) ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠ° eswitch (embedded-switch-mode) Π·Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ Π±Π΅Π· Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ (VF, virtual-function) Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π° SR-IOV (Single Root I/O Virtualization).
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠ»Π°Π³ΠΎΠ²Π΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠΈ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π²ΡΡΡ Ρ ΠΏΠ°ΡΡΠ΅ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°, Π·Π° ΠΈΠ³Π½ΠΎΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π½Π΅ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π±Π΅Π· ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ»Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄Π°.
- ΠΠ°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΡΠ° ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈ, ΡΠ΅ΡΠ°Π²Π°ΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ProtonVPN ΠΈ Microsoft Azure Linux.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
