Вы здесь

anyconnect и реконнекты (anyconnect reconnects)

Иногда со стороны клиента возможны реконнекты. Чаще это происходит поле 1 минуты после успешного подключения: anyconnect может начать переподключаться один и более раз.
При этом после 1-3 реконнектов клиент работает стабильно.
Чтобы понять точную причину реконнектов воспользуемся инструментом DART

Установка DART

DART - это Cisco Anyconnect Diagnostics and Reporting Tool. Инструмент, позволяющий вытащить все логи клиента Anyconnect.

Для его установки мы скачиваем архив с именем типа: anyconnect-win-4.8.02042-predeploy-k9.zip
Внутри него запускаем: anyconnect-win-4.8.02042-dart-predeploy-k9.msi

Сбор DART Bundle

Для сбора логов нам необходимо повторить ситуацию reconnect.

  1. Для начала удалим всю Message History. Идём в Cвойства Anyconnect -> Message History -> Clear
  2. Повторяем ситуацию reconnect.
  3. Снимаем все события из Message History. Это удобно тем, что здесь видны Time Stamps, которые нам понадобятся для поиска сообщений в логах.
    Получится что-то типа:
    22.07.2020 14:05:01 Contacting vpn-koks.methd.com. 14:05:14 User credentials entered. 14:05:15 Establishing VPN session... 14:05:15 The AnyConnect Downloader is performing update checks... 14:05:15 Checking for profile updates... 14:05:15 Checking for product updates... 14:05:15 Checking for customization updates... 14:05:15 Performing any required updates... 14:05:15 The AnyConnect Downloader updates have been completed. 14:05:15 Establishing VPN - Initiating connection... 14:05:15 Establishing VPN session... 14:05:16 Establishing VPN - Examining system... 14:05:16 Establishing VPN - Activating VPN adapter... 14:05:16 Establishing VPN - Configuring system... 14:05:16 Establishing VPN... 14:05:16 Connected to vpn-koks.methd.com. 14:06:20 Reconnecting to vpn-koks.methd.com... 14:06:20 Establishing VPN - Examining system... 14:06:25 Establishing VPN - Activating VPN adapter... 14:06:28 Establishing VPN - Configuring system... 14:06:28 Establishing VPN... 14:06:28 Connected to vpn-koks.methd.com. 14:06:28 Establishing VPN - Examining system... 14:06:28 Establishing VPN - Activating VPN adapter... 14:06:28 Establishing VPN - Configuring system... 14:06:29 Reconnecting to vpn-koks.methd.com... 14:06:29 Establishing VPN... 14:06:29 Connected to vpn-koks.methd.com. 14:09:03 Disconnect in progress, please wait... 14:09:04 Ready to connect.
  4. Создаём DART Bundle.
    - Запускаем Cisco Anyconnect Diagnostics and Reporting Tool
    - Нажимаем два раза Next
    - Архив с DART Bundle окажется на рабочем столе
  5. Анализ DART Bundle
    В нашем случае нам понадобится:
    DARTBundle_0722_1412.zip -> Cisco AnyConnect Secure Mobility Client -> AnyConnect.txt
    Date : 07/22/2020 Time : 14:06:19 Type : Warning Source : acvpnagent Description : Reconfigure reason code 16: New MTU configuration. ****************************************** Date : 07/22/2020 Time : 14:06:20 Type : Information Source : acvpnagent Description : The entire VPN connection is being reconfigured. ****************************************** Date : 07/22/2020 Time : 14:06:20 Type : Information Source : acvpnui Description : Message type information sent to the user: Reconnecting to vpn-koks.methd.com... ****************************************** Date : 07/22/2020 Time : 14:06:20 Type : Warning Source : acvpnagent Description : A new MTU needs to be applied to the VPN network interface. Disabling and re-enabling the Virtual Adapter. Applications utilizing the private network may need to be restarted.

Основная причина реконнектов

Итак, основная причина реконнектов - это блокировка DTLS где-то по пути между клиентом и сервером.
Datagram Transport Layer Security (DTLS) tunnel или Transport Layer Security (TLS) tunnel - это собственно туннель, который строится между клиентом (anyconnect) и сервером (ASA).

Для построенного туннеля используются Maximum Transmition Units (MTUs).
MTU, Maximum Transmission Unit - максимальный размер блока в байтах, который может быть передан на канальном уровне сетевой модели OSI.

Ранее клиент получал приблизительную оценку MTU, которая была заведомо ниже оптимальной.
Сейчас (начиная с версий ASA Release 9.x and AnyConnect Release 3.x) ASA использует DTLS, и вычисляет точное значение MTU, индивидуальное для каждого соединения Клиент-Сервер.

DTLS - это туннель, способный вычислить оптимальную MTU на стадии подключения.
Если DTLS работать не способен, происходит fallback на "Обычный" TLS.
А TLS подбирает MTU от большего к меньшему: например начинает со значения 1418. В случае неудачи уменьшает значение и делает Reconnect.

Resolution

  1. Пропустить DTLS:
    Для нормальной работы Anyconnect необходимы порты TCP:443, UDP:443
    Для работы DTLS необходим UDP:443
  2. Уменьшить начальное значение MTU
    group-policy ac_users_group attributes webvpn anyconnect mtu 1300

    Значение mtu необходимо подбирать - иногда хватает 1300, иногда 1100.

Дополнительная информация

The cause of this issue is the failure to build a Datagram Transport Layer Security (DTLS) tunnel. This could be because of two reasons:

1. DTLS is blocked somewhere in the path

2. Use of a non-default DTLS port (this affects old versions)

DTLS is Blocked Somewhere in the Path :

As of ASA Release 9.x and AnyConnect Release 3.x, an optimization has been introduced in the form of distinct Maximum Transition Units (MTUs) that are negotiated for TLS/DTLS between the client/ASA. Previously, the client derived a rough estimate MTU which covered both TLS/DTLS and was obviously less than optimal. Now, the ASA computes the encapsulation overhead for both TLS/DTLS and derives the MTU values accordingly.

As long as DTLS is enabled, the client applies the DTLS MTU (in this case 1418) on the VPN adapter (which is enabled before the DTLS tunnel is established and is needed for routes/filters enforcement), to ensure optimum performance. If the DTLS tunnel cannot be established or it is dropped at some point, the client fails over to TLS and adjusts the MTU on the virtual adapter (VA) to the TLS MTU value (this requires a session level reconnect).

Resolution :

In order to eliminate this visible transition of DTLS > TLS, the administrator can configure a separate tunnel group for TLS only access for users that have trouble with the establishment of the DTLS tunnel (such as due to firewall restrictions).

The best option is to set the AnyConnect MTU value to be lower than the TLS MTU, which is then negotiated.

group-policy ac_users_group attributes
webvpn
anyconnect mtu 1300
This makes TLS and DTLS MTU values equal. Reconnections are not seen in this case.

The second option is to allow fragmentation.

group-policy ac_users_group attributes
webvpn
anyconnect ssl df-bit-ignore enable
With fragmentation, large packets (whose size exceeds the MTU value) can be fragmented and sent through the TLS tunnel.

The third option is to set the Maximum Segment Size (MSS) to 1460 as follows:

sysopt conn tcpmss 1460
In this case, the TLS MTU will be 1427 (RC4/SHA1) which is larger than the DTLS MTU 1418 (AES/SHA1/LZS). This should resolve the issue with TCP from the ASA to the AnyConnect client (thanks to MSS), but large UDP traffic from the ASA to the AnyConnect client might suffer from this as it will be dropped by the AnyConnect client due to the lower AnyConnect client MTU 1418. If sysopt conn tcpmss is modified, it might affect other features such as LAN-to-LAN (L2L) IPSec VPN tunnels.

Please refer to the link below , I hope you will find it informative :

https://www.cisco.com/c/en/us/support/docs/security/anyconnect-secure-mo...

Добавить комментарий

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Допустимые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и абзацы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и абзацы переносятся автоматически.
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
Target Image