Старий профіль потрапляє на сучасний Mac, клієнт імпортує його без заперечень, а з'єднання обривається або трафік взагалі не проходить. Перш ніж витратити півдня на сертифікати, прочитайте рядок пристрою в профілі. Якщо там зазначено dev tap, ви просите в клієнта інтерфейс у стилі Ethernet, і в macOS більшість таких сеансів закінчується саме на цьому запиті.

Крок 1: переконайтеся, що профіль справді вимагає TAP

Профілі перейменовують, пакують і повторно експортують, тож перевіряйте саме той файл, який ви імпортували. Шукайте директиву пристрою та будь-який include, що може її перекрити. Два рядки виводу в більшості випадків вирішують питання. Коли трапляються і dev, і dev-type, перемагає пізніша директива, і саме таку деталь приховує скопійований профіль.

grep -nE "^[[:space:]]*(dev|dev-type)[[:space:]]" client.ovpn
ls -l ~/Library/Application\ Support/ 2>/dev/null

Якщо файл містить dev tap або dev tap0, клієнт має реалізувати інтерфейс TAP. Якщо він містить dev tun, решта статті не застосовується, а несправність в іншому місці.

Запишіть ім'я та версію клієнта, версію macOS і походження профілю. Ці три факти визначають, який із двох шляхів нижче взагалі можливий.

Крок 2: дізнайтеся, що насправді змінює режим пристрою

Інтерфейс TUN передає IP-пакети. Клієнт читає й записує пакети, адресовані IP-партнеру, а операційна система маршрутизує їх як будь-який інший інтерфейс.

Інтерфейс TAP передає кадри Ethernet, зокрема широкомовні та ARP. Саме це дозволяє серверу з мостом роздавати адреси через DHCP, а клієнту — виявляти пристрої криком, і тому деякі старі схеми на це спираються.

Ціна в тому, що TAP потребує драйвера, який подає системі інтерфейс Ethernet. Apple відмовилася від моделі розширення ядра, на яку спиралися старі драйвери TAP для Mac, а його замінний API не з'являється чарівним чином у клієнтах, які ніколи не оновлювали для його використання. Можливість платформи і випущений продукт — різні речі.

Крок 3: виберіть між сумісним клієнтом і міграцією

Є два чесні шляхи. Перший — клієнт, видавець якого для вашої версії macOS і вашого обладнання заявляє, що підтримує потрібну вам схему TAP. Не допис на форумі чотирирічної давнини і не архівний інсталятор: актуальна заява плюс тестове з'єднання.

Другий — перевести службу на TUN, що є зміною сервера не менше, ніж зміною клієнта. Потрібні маршрутизована топологія, пул адрес, передані маршрути для віддалених мереж і зворотний шлях від цих мереж до пулу.

Що не працює — це змінити tap на tun у локальній копії і сподіватися. Сервер усе ще будує міст, клієнт тепер говорить IP, і ніщо не узгоджується.

Крок 4: зберіть факти, перш ніж змінювати робочу службу

Залиште оригінальний профіль недоторканим і зробіть копію для експериментів. Файл, який можна відновити за хвилину, цінніший за охайну теку. Коли заміна запрацює, видаліть копію навмисно, а не залишайте два профілі, що в списку виглядають однаково. Ця одна звичка запобігає більшій частині плутанини після невдалої міграції. Запишіть поточну поведінку, щоб довести, що змінилося: чи піднімається тунель, чи отримує адресу, чи досягаєте ви одного відомого хоста і чи працює розв'язання імен.

Задайте власнику шлюзу три питання. Сервер працює в мостовій чи маршрутизованій топології? Які віддалені префікси мають бути доступними? І чи є вікно обслуговування для зміни конфігурації, чи очікується, що все працюватиме без втручання в сервер?

Відповіді на це визначають, чи вирішуєте ви проблему клієнта сьогодні після обіду, чи плануєте зміну мережі наступного тижня.

Крок 5: перевірте міграцію з обох боків

Коли сервер має маршрутизовану конфігурацію, а ви — відповідний профіль, перевіряйте в такому порядку: тунель встановлюється, клієнт отримує адресу з нового пулу, хост на віддаленому боці відповідає, і ім'я розв'язується через передане налаштування DNS.

Потім перевірте те, що раніше залежало від поведінки Ethernet. Якщо застосунок виявляв пристрої широкомовно, через маршрутизований тунель він їх не знайде, і жодне налаштування клієнта цього не поверне. Такому застосунку потрібна відома адреса, локальний допоміжний хост або інший спосіб виявлення.

Завершіть одним перепідключенням і одним перезавантаженням, бо профіль, що працює лише з першої спроби, зазвичай означає, що передані маршрути або налаштування DNS не застосовуються під час перепідключення.

Якщо все одно не виходить, прочитайте першу помилку

Клієнт, який не може створити інтерфейс, каже про це в журналі, зазвичай у перших рядках. Клієнт, який створює його, а потім не проходить автентифікацію, давно минув питання пристрою, і подальші перегони за TAP марнують сеанс.

Зберігайте оригінальний профіль і робочу конфігурацію, доки заміну не доведено. Відкотити зміну клієнта швидко; перезібрати мостову мережу, яку хтось розібрав за здогадкою, — ні.

Схожі статті