Π Π΅Π»ΠΈΠ· сСтСвого ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π° NetworkManager 1.20.0

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· интСрфСйса для упрощСния настройки ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² сСти — NetworkManager 1.20. ΠŸΠ»Π°Π³ΠΈΠ½Ρ‹ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ VPN, OpenConnect, PPTP, OpenVPN ΠΈ OpenSWAN Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… собствСнных Ρ†ΠΈΠΊΠ»ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π° NetworkManager 1.20:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° бСспроводных Mesh-сСтСй, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… связан Ρ‡Π΅Ρ€Π΅Π· сосСдниС ΡƒΠ·Π»Ρ‹;
  • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° чистка ΠΎΡ‚ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Π’ Ρ‚ΠΎΠΌ числС ΡƒΠ΄Π°Π»Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° libnm-glib, Π½Π° смСну ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² NetworkManager 1.0 ΠΏΡ€ΠΈΡˆΠ»Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° libnm, ΡƒΠ΄Π°Π»Ρ‘Π½ ΠΏΠ»Π°Π³ΠΈΠ½ ibft (для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ сСтСвой ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ nm-initrd-generator ΠΈΠ· initrd) ΠΈ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° настройки «main.monitor-connection-files» Π² NetworkManager.conf (слСдуСт явно Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ «nmcli connection load» ΠΈΠ»ΠΈ «nmcli connection reload»);
  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½ встроСнный DHCP-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ (Ρ€Π΅ΠΆΠΈΠΌ «internal») вмСсто Ρ€Π°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ прилоТСния dhclient. Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ сборочной ΠΎΠΏΡ†ΠΈΠΈ «—with-config-dhcp-default» ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· настройку main.dhcp Π² Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ настройки дисциплины управлСния очСрСдями ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΡ… ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² fq_codel (Fair Queuing Controlled Delay) ΠΈ дСйствия mirred для зСркалирования Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°;
  • Для дистрибутивов прСдоставлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ размСщСния скриптов диспСтчСризации Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /usr/lib/NetworkManager, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² систСмных ΠΎΠ±Ρ€Π°Π·Π°Ρ…, доступных Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния ΠΈ ΠΎΡ‡ΠΈΡ‰Π°ΡŽΡ‰ΠΈΡ… /etc ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ запускС;
  • Π’ ΠΏΠ»Π°Π³ΠΈΠ½ keyfile Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния
    («/usr/lib/NetworkManager/system-connections»), ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· D-Bus (Π² этом случаС нСдоступныС для измСнСния Ρ„Π°ΠΉΠ»Ρ‹ Π² /usr/lib/ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, сохраняСмыми Π² /etc ΠΈΠ»ΠΈ /run);

  • Π’ libnm ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΊΠΎΠ΄ Ρ€Π°Π·Π±ΠΎΡ€Π° настроСк Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON ΠΈ обСспСчСна Π±ΠΎΠ»Π΅Π΅ строгая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²;
  • Π’ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ адрСсу источника (policy routing) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° «suppress_prefixlength»;
  • Для VPN WireGuard Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° скриптов для автоматичСского назначСния ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ «wireguard.ip4-auto-default-route» ΠΈ «wireguard.ip6-auto-default-route»;
  • ΠŸΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° рСализация ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² управлСния настройками ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° хранСния ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ Π½Π° дискС. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ соСдинСний ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ»Π°Π³ΠΈΠ½Π°ΠΌΠΈ;
  • Π₯Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² памяти ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ keyfile ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /run, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ послС пСрСзапуска NetworkManager ΠΈ Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ API Π½Π° основС Π€Π‘ для создания ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ Π² памяти;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ D-Bus ΠΌΠ΅Ρ‚ΠΎΠ΄ AddConnection2(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ профиля Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅Π³ΠΎ создания. Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄ Update2() Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π»Π°Π³ «no-reapply», ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ содСрТимого профиля соСдинСния Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ автоматичСскому измСнСнию фактичСской ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ устройства Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ профиля;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка «ipv6.method=disabled», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ IPv6 для устройства.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru