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

Три причини, які з дивана виглядають однаково

Перший кандидат — те, як маршрутизатор поводиться з IPsec. Дешеві споживчі маршрутизатори часто рекламують пропускання і реалізують його для одного клієнта за раз, бо механізм відстежує одного партнера і не може розділити два ноутбуки за однією публічною адресою. Симптом саме такий, як ви очікуєте: перемагає новіша сесія.

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

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

Що L2TP/IPsec насправді надсилає через маршрутизатор

IKE працює поверх UDP 500. Шлях даних — ESP, це IP-протокол 50, і він узагалі не несе портів TCP або UDP. Тому маршрутизатору, який розуміє лише порти, нема за що зачепитися, і саме тому існує механізм пропускання.

З обходом NAT ESP інкапсулюється всередині UDP 4500. Тепер у маршрутизатора є вихідний порт для зіставлення, і кожен ноутбук отримує власний переклад, тож шлюз може розрізнити два потоки. Саме цей механізм узагалі дозволяє працювати кільком клієнтам за однією адресою.

Різниця важлива, коли ви читаєте список функцій маршрутизатора. Етикетка з написом «пропускання IPsec» каже, що у виробника є якийсь механізм; вона не каже, чи підтримує він кількох клієнтів і як поводиться, коли приходить другий.

Документація strongSwan про обхід NAT описує саму інкапсуляцію, і це та частина, яку можна перевірити за записами пакетів, а не за маркетинговою сторінкою.

Як зрозуміти, яка причина у вас насправді

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

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

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

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

Якщо обмеження — маршрутизатор

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

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

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

Якщо обмеження — шлюз

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

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

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

Схожі статті