Описание товара
Windows 11. Есть прокси сервер socks5(удалённый). Как сделать прямой интернет через данный прокси сервер(то-есть чтобы трафик шёл через него поддерживался ping и прочее)
Чтобы направить весь интернет-трафик через удалённый SOCKS5-прокси в Windows 11 (включая ping и другие не-TCP/UDP протоколы), нужно использовать дополнительные инструменты, так как сама Windows не поддерживает глобальный прокси для всего трафика (особенно ICMP для ping).
Способ 1: Использование Proxifier (GUI, просто)
Proxifier позволяет перенаправлять весь трафик приложений через SOCKS5, но ping (ICMP) через него не пойдёт, так как SOCKS5 работает на уровне TCP/UDP.
Скачайте и установите Proxifier.
Добавьте прокси: Profile → Proxy Servers → Add
Укажите адрес и порт SOCKS5.
Включите правило для всего трафика: Profile → Proxification Rules
Создайте правило с Action: Proxy SOCKS5 и Target: Any.
Приложения (браузеры, Telegram и др.) будут использовать прокси, но ping всё равно не заработает.
Способ 2: Использование 3Proxy + TUN-адаптер (поддержка ICMP)
Если нужно полное туннелирование (включая ping), SOCKS5 недостаточно. Нужен VPN-подобный туннель.
Вариант A: SSH + SOCKS5 + TUN (если есть SSH-доступ)
Если прокси развёрнут на Linux-сервере с SSH:
Создайте SSH-туннель с TUN-адаптером:
bash
ssh -D 1080 -w 0:0 user@proxy-server
-D 1080 – SOCKS5 на localhost:1080.
-w 0:0 – создаёт TUN-интерфейс.
На сервере включите NAT и маршрутизацию:
bash
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
В Windows настройте TUN-адаптер (например, через Wintun) и укажите маршрут через него.
Вариант B: Использование Outline (на базе Shadowsocks)
Установите Outline Client.
Настройте сервер Outline (нужен доступ к VPS).
Клиент создаст VPN-подключение, и весь трафик (включая ICMP) пойдёт через сервер.
Способ 3: Использование Dante (Socks-to-TUN)
Если прокси поддерживает Dante SOCKS-сервер, можно настроить его в режиме transparent proxy, но это сложно и требует правки iptables на сервере.
Вывод
Если нужно только TCP/UDP (без ping) → Proxifier.
Если нужно полное туннелирование (ICMP, UDP, TCP) → SSH TUN/WireGuard/Outline.
Если у вас есть доступ к настройке сервера, лучше развернуть VPN (WireGuard, OpenVPN), а не SOCKS5.
This response is AI-generated, for reference only.
Другая задача. Предположим мне нужен мапер работающий черед прокси socks5. Суть, например к некоторому серверу в России закрыт доступ, предположим его адрес 1.2.3.4. Предположим доступ к нему есть через proxy, адрес которого 2.3.4.5. Предположим я планирую подключаться к порту 500 на сервере 1.2.3.4(TCP или UDP не важно, нужно чтобы была возможность любой протокол настроить). Суть - нужна программа которая организует копию хоста на localhost:500, при обращении к которому будет копироваться и возвращаться запрос от сервера 1.2.3.4 через прокси 2.3.4.5
Вам нужен порт-форвардер (port mapper), который будет:
Слушать на localhost:500 (или любом другом локальном порту).
Перенаправлять все запросы через SOCKS5-прокси (2.3.4.5) на целевой сервер 1.2.3.4:500.
Варианты решений
1. rinetd + proxychains (Linux/WSL)
Если у вас Linux или WSL в Windows:
Установите proxychains и rinetd:
bash
sudo apt install proxychains rinetd
Настройте proxychains (/etc/proxychains.conf):
text
socks5 2.3.4.5 1080 # ваш прокси
Настройте rinetd (/etc/rinetd.conf):
text
# Локальный порт 500 → 1.2.3.4:500 через прокси
bindaddress 127.0.0.1
bindport 500
connectaddress 1.2.3.4
connectport 500
Запустите через proxychains:
bash
proxychains rinetd -f /etc/rinetd.conf
Теперь localhost:500 → 1.2.3.4:500 через прокси.
2. socat (Windows/Linux)
Универсальное решение, работает везде:
Установите socat (для Windows — сборка от Эрнсто Кёльша).
Запустите команду (поддерживает SOCKS4/5):
bash
socat TCP-LISTEN:500,fork SOCKS4A:2.3.4.5:1.2.3.4:500,socksport=1080
fork — чтобы работало для множества соединений.
SOCKS4A — работает и с SOCKS5.
socksport=1080 — порт вашего прокси.
Для UDP (если нужно):
bash
socat UDP-LISTEN:500,fork SOCKS4A:2.3.4.5:1.2.3.4:500,socksport=1080
3. netsh (только Windows, без SOCKS)
Если прокси не SOCKS, а HTTP/HTTPS, можно использовать встроенный netsh:
cmd
netsh interface portproxy add v4tov4 listenport=500 connectaddress=1.2.3.4 connectport=500
Но это не поддерживает SOCKS, только HTTP-прокси.
4. Программы с GUI (Windows)
ProxyCap — перенаправляет трафик приложений через SOCKS.
SocksCap — запускает приложения через SOCKS.
Но они работают на уровне приложений, а не портов.
Лучший вариант
Если вам нужно просто TCP/UDP-проброс через SOCKS5, то socat — самое гибкое решение.
Если нужен удобный GUI под Windows, попробуйте ProxyCap.
Если же у вас есть доступ к серверу с прокси, лучше поднять VPN (WireGuard/OpenVPN), тогда весь трафик будет идти через него, включая ICMP (ping).
This response is AI-generated, for reference only.
А умеет ли выполнть порт-мапинг Proxifier? Смотрите какая ситуация у меня уже настроен Proxifier, при этом видимо он не маршрутизирует VPN IKeV2(то-есть я пробую установить подключение с VPN с сервером который из России не доступен и возникает ошибка, видимо Proxifier не маршрутизирует VPN подключение).
Может ли Proxifier выполнять порт-маппинг и маршрутизировать VPN (IKEv2)?
1. Порт-маппинг в Proxifier
Proxifier не является классическим порт-форвардером (как rinetd или socat). Он работает на уровне приложений, а не на уровне сетевых портов.
Что он умеет?
Перехватывать трафик конкретных программ (браузеры, Telegram, игры и т. д.) и направлять его через SOCKS/HTTP-прокси.
Не умеет создавать локальный порт, который бы пробрасывал соединения через прокси (как socat или rinetd).
Вывод:
Если вам нужно пробросить порт 500 на localhost → через SOCKS5 на 1.2.3.4:500, Proxifier не подходит. Используйте socat или другой порт-форвардер.
2. Почему Proxifier не маршрутизирует VPN (IKEv2)?
IKEv2 (как и другие VPN-протоколы) работает на низком сетевом уровне (не TCP/UDP, а поверх IPsec).
Proxifier перехватывает только TCP/UDP-трафик приложений, но не может перехватить:
VPN-подключения (IKEv2, OpenVPN, WireGuard)
ICMP (ping)
Другие низкоуровневые протоколы
Решение:
Если вам нужно подключиться к VPN через прокси, есть два варианта:
Вариант 1. Настроить VPN поверх SOCKS5 (если сервер поддерживает)
Некоторые VPN (например, Outline, Shadowsocks) поддерживают работу через SOCKS5. Но IKEv2/IPsec так не работает.
Вариант 2. Использовать SSH-туннель вместо VPN
Если у вас есть SSH-доступ к прокси-серверу (2.3.4.5), можно поднять SSH-туннель с TUN-адаптером:
bash
ssh -D 1080 -w 0:0 user@2.3.4.5
Затем настроить маршрутизацию в Windows.
Вариант 3. Поднять свой VPN на прокси-сервере
Установите WireGuard на сервере 2.3.4.5.
Подключитесь к нему с локальной машины.
Весь трафик пойдёт через сервер, и вы получите доступ к 1.2.3.4.
Итог: что делать?
Задача Решение
Пробросить порт через SOCKS5 (например, localhost:500 → 1.2.3.4:500) socat, rinetd + proxychains
Запустить VPN (IKEv2) через прокси Не поддерживается, нужен SSH/WireGuard
Перенаправить трафик приложений через SOCKS5 Proxifier, SocksCap
Рекомендация:
Если вам критично подключиться к VPN, лучше развернуть WireGuard на прокси-сервере (2.3.4.5) и использовать его.
Если нужно только TCP/UDP-проброс портов, используйте socat.
This response is AI-generated, for reference only.
Расскажите подробнее про команду ssh -D 1080 -w 0:0 user@2.3.4.5. И особенно что такое 1080? Это порт socks5 на удалённом сервере? Ранее Вы писали про localhost, не совсем понятно причём он тут.
Отличный вопрос! Давайте разберём команду ssh -D 1080 -w 0:0 user@2.3.4.5 детально, включая роль порта 1080 и localhost.
1. Разбор команды ssh -D 1080 -w 0:0 user@2.3.4.5
-D 1080 — создание SOCKS5-прокси на локальной машине
Этот флаг говорит SSH:
*"Открой на моём компьютере (localhost) SOCKS5-прокси на порту 1080, который будет перенаправлять весь трафик через SSH-сервер (2.3.4.5)"*.
1080 — это локальный порт (на вашей машине), а не порт на удалённом сервере.
По умолчанию SOCKS5 часто использует 1080, но можно указать любой свободный порт (например, -D 9000).
После запуска команды:
Вы можете настроить браузер или другие программы на SOCKS5 127.0.0.1:1080.
Весь их трафик пойдёт через SSH-сервер 2.3.4.5.
-w 0:0 — создание TUN-туннеля (VPN-подобное подключение)
Этот флаг активирует виртуальный сетевой интерфейс (TUN), позволяя:
Маршрутизировать весь трафик (включая ICMP/ping) через SSH-сервер.
Работает как упрощённый VPN.
0:0 означает:
0 — номер TUN-устройства на клиенте (ваш ПК).
0 — номер TUN-устройства на сервере (2.3.4.5).
Если сервер не разрешил TUN, команда не сработает (нужны права администратора).
user@2.3.4.5 — подключение к SSH-серверу
Это ваш логин (user) и IP-адрес (2.3.4.5) сервера, через который будет идти трафик.
2. Как это работает?
После запуска команды:
SOCKS5-прокси (-D 1080)
На вашем ПК появляется прокси-сервер 127.0.0.1:1080.
Если программа (например, браузер) использует его, трафик идёт через SSH-сервер.
Но! Не все приложения поддерживают SOCKS (например, ping, игры, VPN-клиенты — не будут работать).
TUN-туннель (-w 0:0)
Создаётся виртуальный сетевой интерфейс (как у VPN).
Если настроить маршрутизацию, весь интернет пойдёт через сервер 2.3.4.5.
Работает даже ICMP (ping)!
3. Почему localhost?
-D 1080 создаёт прокси на вашем компьютере, а не на удалённом сервере.
Поэтому в настройках программ вы указываете:
text
SOCKS5: 127.0.0.1 (localhost), порт 1080
Это значит: "перенаправляй мой трафик через SSH-соединение, которое уже установлено с 2.3.4.5".
4. Что делать дальше?
Если нужно просто перенаправлять трафик программ через SOCKS5
Запустите:
bash
ssh -D 1080 user@2.3.4.5
Настройте нужные программы (браузер, Telegram и др.) на использование 127.0.0.1:1080 как SOCKS5.
Если нужно полное туннелирование (как VPN, включая ping)
Запустите:
bash
ssh -D 1080 -w 0:0 user@2.3.4.5
На сервере (2.3.4.5) включите маршрутизацию:
bash
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
На Windows:
Откройте Сетевые подключения → найдите новый TUN-адаптер.
Назначьте ему IP и маршрут по умолчанию.
5. Ограничения
SOCKS5 (-D) работает только для TCP/UDP (не для ICMP, VPN и т. д.).
TUN (-w) требует прав root/sudo на сервере.
Если сервер не поддерживает TUN, этот метод не сработает.
Вывод
-D 1080 = SOCKS5-прокси на вашем ПК (127.0.0.1:1080).
-w 0:0 = VPN-подобный туннель (если сервер поддерживает).
Для полного обхода блокировок лучше использовать WireGuard/OpenVPN.
Если вам нужно пробросить конкретный порт (например, 500), лучше использовать socat (как в предыдущем ответе).
This response is AI-generated, for reference only.
Как установить socat на windows
Установка socat на Windows
Socat — это мощная утилита для перенаправления сетевых соединений, но официально она разрабатывается для Unix-подобных систем. Однако есть несколько способов запустить её на Windows.
Способ 1: Установка через WSL (рекомендуется)
Если у вас Windows 10/11, проще всего использовать WSL (Windows Subsystem for Linux).
1. Установите WSL (если ещё не установлен)
Откройте PowerShell (от имени администратора) и выполните:
powershell
wsl --install
После перезагрузки WSL будет готов.
2. Установите socat в WSL
Запустите терминал WSL (например, Ubuntu):
bash
sudo apt update && sudo apt install socat
Проверьте установку:
bash
socat -V
Теперь можно использовать socat прямо из WSL.
Способ 2: Скачать бинарник socat для Windows
Если WSL не подходит, можно использовать нативные Windows-сборки.
1. Скачайте socat для Windows
Перейдите на страницу: Ernst F. Kölsch's Socat for Windows
Или прямые ссылки на бинарники (если есть актуальная версия):
socat-1.7.4.4.exe (может быть устаревшей)
GitHub (альтернативные сборки)
2. Запуск socat в Windows
Скачайте socat.exe и поместите в удобную папку (например, C:\socat\).
Откройте cmd или PowerShell и перейдите в папку с socat.exe:
cmd
cd C:\socat\
Запустите команду (например, проброс порта через SOCKS5):
cmd
socat.exe TCP-LISTEN:500,fork SOCKS4A:2.3.4.5:1.2.3.4:500,socksport=1080
2.3.4.5 — адрес SOCKS5-прокси.
1080 — порт прокси.
1.2.3.4:500 — целевой сервер.
Способ 3: Использование Cygwin
Если нужна более стабильная работа, можно установить socat через Cygwin (эмулятор Linux-окружения в Windows).
1. Установите Cygwin
Скачайте с официального сайта.
Запустите установщик и в списке пакетов найдите socat.
Установите его вместе с зависимостями.
2. Запуск socat в Cygwin
Откройте Cygwin Terminal.
Введите команду (аналогично Linux):
bash
socat TCP-LISTEN:500,fork SOCKS4A:2.3.4.5:1.2.3.4:500,socksport=1080
Примеры использования socat в Windows
1. Проброс TCP-порта через SOCKS5
cmd
socat.exe TCP-LISTEN:5000,fork SOCKS4A:proxy.example.com:target.example.com:80,socksport=1080
Локально: localhost:5000 → target.example.com:80 через SOCKS5-прокси.
2. Проброс UDP (если прокси поддерживает)
cmd
socat.exe UDP-LISTEN:53,fork SOCKS4A:proxy.example.com:8.8.8.8:53,socksport=1080
Локально: localhost:53 (UDP) → 8.8.8.8:53 через прокси.
Вывод: какой способ лучше?
Способ Плюсы Минусы
WSL Нативная работа, актуальная версия Требует WSL
Готовый socat.exe Просто скачать и запустить Может быть устаревшим
Cygwin Стабильность Громоздкая установка
Рекомендация:
Если у вас Windows 10/11, используйте WSL.
Если нужен быстрый запуск — скачайте socat.exe.
Если важна стабильность — Cygwin.
Теперь вы можете перенаправлять порты через SOCKS5 прямо в Windows!
Существует ли решение вроде socat для Windows для мапинга портов
Да, в Windows существуют аналоги socat для проброса (маппинга) портов. Рассмотрим лучшие варианты для разных сценариев.
1. Чистый Windows (без WSL/Cygwin)
① netsh (встроенный в Windows)
Плюсы:
V Встроен в Windows
V Прост в настройке
Минусы:
X Не поддерживает SOCKS/прокси (только прямой проброс)
Пример проброса порта:
cmd
netsh interface portproxy add v4tov4 listenport=5000 connectaddress=1.2.3.4 connectport=80
localhost:5000 → 1.2.3.4:80
Удалить правило:
cmd
netsh interface portproxy delete v4tov4 listenport=5000
PassPort (Port Forwarding + SOCKS)
Плюсы:
V Поддержка SOCKS4/5
V GUI + CLI
Ссылка:
https://github.com/chengr28/passport
Пример проброса через SOCKS5:
cmd
PassPort.exe -l 127.0.0.1:5000 -r 1.2.3.4:80 -s socks5://2.3.4.5:1080
localhost:5000 → 1.2.3.4:80 через прокси 2.3.4.5:1080.
Chisel (Tunneling через HTTP/SOCKS)
Плюсы:
V Работает через прокси
V Поддержка TCP/UDP (частично)
Ссылка:
https://github.com/jpillora/chisel
Пример:
cmd
chisel.exe client --proxy socks5://2.3.4.5:1080 1.2.3.4:5000 127.0.0.1:5000
localhost:5000 → 1.2.3.4:5000 через SOCKS5.
2. Решения с GUI (для удобства)
Simple Port Forwarding
https://www.simpleportforwarding.com/
Простой интерфейс для проброса портов.
Нет поддержки прокси.
ProxyCap
https://www.proxycap.com/
Позволяет перенаправлять трафик приложений через SOCKS/HTTP.
Можно создать правила для проброса портов.
3. Если нужен полный аналог socat
WSL (лучший вариант)
Установите socat в Windows Subsystem for Linux (WSL):
bash
sudo apt update && sudo apt install socat
Пример команды:
bash
socat TCP-LISTEN:5000,fork SOCKS4A:2.3.4.5:1.2.3.4:80,socksport=1080
Работает точно так же, как на Linux.
Cygwin + socat
Если WSL не подходит, можно установить socat через Cygwin.
Сравнение решений
Решение Поддержка SOCKS TCP UDP GUI Простота
netsh X V X X 5
PassPort V V X X 4
Chisel V V X X 3
ProxyCap V V X V 4
WSL + socat V V V X 3
Вывод: что выбрать?
Если нужно просто пробросить порт без прокси → netsh.
Если нужен проброс через SOCKS5 → PassPort или Chisel.
Если нужен полный аналог socat → WSL + socat.
Если нужен GUI → ProxyCap или Simple Port Forwarding.
Если у вас есть WSL, лучше использовать socat — это самое гибкое решение.
Другие товары
Вы так же можете прочитать следующие статьи: