Расходует ли простаивающий VPN трафик? Читайте правильный счётчик
Простаивающий туннель всё равно отправляет keepalive и фоновый трафик клиентов. Выберите счётчик, который отвечает на ваш вопрос, и укажите его вместе с интерфейсом.
Ваш туннель был открыт всю ночь, ничего не передавалось потоком, а график использования всё равно сдвинулся. Это нормально: VPN держит разговор открытым, а не резервирует часть вашей линии, поэтому зарезервированная доля равна нулю, пока байты малы и реальны. Эти два понятия постоянно путают, поэтому на вопрос, расходует ли простаивающий VPN трафик, плохо отвечают в обе стороны. Измерение правильного счётчика за описываемый промежуток решает это за один день.
Почему простаивающий туннель всё равно двигает байты
Туннель это отображение со сроком жизни, и что-то должно поддерживать это отображение живым. Рукопожатия истекают, устройства NAT отбрасывают простаивающие трансляции, а партнёр, который молчит достаточно долго, может стать недоступным, хотя ни на одном конце ничего не отказывает. Протоколы различаются тем, что отправляют, когда отправлять нечего: WireGuard по умолчанию ничего не передаёт после того, как рукопожатие устоялось, а необязательная PersistentKeepalive настройка добавляет периодический пакет, чтобы партнёр за трансляцией оставался доступным. Включите её намеренно, и интервал станет виден в счётчике.
OpenVPN имеет помощник keepalive, который работает иначе: он определяет проверки в стиле ping, чтобы оба конца отличали живую сессию от мёртвой, а клиенты, приносящие свой транспорт, имеют эквивалентные таймеры под другими именами. Ничего из этого не появляется в окне приложения, поэтому пустой экран ничего не говорит о том, что находится на проводе.
Простаивающее приложение не простаивающее устройство
Открытый туннель обслуживает каждого подключённого к нему клиента, а клиенты редко останавливаются. Синхронизация фотографий, запросы resolver, проверки обновлений и агент мониторинга идут по тому маршруту, который задан по умолчанию, а в профиле полного туннеля этот маршрут сам туннель. Телефон, спящий в кармане, всё равно опрашивает, а заданию резервного копирования всё равно, что никто не смотрит видео. Туннель простаивает в том смысле, что вы им не пользуетесь, пока пользуются ваши устройства.
Мостовые и маршрутизируемые профили несут разный трафик, поэтому одно и то же наблюдение может дать разный ответ на каждом из них. Запишите, кто был подключён, прежде чем измерять, потому что один клиент синхронизации может перевесить каждый keepalive за интервал.
Выберите один счётчик и скажите, что он считает
Существуют три итога, и каждый отвечает на свой вопрос: что прошло через туннель, что прошло через физический канал и что провайдер решил выставить в счёт. Подсчёт на uplink учитывает и всё то, что никогда не входило в туннель, от движения ARP до стриминга соседа. Подсчёт на интерфейсе туннеля упускает внешний заголовок, повторы рукопожатия и keepalive, которые держат трансляцию открытой. Читать оба дёшево, и это единственный способ увидеть, на какой стороне туннеля был посчитан байт.
ip -s link show wg0
ip -s link show eth0
Решите, о каком из двух ваш вопрос, прежде чем цитировать любой из них, потому что их сложение считает связанную работу дважды. Учёт провайдера может закрыться в более позднем периоде, чем измеренный, поэтому итог, не совпадающий со счётом, не обязательно ошибочен. Приложите интерфейс, направление и период к любому публикуемому числу.
Проведите короткое измерение под наблюдением
Оставьте туннель и его защиту точно такими, как они работают в обычный день, пропустите необязательные передачи и запишите, кто остался подключён. Прочитайте счётчики, подождите достаточно длинный период, чтобы его стоило читать, прочитайте их снова и держите прошедшее время рядом с разницей. Большой тест скорости отвечает на другой вопрос: он насыщает канал и ничего не говорит о стоимости простоя.
Повторите период один раз, если первый результат кажется невозможным, потому что одна выборка может застать запланированную задачу на середине. Два совпадающих интервала доказательство; один интервал анекдот с единицами измерения.
Не покупайте более чистый ноль худшим туннелем
Отключение keepalive или проверки живости ради порядка на графике меняет развёртывание, которое вы измеряете, и туннель может не вернуться после следующего периода простоя. Спросите, служит ли механизм доступности или обслуживанию, прежде чем его трогать, и измеряйте с ним включённым, если служит, потому что именно эту конфигурацию вы будете поддерживать. Более чистый ноль, скрывающий сломанный путь восстановления, самый дорогой результат в этом упражнении.
Когда число действительно велико, найдите процесс или клиент, который его создал, вместо того чтобы предполагать, будто протокол заполняет линию. Сравните внутренний и внешний счётчики, чтобы увидеть, на какой стороне байты, затем сообщите об использовании за этот период, а не о ёмкости, которой, как вам кажется, вы владеете.