Почему при подключении через OpenVPN не проходит ping до виртуальной машины TryHackMe и как это исправить?

Добрый вечер. Несколько дней работал с машинами на TryHackMe, но из‑за большой задержки отклика решил перейти на прямое подключение через OpenVPN. Сайт подтверждает подключение и выдаёт виртуальный IP, который пингуется, однако сам IP машины в комнате недоступен — например, ping 10.10.10.10 показывает 100% packet loss. В чём может быть причина и как это исправить? <br/>
  • 17 марта 2026 г. 17:01
Ответы на вопрос 2
Добрый вечер. Причин, почему вы видите «Connected» и пингуется ваш VPN‑IP, но сама машина TryHackMe (например 10.10.10.10) недоступна — несколько. Ниже — кратко про типичные причины, способы диагностировать и конкретные решения.

Возможные причины
- Нет маршрута к подсети комнаты через туннель. OpenVPN запустился, но система не получила/не установила маршрут к 10.10.10.0/24.  
- OpenVPN запущен без прав администратора/без возможности прописать маршруты (часто на Windows если не запускали GUI как Admin).  
- Вы запускаете OpenVPN на хосте, а подключение тестируете из виртуальной машины/WSL/контейнера, у которого своя сеть (WSL2 и некоторые VM не «видят» Windows‑VPN по умолчанию).  
- Локальный файрвол (Windows Firewall, ufw, iptables) блокирует ICMP или не разрешил трафик по VPN‑адаптеру.  
- Целевая машина в комнате может блокировать ICMP (ping) — тогда будет 100% packet loss, хотя порты/сервисы доступны.  
- Неправильный .ovpn профиль (редко): профиль может быть не тот, который даёт доступ к лабораторной сети.

Диагностика (выполните эти команды и посмотрите вывод)
- Проверить интерфейс туннеля: Linux/macOS: ip addr show tun0 (или tun1); Windows: ipconfig /all и посмотрите TAP‑Adapter/OpenVPN адаптер.  
- Проверить таблицу маршрутизации: Linux: ip route show | grep 10.10 ; Windows: route print | findstr 10.10  
- Traceroute: traceroute -n 10.10.10.10 (Linux/macOS) или tracert 10.10.10.10 (Windows) — покажет, куда уходит трафик.  
- Прослушивание туннеля: sudo tcpdump -i tun0 icmp (посмотрите, уходят ли ICMP‑эхо на туннель и есть ли ответ).  
- Проверить логи OpenVPN: обычно в log клиента (OpenVPN GUI или /var/log/openvpn.log).  
- Попробовать подключиться к сервису на машине (ssh, http): nmap -Pn 10.10.10.10 -p 22,80,443 — если порты открыты, значит ping может блокироваться, но доступ к сервисам есть.

Типичные исправления
1) Если нет маршрута к подсети:
   - Запустите OpenVPN как администратор/root, чтобы клиент мог добавить маршруты автоматически.
   - На Linux можно вручную добавить: sudo ip route add 10.10.10.0/24 dev tun0 (или через gateway, если требуется).
   - На Windows (если нужно) можно добавить маршрут: route ADD 10.10.10.0 MASK 255.255.255.0 <gateway> METRIC 1 (в командной строке с правами администратора).

2) Если вы используете WSL2/VM:
   - Запуск OpenVPN в Windows не даёт WSL2 доступ автоматически. Запускайте OpenVPN внутри WSL2 (через sudo openvpn config.ovpn) либо настройте проброс/NAT между Windows и WSL (сложно).
   - Для виртуальной машины (VirtualBox/VMware) убедитесь, что сетевой режим (NAT/bridge) позволяет доступ к VPN‑адаптеру — обычно нужен режим «bridged» или запуск OpenVPN внутри той же VM.

3) Если локальный файрвол блокирует:
   - Временно выключите firewall, проверьте ping. Если после выключения пинги идут — создайте правило для разрешения ICMP и/или разрешите трафик по OpenVPN адаптеру.  
   - На Windows проверьте, к какой категории (Public/Private) отнесён адаптер и включите разрешения для этой категории.

4) Если целевая машина блокирует ICMP:
   - Попробуйте подключиться по портам: ssh, http, smb и т.п. Если они доступны — причина в блокировке ping со стороны VM, и всё в порядке (используйте нужный протокол, ping не обязателен).  
   - Nmap с опцией -sS или -Pn покажет открытые порты даже если ICMP отброшен.

5) Проверить профиль OpenVPN:
   - Скачайте профиль с сайта TryHackMe заново (в профиле сайта -> Access -> OpenVPN) и используйте его. Иногда нужно перегенерировать/свежий файл.

Короткий чек‑лист, что сделать прямо сейчас
1. Запустите OpenVPN клиент с правами администратора/root.  
2. Выполните ip route show (или route print) — убедитесь, что есть маршрут к 10.10.10.0/24 через туннель.  
3. traceroute/tracert к 10.10.10.10.  
4. tcpdump -i tun0 icmp (или аналог) — проверьте, уходит ли ICMP на туннель и приходит ли ответ.  
5. Попробуйте ssh: ssh user@10.10.10.10 или nmap -Pn 10.10.10.10.  
6. Если вы в WSL2/VM — запустите OpenVPN внутри той среды, откуда делаете пинг.

Если напишете, на какой ОС вы подключены (Windows/Linux/macOS/WSL2) и как именно запускаете OpenVPN (OpenVPN GUI, Tunnelblick, networkmanager, sudo openvpn config.ovpn), я подскажу конкретные команды и точные шаги для исправления.
Отключи VLESS и любой другой VPN/прокси перед подключением — два туннеля ломают маршрутизацию, и трафик до внутренней сети THM уходит мимо. Подключайся через <code>sudo openvpn файл.ovpn</code> , без sudo клиент не всегда может прописать нужные маршруты. После подключения проверь <code>ip route show | grep tun</code> — должен быть маршрут до 10.x.x.x через tun0. Если локально не заводится — используй AttackBox прямо в браузере, он работает без VPN.
Похожие вопросы