Вопрос: Как работает механизм Keep-alive?

Ответ: 

Без применения механизма Keep-alive

  1. Между устройствами А и В установлен туннель IPSec.
  2. Если, например, устройство B перегрузили, то устройство B теряет информацию об SA (Security Association) туннеля, но устройство A все еще сохраняет SA этого соединения.
  3. Данная ситуация может привести к тому, что устройство А посылает данные на устройство В по туннелю, но устройство В не имеет установленных туннелей.
  4. Это приводит к тому, что данные между устройствами А и В по IPSec туннелю не могут быть переданы.
  5. Для решения проблемы придется перегружать устройство А, чтобы очистить список установленных SA или удалить соответствующий SA на устройстве А (если такая возможность поддерживается устройством).

C применением механизма Keep-alive

  1. Между устройствами А и В установлен туннель IPSec.
  2. Если, например, устройство B перегрузили, то устройство B теряет информацию об SA (Security Association) туннеля, но устройство A все еще сохраняет SA этого соединения.
  3. Если устройство A посылает данные устройству В и не получает отклика от устройства В, то устройство А посылает icmp-запросы (ping) устройству В через туннель в течение 90 сек.
  4. Если за это время устройство В не отвечает, устройство А удаляет SA установленного IPSec туннеля.
  5. Когда устройство А вновь попытается отослать данные устройству В будет предпринята попытка установить новый туннель с устройством В.
    В поле Keep-alive можно указать любой IP адрес из удаленной подсети. Этот IP адрес должен быть постоянно доступен, например, это может быть IP адрес ПК, который постоянно включен или IP адрес LAN порта удаленного VPN шлюза (напр. IP адрес порта LAN DI-804HV)