---
title: 'Диагностика влияния ТСПУ'
sidebar_label: 'Диагностика влияния ТСПУ'
sidebar_position: 4
description: 'Что такое ТСПУ, как определить влияние ТСПУ при проблемах с подключением к серверу, что делать при влиянии ТСПУ'
---

import Formbricks from '@theme/MDXComponents/Formbricks'
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from 'docs-kit/components'

# Диагностика влияния ТСПУ

Операторы связи обязаны устанавливать в своих сетях ТСПУ — технические комплексы для анализа и фильтрации проходящего трафика, подробнее в подразделе [Что такое ТСПУ](#what-is-tspu). ТСПУ могут влиять на скорость прохождения трафика и вызывать проблемы с подключением по некоторым протоколам.

Если проблемы с прохождением трафика имеют [признаки влияния ТСПУ](#signs-of-tspu), вы можете [провести диагностику влияния ТСПУ](#diagnose-tspu) и выполнить некоторые действия по результатам диагностики.

## Что такое ТСПУ \{#what-is-tspu}

ТСПУ, или технические средства противодействия угрозам — DPI-комплексы, которые устанавливаются по требованию Роскомнадзора на узлах связи для фильтрации проходящего трафика. ТСПУ могут блокировать или замедлять трафик на основании различных критериев: IP-адресов, SNI (Server Name Indication), QUIC-метаданных, подписи протоколов и других.

Устанавливать ТСПУ в своих сетях обязаны крупные операторы мобильной, широкополосной и спутниковой связи, а также владельцы точек обмена трафиком. Через ТСПУ должен проходить весь пользовательский трафик. Оборудованием ТСПУ управляет Центр мониторинга и управления сетью связи общего пользования, операторы связи не имеют доступа к нему.

ТСПУ используются внутри страны, а также на трансграничных узлах связи при входе и выходе трафика из России. В таких точках анализ и фильтрация могут происходить как в сети оператора, так и на стыке национальной и международной инфраструктуры, что позволяет фильтровать трафик на границе сетей.

В связи с работой ТСПУ могут наблюдаться как постоянные, так и периодические проблемы с прохождением определенного типа трафика внутри России и при трансграничном обмене данными.

## Признаки влияния ТСПУ \{#signs-of-tspu}

ТСПУ может вызывать проблемы с подключением по протоколам SSH, HTTP/HTTPS, VPN, иногда RDP. При этом сервер отвечает на ICMP-запросы и проверки через утилиты `mtr`, `telnet` выполняются успешно. В редких случаях может наблюдаться проблема со скоростью сети при подключении по указанным протоколам. Проблема с подключением и скоростью может иметь как постоянный, так и плавающий характер.

Проблемы чаще всего наблюдаются, если на выделенном сервере используется [публичный общий IP-адрес](/dedicated/networks/public-networks-and-subnets.mdx#public-shared-ips). В редких случаях также наблюдаются проблемы с адресами из [выделенной публичной подсети](/dedicated/networks/public-networks-and-subnets.mdx#public-dedicated-ips).

## Провести диагностику влияния ТСПУ \{#diagnose-tspu}

Чтобы получить полные диагностические данные, нужно провести диагностику для двух серверов, между которыми наблюдается проблема при подключении. Один из серверов должен находиться в инфраструктуре Selectel:

* целевой сервер (destination) — сервер, к которому вы пытаетесь подключиться;
* исходный сервер (source) — сервер, с которого вы пытаетесь подключиться к целевому серверу.

Диагностику нужно провести в двух направлениях — от исходного сервера до целевого и от целевого сервера до исходного. Если вы не можете подключиться к одному из серверов, проведите диагностику только со второго.

1. [Проведите диагностику от исходного сервера до целевого](#diagnose-source-to-destination).
2. [Проведите диагностику от целевого сервера до исходного](#diagnose-destination-to-source).
3. [Отправьте нам результаты диагностики](#send-diagnostic-data).
4. Если по результатам диагностики предполагается влияние ТСПУ, вы можете [выполнить действия по результатам диагностики](#actions-after-diagnostic).

### 1. Провести диагностику от исходного сервера до целевого \{#diagnose-source-to-destination}

Процесс диагностики зависит от того, с каким протоколом наблюдаются проблемы.

<Tabs queryString="diagnose-source-to-destination">
  <TabItem value="ssh" default>
    <TabItemLabel>
      SSH
    </TabItemLabel>

    <Tabs queryString="ssh-os">
      <TabItem value="ssh-linux" default>
        <TabItemLabel>
          Linux
        </TabItemLabel>

        1. Подключитесь к исходному серверу. Если сервер находится в инфраструктуре Selectel, используйте инструкцию [Подключиться к серверу](/dedicated/manage/connect-to-server.mdx).

        2. Создайте текстовый файл, в который будете сохранять результаты диагностики.

        3. Проверьте доступность целевого сервера:

           3.1. Проверьте доступность целевого сервера. Проверка покажет, проходят ли ICMP-пакеты:

           ```bash
           ping <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           3.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        4. Проверьте подключение по SSH:

           4.1. Подключитесь к целевому серверу по SSH с подробным выводом информации о подключении:

           ```bash
           ssh -v root@<destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           4.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        5. Просканируйте порты целевого сервера:

           5.1. Установите утилиту `nmap`, подробнее в статье [Linux Distributions](https://nmap.org/book/inst-linux.html) документации nmap.

           5.2. Выполните сканирование портов без предварительной проверки доступности сервера:

           ```bash
           nmap -Pn <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           5.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        6. Проверьте TCP-соединение по порту `22`:

           6.1. Установите утилиту `telnet`, подробнее в статье [Telnet Applications](https://telnet.org/htm/applications.htm) документации telnet.

           6.2. Подключитесь к целевому серверу по TCP:

           ```bash
           telnet <destination_ip_address> 22
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           6.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        7. Выполните трассировку маршрута до целевого сервера:

           7.1. Установите утилиту `mtr`. Подробнее на [GitHub mtr](https://github.com/traviscross/mtr).

           7.2. Выполните трассировку маршрута до целевого сервера:

           ```bash
           mtr --address <destination_ip_address> -bwzrc 100 <source_ip_address>
           ```

           Укажите:

           * `<destination_ip_address>` — IP-адрес целевого сервера;
           * `<source_ip_address>` — IP-адрес исходного сервера.

           7.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        8. Соберите дамп трафика до целевого сервера:

           8.1. Установите утилиту `tcpdump`, подробнее в документации [`tcpdump`](https://www.tcpdump.org/index.html#documentation).

           8.2. Соберите дамп трафика. Команда создаст файл в формате `.pcap`:

           ```bash
           tcpdump --count 1000 -w dump_<source_ip_address>_<destination_ip_address>.pcap host <destination_ip_address>
           ```

           Укажите:

           * `<source_ip_address>` — IP-адрес исходного сервера;
           * `<destination_ip_address>` — IP-адрес целевого сервера.
      </TabItem>

      <TabItem value="ssh-windows">
        <TabItemLabel>
          Windows
        </TabItemLabel>

        1. Подключитесь к исходному серверу. Если сервер находится в инфраструктуре Selectel, используйте инструкцию [Подключиться к серверу](/dedicated/manage/connect-to-server.mdx).

        2. Создайте текстовый файл, в который будете сохранять результаты диагностики.

        3. Запустите PowerShell от имени администратора.

        4. Проверьте доступность целевого сервера:

           4.1. Проверьте доступность целевого сервера. Проверка покажет, проходят ли ICMP-пакеты:

           ```bash
           ping <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           4.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        5. Проверьте подключение по SSH:

           5.1. Подключитесь к целевому серверу по SSH:

           ```bash
           ssh -v root@<destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           5.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        6. Просканируйте порты:

           6.1. Установите утилиту `nmap`, подробнее в статье [Windows](https://nmap.org/book/inst-windows.html) документации nmap.

           6.2. Выполните сканирование портов без предварительной проверки доступности сервера:

           ```bash
           nmap -Pn <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           6.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        7. Проверьте TCP-соединение по порту `22`:

           7.1. Установите утилиту `telnet`, подробнее в статье [Telnet Applications](https://telnet.org/htm/applications.htm) документации telnet.

           7.2. Подключитесь к целевому серверу по TCP:

           ```bash
           telnet <destination_ip_address> 22
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           7.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        8. Выполните трассировку маршрута до целевого сервера:

           8.1. [Выполните трассировку маршрута](/dedicated/troubleshooting/network-diagnostics/?tracing=tracing-windows).

           8.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        9. [Соберите дамп сетевого трафика](/dedicated/troubleshooting/network-diagnostics/?capture-network-traffic=capture-network-traffic-windows) до целевого сервера.
           Файл с дампом назовите в формате `dump_<source_ip_address>_<destination_ip_address>`, где `<source_ip_address>` — IP-адрес исходного сервера, `<destination_ip_address>` — IP-адрес целевого сервера.
      </TabItem>
    </Tabs>
  </TabItem>

  <TabItem value="http">
    <TabItemLabel>
      HTTP/HTTPS
    </TabItemLabel>

    <Tabs queryString="http-os">
      <TabItem value="http-linux" default>
        <TabItemLabel>
          Linux
        </TabItemLabel>

        1. Подключитесь к исходному серверу. Если сервер находится в инфраструктуре Selectel, используйте инструкцию [Подключиться к серверу](/dedicated/manage/connect-to-server.mdx).

        2. Создайте текстовый файл, в который будете сохранять результаты диагностики.

        3. Проверьте доступность целевого сервера:

           3.1. Проверьте доступность целевого сервера. Проверка покажет, проходят ли ICMP-пакеты:

           ```bash
           ping <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           3.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        4. Проверьте доступность сервиса на целевом сервере:

           4.1. Проверьте доступность сервиса:

           ```bash
           curl -Iv http://<example.com>
           ```

           Укажите `<example.com>` — доменное имя сервиса.

           4.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        5. Просканируйте порты целевого сервера:

           5.1. Установите утилиту `nmap`, подробнее в статье [Linux Distributions](https://nmap.org/book/inst-linux.html) документации nmap.

           5.2. Выполните сканирование портов без предварительной проверки доступности сервера:

           ```bash
           nmap -Pn <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           5.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        6. Проверьте HTTP/HTTPS-соединение по портам `80` и `443`:

           6.1. Установите утилиту `telnet`, подробнее в статье [Telnet Applications](https://telnet.org/htm/applications.htm) документации telnet.

           6.2. Проверьте соединение по порту `80`:

           ```bash
           telnet <destination_ip_address> 80
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           6.3. Проверьте соединение по порту `443`:

           ```bash
           telnet <destination_ip_address> 443
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           6.4. Сохраните выводы в файл с результатами диагностики, который вы создали на шаге 2.

        7. Выполните трассировку маршрута до целевого сервера:

           7.1. Установите утилиту `mtr`, подробнее на [GitHub mtr](https://github.com/traviscross/mtr).

           7.2. Выполните трассировку:

           ```bash
           mtr --address <destination_ip_address> -bwzrc 100 <source_ip_address>
           ```

           Укажите:

           * `<destination_ip_address>` — IP-адрес целевого сервера;
           * `<source_ip_address>` — IP-адрес исходного сервера.

           7.3. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        8. Соберите дамп трафика:

           8.1. Установите утилиту `tcpdump`, подробнее в документации [`tcpdump`](https://www.tcpdump.org/index.html#documentation).

           8.2. Соберите дамп трафика. Команда создаст отдельный файл с данными в формате `.pcap`:

           ```bash
           tcpdump --count 1000 -w dump_<source_ip_address>_<destination_ip_address>.pcap host <destination_ip_address>
           ```

           Укажите:

           * `<destination_ip_address>` — IP-адрес целевого сервера;
           * `<source_ip_address>` — IP-адрес исходного сервера.
      </TabItem>

      <TabItem value="http-windows">
        <TabItemLabel>
          Windows
        </TabItemLabel>

        1. Подключитесь к исходному серверу. Если сервер находится в инфраструктуре Selectel, используйте инструкцию [Подключиться к серверу](/dedicated/manage/connect-to-server.mdx).

        2. Создайте текстовый файл, в который будете сохранять результаты диагностики.

        3. Запустите PowerShell от имени администратора.

        4. Проверьте доступность целевого сервера:

           4.1. Проверьте доступность целевого сервера. Проверка покажет, проходят ли ICMP-пакеты:

           ```bash
           ping <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           4.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        5. Проверьте доступность сервиса на целевом сервере:

           5.1. Проверьте доступность сервиса:

           ```bash
           curl -Iv http://<example.com>
           ```

           Укажите `<example.com>` — доменное имя сервиса.

           5.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        6. Просканируйте порты целевого сервера:

           6.1. Выполните сканирование портов целевого сервера:

           ```bash
           nmap -Pn <destination_ip_address>
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           6.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        7. Проверьте HTTP/HTTPS-соединение по портам `80` и `443`:

           7.1. Установите утилиту `telnet`, подробнее в статье [Telnet Applications](https://telnet.org/htm/applications.htm) документации telnet.

           7.2. Проверьте соединение по порту `80`:

           ```bash
           telnet <destination_ip_address> 80
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           7.3. Проверьте соединение по порту `443`:

           ```bash
           telnet <destination_ip_address> 443
           ```

           Укажите `<destination_ip_address>` — IP-адрес целевого сервера.

           7.4. Сохраните выводы в файл с результатами диагностики, который вы создали на шаге 2.

        8. Выполните трассировку маршрута до целевого сервера:

           8.1. [Выполните трассировку маршрута](/dedicated/troubleshooting/network-diagnostics/?tracing=tracing-windows).

           8.2. Сохраните вывод в файл с результатами диагностики, который вы создали на шаге 2.

        9. [Соберите дамп сетевого трафика](/dedicated/troubleshooting/network-diagnostics/?capture-network-traffic=capture-network-traffic-windows). Файл с дампом назовите в формате `dump_<source_ip_address>_<destination_ip_address>`, где `<source_ip_address>` — IP-адрес исходного сервера, `<destination_ip_address>` — IP-адрес целевого сервера.
      </TabItem>
    </Tabs>
  </TabItem>
</Tabs>

### 2. Провести диагностику от целевого сервера до исходного \{#diagnose-destination-to-source}

<Tabs queryString="diagnose-destination-to-source">
  <TabItem value="linux" default>
    <TabItemLabel>
      Linux
    </TabItemLabel>

    1. Подключитесь к целевому серверу. Если сервер находится в инфраструктуре Selectel, используйте инструкцию [Подключиться к серверу](/dedicated/manage/connect-to-server.mdx).

    2. Выполните трассировку маршрута до исходного сервера:

       2.1. Установите утилиту `mtr`, подробнее на [GitHub mtr](https://github.com/traviscross/mtr).

       2.2. Выполните трассировку:

       ```bash
       mtr --address <source_ip_address> -bwzrc 100 <destination_ip_address>
       ```

       Укажите:

       * `<source_ip_address>` — IP-адрес исходного сервера;
       * `<destination_ip_address>` — IP-адрес целевого сервера.

       2.3. Сохраните вывод в файл с результатами диагностики, который вы создали на [этапе 1](#diagnose-source-to-destination).

    3. Соберите дамп трафика до исходного сервера:

       3.1. Установите утилиту `tcpdump`, подробнее в документации [`tcpdump`](https://www.tcpdump.org/index.html#documentation).

       3.2. Соберите дамп трафика. Команда создаст отдельный файл с данными в формате `.pcap`:

       ```bash
       tcpdump --count 1000 -w dump_<destination_ip_address>_<source_ip_address>.pcap host <source_ip_address>
       ```

       Укажите:

       * `<destination_ip_address>` — IP-адрес целевого сервера;
       * `<source_ip_address>` — IP-адрес исходного сервера.
  </TabItem>

  <TabItem value="windows">
    <TabItemLabel>
      Windows
    </TabItemLabel>

    1. Подключитесь к целевому серверу. Если сервер находится в инфраструктуре Selectel, используйте инструкцию [Подключиться к серверу](/dedicated/manage/connect-to-server.mdx).

    2. Запустите PowerShell от имени администратора.

    3. Выполните трассировку маршрута до исходного сервера:

       3.1. [Выполните трассировку маршрута до исходного сервера](/dedicated/troubleshooting/network-diagnostics/?tracing=tracing-windows).

       3.2. Сохраните вывод в файл с результатами диагностики, который вы создали на [этапе 1](#diagnose-source-to-destination).

    4. [Соберите дамп сетевого трафика](/dedicated/troubleshooting/network-diagnostics/?capture-network-traffic=capture-network-traffic-windows) до исходного сервера. Файл с дампом назовите в формате `dump_<destination_ip_address>_<source_ip_address>`, где `<destination_ip_address>` — IP-адрес целевого сервера, `<source_ip_address>` — IP-адрес исходного сервера.
  </TabItem>
</Tabs>

### 3. Отправить диагностические данные \{#send-diagnostic-data}

1. [Создайте тикет](https://my.selectel.ru/tickets/create/), в тикете укажите следующие данные:

   * максимально подробно опишите проблему, с которой вы столкнулись;

   * укажите пару IP-адресов, между которыми наблюдаются проблемы подключения и для которых вы выполняли диагностику;

   * если проблема наблюдается с подключением по HTTP/HTTPS — укажите, находится ли на указанных IP-адресах VPN-сервер;

   * приложите файлы с результатами диагностики.

2. Дождитесь ответа сотрудника Selectel. Мы проведем дополнительную диагностику со своей стороны и сообщим о результатах.

3. Опционально: если по результатам диагностики мы подтвердим подозрение на влияние ТСПУ, можно дополнительно запросить подтверждение у операторов связи о наличии ТСПУ на маршруте прохождения трафика.
   Selectel может отправить текстовый запрос только тем операторам связи (аплинкам), которые приходят непосредственно в наши дата-центры. Обращение к операторам не гарантирует решение проблем с трафиком.
   Вы можете самостоятельно обратиться к операторам со стороны сервера, который находится вне инфраструктуры Selectel.

   3.1. На исходном сервере запустите трафик в сторону целевого сервера. Не останавливайте трафик минимум 7 дней, это необходимо для диагностики со стороны оператора:

   ```bash
   ping <destination_ip_address>
   while true; do <protocol> -o ConnectTimeout=5 user@<destination_ip_address> exit; sleep 60; done
   ```

   Укажите:

   * `<destination_ip_address>` — IP-адрес целевого сервера;
   * `<protocol>` — протокол, с которым наблюдаются проблемы: `ssh` для протокола SSH, `curl` для протоколов HTTP/HTTPS.

   3.2. В тикете сообщите, что запустили трафик.
   Мы отправим письменный запрос оператору связи, который подключен непосредственно к инфраструктуре Selectel и через канал которого проходит запущенный трафик.

   3.3. Опционально: самостоятельно обратитесь к оператору связи, к которому подключен сервер вне инфраструктуры Selectel.

### 4. Выполнить действия по результатам диагностики \{#actions-after-diagnostic}

Selectel не управляет настройками фильтрации трафика на стороне операторов связи и не может напрямую влиять на работу ТСПУ вне своей инфраструктуры. Если по результатам диагностики подтверждено влияние ТСПУ, вы можете:

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

* вы также можете изменить IP-адрес на сервере в Selectel. Смена IP-адреса не гарантирует решение проблемы с трафиком:

  * запросите другой публичный общий IP-адрес, для этого [создайте тикет](https://my.selectel.ru/tickets/create/);
  * или [закажите публичную выделенную подсеть](/dedicated/networks/public-networks-and-subnets.mdx#add-additional-ips).

<Formbricks />
