Скрипт мосту VPN досі викликає brctl: що це означає
Помічник мосту, що збоїть на brctl, — це локальна проблема залежностей, а не несправність тунелю. Вирішіть, підтримувати скрипт чи перенести його роботу з мостом.
Клієнт тунелю встановлено, профіль дійсний, а помічник досі збоїть на команді brctl. Перевстановлення пакета VPN цього не виправляє, бо відсутня програма не входить до тунелю. Вона входить до локального скрипта мосту, і скрипт вимагає інструмент, який поточна система більше не постачає за замовчуванням. Дві проблеми здаються пов'язаними лише тому, що скрипт запускається під час підключення.
Відсутня допоміжна програма — не несправність тунелю
Почніть з точного виклику та його оточення. Команда, що є у вашій інтерактивній оболонці, може бути відсутня в обмеженому шляху пошуку служби, тож помилка «не знайдено» може означати дві різні речі. Запустіть command -v brctl від імені користувача служби і прочитайте юніт, який запускає скрипт за допомогою systemctl cat openvpn-bridge-helper або його еквівалента. Текст помилки зазвичай називає відсутній бінарний файл, і це ім'я — залежність, яку треба розв'язати.
Перевстановлення клієнта тунелю дає тунель, а не утиліту мосту. Це окремі пакети з окремими супроводжувачами.
Що робив brctl і чому він застарілий
Інструмент створював і адміністрував мости Ethernet у Linux: addbr створював міст, а addif приєднував порт. Посібник Debian позначає його застарілим і вказує на мостові інструменти iproute2, які охоплюють більше. Застарілий не означає вилучений усюди, і наявність новішого інструмента не робить буквальний виклик brctl у скрипті успішним.
Отже, питання не в тому, чи добрий brctl. Питання в тому, чи скрипт досі підтримується і який пакет, якщо він є, постачає для нього ваш дистрибутив.
Два чесні варіанти: підтримувати або переносити
Підтримувати — означає встановити документовану залежність з підтримуваного пакета вашого дистрибутива і підтвердити походження скрипта, очікувану версію та шлях виконання. Це задовольняє відсутній виконуваний файл і більше нічого: назви мостів, план адрес і поведінка очищення в скрипті залишаються неперевіреними. Переносити — означає переписати передбачені операції під підтримувану конфігурацію мережі. Створення мосту, приєднання портів, адресація хоста й активація ланки — чотири окремі зміни, а псевдонім в оболонці з brctl на іншу утиліту не є перекладом.
Еквіваленти в iproute2 короткі: ip link add name br-vpn type bridge створює міст, а ip link set tap0 master br-vpn приєднує порт.
Запишіть, який варіант ви обрали і кому належить скрипт. Наполовину перенесений помічник, що викликає обидва інструменти, гірший за будь-який із них.
Погляньте на проєкт мосту перед обома
Міст Ethernet пасує проєкту, якому потрібні передавання Ethernet і партнери TAP. Встановлення мостових утиліт не перетворює маршрутизоване з'єднання TUN на міст, і підтримуваний маршрутизований профіль не варто гнути під незв'язаний скрипт. Якщо профіль маршрутизує, з'ясуйте, чому помічник мосту взагалі запускається.
Перш ніж торкатися справжнього мосту, збережіть шлях керування і визначте єдиного власника конфігурації мережі.
Потім прочитайте наступну помилку після виправлення залежності. Локальне налаштування мосту, віддалена автентифікація і дозволений трафік через результат — три окремі результати, і лише один із них колись стосувався brctl.