Skip to content

Instantly share code, notes, and snippets.

@httpsx
Last active May 19, 2025 09:37
Show Gist options
  • Save httpsx/76a98ea28e6f3a4ffc947e768c0b6c01 to your computer and use it in GitHub Desktop.
Save httpsx/76a98ea28e6f3a4ffc947e768c0b6c01 to your computer and use it in GitHub Desktop.
WireGuard DPI обход РКН - Windows

Для обхода блокировки достаточно отправить 1 любой udp пакет, тем самым нарушим начальное определение протокола WireGuard
Способ с использованием Windows PowerShell. Без скачивания Nmap и подобного софта.

Шаг 0: Отключитесь от всех туннелей.

Шаг 1: Редактируем Клиент конфиг

Добавим в него "ListenPort", это позволит иметь статичный порт на котором будет работать WireGuard
Нажмите ПКМ на нужный "туннель" и выберите "Редактировать выбранный туннель..." Step1

После DNS добавляем новую строку

ListenPort = 56123

Step1-1

Нажимаем сохранить.

Warning

🔴 Важно! Не пытайтесь подключиться к серверу сразу после того как указали порт.

Шаг 2: Открываем "Windows PowerShell"

Необходимо изменить в скрипте данные сервера, к которому вы будете подключаться.
Их можно посмотреть в конфиге, [Peer] -> Endpoint
Как пример:

Step2

В моем примере $wgIP и $wgPort будут следующие:
$wgIP = "154.77.3.272"
$wgPORT = 51820

Script:

$wgListenPort = 56123
$wgIP = "DEST IP ADDRESS"
$wgPORT = DEST PORT

$EndPoints = New-Object System.Net.IPEndPoint([System.Net.IPAddress]::Parse([System.Net.Dns]::GetHostAddresses($wgIP)), $wgPORT) 
$Socket = New-Object System.Net.Sockets.UDPClient $wgListenPort
$SendMessage = $Socket.Send([Text.Encoding]::ASCII.GetBytes(":)"), 2, $EndPoints) 
$Socket.Close() 

После того, как изменили в скрипте $wgIP и $wgPORT, вставляем его в PowerShell и нажимаем Enter. Разрешите доступ Брандмауэру Windows если запросит.

Шаг 3: Подключаемся к WireGuard

Можете подключаться к своему WireGuard.

F.A.Q

  1. Что делать, если я попытался подключиться к серверу без PowerShell Скрипта?
  • Поменять ListenPort в конфиге клиента и поменять в скрипте значение $wgListenPort . Порт должен совпадать.
  • Либо подождать 5-10 минут, пока пройдет время блокировки порта. После этого запускаете сначало скрипт PowerShell - а затем пытаетесь подключиться к WireGuard
  1. Как определить что проблема именно в блокировке протокола WireGuard от РКН ?
  • Если в информации о переданных данных будет статично при подключение: "Получено 92 Б" или "Получено 148 Б" - Значит ваш провайдер заблокировал Handshake Response с протоколом wireguard. Данный гайд помогает обойти эту блокировку.
@vlsi
Copy link

vlsi commented Aug 28, 2024

Недостаточно. Нужно же ещё определить какой он там получился. Поэтому нужно перед get listen-port добавить сброс в 0.
Но у меня подобный скрипт не оживляет WG. Данные не принимаются (rx=0).

Обновление 29 августа: добавил проверку isResponder=no, чтобы не изменялся порт у "входящих" соединений (если не работает, можно посмотреть предыдущую.
Обновление 4 сентября: по предложению @wiktorbgu , поиск пиров теперь через find where, что нагляднее и эффективнее.

Прошлые версии скрипта можно посмотреть в истории.

:global Tx
:global Rx
/interface/wireguard/peers

:foreach i in=[find where disabled=no and is-responder!=yes] do={
  :local LocalTx [get $i tx]
  :local LocalRx [get $i rx]
  :local LastHandshake [get $i last-handshake]
  :if (([:tostr $LastHandshake] = "") or (($LastHandshake > [:totime "2m"]) and ($Rx->[:tostr $i] = $LocalRx))) do={
    :local rawHeader [:rndstr length=4 from=123456789abcdef]
    :local EndpointAddress [get $i endpoint-address]
    :local EndpointAddressIP $EndpointAddress
    :local EndpointAddressIP [get $i current-endpoint-address]
    :local name [get $i name]
    :local wgDstPort [get $i current-endpoint-port]
    :local interface [get $i interface]
    
    # Сбрасываем исходящий порт на уровне интерфейса
    /interface wireguard set $interface listen-port=0
    :local srcport [/interface/wireguard/get $interface listen-port];

    :log info ("WG name is $name, EndpointAddress $EndpointAddress , LastHandshake $LastHandshake, LastTx " . $Tx->[:tostr $i] . ", CurrentTx $LocalTx, LastRx " . $Rx->[:tostr $i] . ", CurrentRx $LocalRx")
    :log info ("WG Currentinterface $interface, srcport $srcport, EndpointAddressIP $EndpointAddressIP, DstPort $wgDstPort")
    :log info ("Generating spam for RKN")
    set $i disabled=yes
    /tool traffic-generator stream remove [find]
    /tool traffic-generator packet-template remove [find]
    :delay 1
    /tool/traffic-generator/packet-template/add header-stack=mac,ip,udp,raw ip-dst=$EndpointAddressIP name=packet-template-wg raw-header=$rawHeader special-footer=no udp-dst-port=$wgDstPort udp-src-port=$srcport
    :delay 1
    /tool traffic-generator stream add disabled=no mbps=1 name=stream1 id=3 packet-size=1450 pps=0 tx-template=packet-template-wg
    :delay 1
    /tool traffic-generator quick duration=4
    :delay 1

    :log info ("Starting WG $EndpointAddress")
    set $i endpoint-address=$EndpointAddress
    set $i disabled=no
  }
  :set ($Tx->[:tostr $i]) $LocalTx
  :set ($Rx->[:tostr $i]) $LocalRx
}

@axelom
Copy link

axelom commented Aug 28, 2024

А на линуксе такой скрипт можно сбацать?

На Linux все намного проще. Нужно добавить в конфиг клиента строчки:

[Interface]
...
ListenPort = 23123
PreUp = nping --udp --count 1 --data-length 64 --source-port 23123 --dest-port [ПортСервера] [АдресСервера]

p.s. Если на Linux не установлен nmap - его сначала нужно установить..

Попробовал настроить на ubuntu, но не сработало.
Подскажите пожалуйста, правильно ли я вас понял?

  1. Устанавливаем nmap
  2. В конфиг wg_client добавляем:
    [Interface]
    Address = ...
    PrivateKey = ...
    DNS = ...

ListenPort = 23123
PreUp = nping --udp --count 1 --data-length 64 --source-port 23123 --dest-port 1515 10.10.10.10

[Peer]
PublicKey = ...
AllowedIPs = 0.0.0.0/0
Endpoint = 10.10.10.10:1515

  1. Добавляем подключение на роутере из файла конфига

@Venom96669
Copy link

Venom96669 commented Aug 28, 2024

Попробовал настроить на ubuntu, но не сработало.

Да.
На десктопной ubuntu так не работает.
Я решил пока через костыль..
Создал подключение wireguard с порта 23123, через GUI.
И скрипт:


#!/bin/sh

echo "----------------------------------------------------------"
echo ""

if_name=$1
port_1=$2

VPN_host=[АдресСервера]
VPN_port=[ПортСервера]

echo "Старт $if_name:$port_1 => $VPN_host:$VPN_port"
echo ""

echo "1. Отключим интерфейс, если он активен.."
nmcli con down $if_name 2>/dev/null
sleep 2
echo ""

echo "2. Отправим мусор в указанный порт.."
nping --udp --count $((RANDOM%3+3)) --data-length $((RANDOM%25+9)) --source-port $port_1 --dest-port $VPN_port $VPN_host
echo ""

echo "3.Поднимем интерфейс.."
nmcli con up $if_name 2>/dev/null
echo ""

echo "4. Проверка доступности ipv6:"
ping6 google.com -I $if_name -c 4
echo ""

sleep 3

exit

И добавил на панель KDE аплет "Run"
С командой:
[ПутьДоСкрипта] wireguard 23123

После нажатия на аплет - через несколько секун выскакивает сообщение, что
"соединение wireguard успешно подключено"..

@axelom
Copy link

axelom commented Aug 28, 2024

Попробовал настроить на ubuntu, но не сработало.

Да. На десктопной ubuntu так не работает. Я решил пока через костыль.. Создал подключение wireguard с порта 23123, через GUI. И скрипт:

#!/bin/sh

echo "----------------------------------------------------------"
echo ""

if_name=$1
port_1=$2

VPN_host=[АдресСервера]
VPN_port=[ПортСервера]

echo "Старт $if_name:$port_1 => $VPN_host:$VPN_port"
echo ""

echo "1. Отключим интерфейс, если он активен.."
nmcli con down $if_name 2>/dev/null
sleep 2
echo ""

echo "2. Отправим мусор в указанный порт.."
nping --udp --count $((RANDOM%3+3)) --data-length $((RANDOM%25+9)) --source-port $port_1 --dest-port $VPN_port $VPN_host
echo ""

echo "3.Поднимем интерфейс.."
nmcli con up $if_name 2>/dev/null
echo ""

echo "4. Проверка доступности ipv6:"
ping6 google.com -I $if_name -c 4
echo ""

sleep 3

exit

И добавил на панель KDE аплет "Run" С командой: [ПутьДоСкрипта] wireguard 23123

После нажатия на аплет - через несколько секун выскакивает сообщение, что "соединение wireguard успешно подключено"..

А что у вас отдает команда?
nping --udp --count 1 --data-length 16 --source-port 23123 --dest-port VPN_port VPN_host

В моем случае

SENT (0.0018s) UDP packet with 16 bytes to VPN_host:VPN_port

Max rtt: N/A | Min rtt: N/A | Avg rtt: N/A
UDP packets sent: 1 | Rcvd: 0 | Lost: 1 (100.00%)
Nping done: 1 IP address pinged in 1.00 seconds

@Venom96669
Copy link

UDP packets sent: 1 | Rcvd: 0 | Lost: 1 (100.00%)

Все правильно. Вы пакеты серверу отправили, он ничего не ответил..
Для наших целей этого достаточно.

@axelom
Copy link

axelom commented Aug 28, 2024

Попробовал настроить на ubuntu, но не сработало.

Да. На десктопной ubuntu так не работает. Я решил пока через костыль.. Создал подключение wireguard с порта 23123, через GUI. И скрипт:

#!/bin/sh

echo "----------------------------------------------------------"
echo ""

if_name=$1
port_1=$2

VPN_host=[АдресСервера]
VPN_port=[ПортСервера]

echo "Старт $if_name:$port_1 => $VPN_host:$VPN_port"
echo ""

echo "1. Отключим интерфейс, если он активен.."
nmcli con down $if_name 2>/dev/null
sleep 2
echo ""

echo "2. Отправим мусор в указанный порт.."
nping --udp --count $((RANDOM%3+3)) --data-length $((RANDOM%25+9)) --source-port $port_1 --dest-port $VPN_port $VPN_host
echo ""

echo "3.Поднимем интерфейс.."
nmcli con up $if_name 2>/dev/null
echo ""

echo "4. Проверка доступности ipv6:"
ping6 google.com -I $if_name -c 4
echo ""

sleep 3

exit

И добавил на панель KDE аплет "Run" С командой: [ПутьДоСкрипта] wireguard 23123
После нажатия на аплет - через несколько секун выскакивает сообщение, что "соединение wireguard успешно подключено"..

А что у вас отдает команда? nping --udp --count 1 --data-length 16 --source-port 23123 --dest-port VPN_port VPN_host

В моем случае

SENT (0.0018s) UDP packet with 16 bytes to VPN_host:VPN_port

Max rtt: N/A | Min rtt: N/A | Avg rtt: N/A UDP packets sent: 1 | Rcvd: 0 | Lost: 1 (100.00%) Nping done: 1 IP address pinged in 1.00 seconds

Запустил bash с переменными, которые вы указали, отдает:

Старт wireguard:23123 => VPN_host:VPN_port

  1. Отключим интерфейс, если он активен..

  2. Отправим мусор в указанный порт..

Starting Nping 0.7.80 ( https://nmap.org/nping ) at 2024-08-28 18:25 EET
SENT (0.0439s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=22503 iplen=44
SENT (1.0440s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=22503 iplen=44
SENT (2.0451s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=22503 iplen=44
SENT (3.0464s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=22503 iplen=44
SENT (4.0477s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=22503 iplen=44

Max rtt: N/A | Min rtt: N/A | Avg rtt: N/A
Raw packets sent: 5 (220B) | Rcvd: 0 (0B) | Lost: 5 (100.00%)
Nping done: 1 IP address pinged in 5.08 seconds

3.Поднимем интерфейс..

  1. Проверка доступности ipv6:
    ping6: unknown iface: wireguard

@Venom96669
Copy link

Venom96669 commented Aug 28, 2024

ping6: unknown iface: wireguard

Не нашел интерфейса с названием "wireguard"..
В GUI точно так называется подключение?

Выделение_1378

P.S. По убирайте из скрипта:
2>/dev/null
Будет больше информации в выводе..

@axelom
Copy link

axelom commented Aug 28, 2024

P.S. По убирайте из скрипта: 2>/dev/null Будет больше информации в выводе..

Вы правы, у меня нет подключения wireguard в GUI ubuntu... коннекчусь через wi-fi к роутеру (на нем создано подключение wireguard, которое перестало работать)

Вывод без 2>/dev/null:

Старт wireguard:23123 => VPN_host:VPN_port

  1. Отключим интерфейс, если он активен..
    Ошибка: соединение 'wireguard' не активно.
    Ошибка: нет активного соединения.

  2. Отправим мусор в указанный порт..

Starting Nping 0.7.80 ( https://nmap.org/nping ) at 2024-08-28 18:51 EET
SENT (0.0633s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=29004 iplen=57
SENT (1.0636s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=29004 iplen=57
SENT (2.0649s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=29004 iplen=57
SENT (3.0653s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=29004 iplen=57
SENT (4.0665s) UDP 192.168.1.134:23123 > VPN_host:VPN_port ttl=64 id=29004 iplen=57

Max rtt: N/A | Min rtt: N/A | Avg rtt: N/A
Raw packets sent: 5 (285B) | Rcvd: 0 (0B) | Lost: 5 (100.00%)
Nping done: 1 IP address pinged in 5.11 seconds

3.Поднимем интерфейс..
Ошибка: неизвестное соединение 'wireguard'.

  1. Проверка доступности ipv6:
    ping6: unknown iface: wireguard

@Holideso
Copy link

не подскажите, как откатить все настройки?

@fivl26
Copy link

fivl26 commented Aug 28, 2024

Mikrotik или iOS будут?

Есть инструкция как это прикрутить к микротик?

mikrotik что-то типа того

/tool traffic-generator packet-template add \
    name=fuckdpi ip-src=<SRC_IP> \
    udp-src-port=<SRC_PORT> \
    ip-dst=<DST_IP>  \
    udp-dst-port=<DST_PORT> \
    ip-protocol=udp \
    data=random \
    data-byte=1
/tool traffic-generator quick \
    tx-template=fuckdpi \
    duration=1

не факт что заработает но пакет отправится

ну и естественно надо чтобы wg там же запускался

@DayDve @pikasyme @Chupakabra303 @KOTKOKOCC

уважаемые, не оставьте нуба в беде)) можно поподробнее: где смотреть эти src и dst ip и порты?

@axelom
Copy link

axelom commented Aug 28, 2024

Не нашел интерфейса с названием "wireguard".. В GUI точно так называется подключение?

Спасибо, сработало без GUI - "с толкача" завел wireguard на клиенте keenetic, нужно было прописать в запросе nping порт, который прописался вместе с конфигом в клиенте роутера... после отправки пары пингов через терминал wireguard проснулся.

@Venom96669
Copy link

завел wireguard на клиенте keenetic

Это же совсем другая история.. :-)

У меня сейчас пара клиентов (родственников) работают через кенетики. Как-то оно само оживает.
После установки соединения секунд 20-30 пингов нет.. Потом оживает.
Но это очень волнительно.

Как бы на стороне кенетика автоматизировать отправку nping , с минимальными усилиями..
(т.к. это придется делать удаленно)

@KoKauH
Copy link

KoKauH commented Aug 29, 2024

все было хорошо все работало, босс заходит с РФ к нам в Казахстан по впн и работал в 1с.
теперь проблема зайти не может, наткнулся на статью, сделал все как писалось.

Добавил порт ListenPort = 56779 после DNS правда оставил только MTU

запустил скрит PS, дал разрешение брандмауэр, после этого пробую подключится
и получаю сначала "Получено 92 Б"
потом
"Получено 148 Б"

Клиент ПК - win10
Сервер ubuntu 22.04.3 LTS (порт сервера 51830)

что еще можно предпринять, подскажите)

@Chupakabra303
Copy link

Chupakabra303 commented Aug 29, 2024

Mikrotik или iOS будут?

Есть инструкция как это прикрутить к микротик?

mikrotik что-то типа того

/tool traffic-generator packet-template add \
    name=fuckdpi ip-src=<SRC_IP> \
    udp-src-port=<SRC_PORT> \
    ip-dst=<DST_IP>  \
    udp-dst-port=<DST_PORT> \
    ip-protocol=udp \
    data=random \
    data-byte=1
/tool traffic-generator quick \
    tx-template=fuckdpi \
    duration=1

не факт что заработает но пакет отправится
ну и естественно надо чтобы wg там же запускался

@DayDve @pikasyme @Chupakabra303 @KOTKOKOCC

уважаемые, не оставьте нуба в беде)) можно поподробнее: где смотреть эти src и dst ip и порты?

Посмотрите мой скрипт выше, я его привел к виду, где косвенные параметры получаются из настроек WG и пира. Остается только задать название интерфейса WG и интернет-интерфейса (нужен для извлечения ip адреса интернет-интерфейса). От последнего можно было бы избавиться тоже, но у меня на интернет-интерфейсе висит еще второй ip (192.168.... не спрашивайте зачем). Поэтому в моем скрипте мутноватая схема извлечения ip интернет-интерфейса, но должно работать и у всех. Ну и конечно когда меняете настройки нужно удалить вручную шаблон пакета, т.к. в моем скрипте он создается 1 раз, и большинство настроек в нем потом не меняется: /tool/traffic-generator/packet-template/remove packet-template-wg

@Venom96669
Copy link

Venom96669 commented Aug 29, 2024

что еще можно предпринять, подскажите)

Поставить на win10 вот эту версию WG:
https://github.com/amnezia-vpn/amneziawg-windows-client/releases

Загрузить в неё тот же конфиг, что и в обычную WG.
Только добавить:

[Interface]
...
Jc = 4
Jmin = 8
Jmax = 32

Дальше подключаться через amneziawg ..

@sergshev
Copy link

Mikrotik или iOS будут?

Есть инструкция как это прикрутить к микротик?

mikrotik что-то типа того

/tool traffic-generator packet-template add \
    name=fuckdpi ip-src=<SRC_IP> \
    udp-src-port=<SRC_PORT> \
    ip-dst=<DST_IP>  \
    udp-dst-port=<DST_PORT> \
    ip-protocol=udp \
    data=random \
    data-byte=1
/tool traffic-generator quick \
    tx-template=fuckdpi \
    duration=1

не факт что заработает но пакет отправится
ну и естественно надо чтобы wg там же запускался

@DayDve @pikasyme @Chupakabra303 @KOTKOKOCC
уважаемые, не оставьте нуба в беде)) можно поподробнее: где смотреть эти src и dst ip и порты?

Посмотрите мой скрипт выше, я его привел к виду, где косвенные параметры получаются из настроек WG и пира. Остается только задать название интерфейса WG и интернет-интерфейса (нужен для извлечения ip адреса интернет-интерфейса). От последнего можно было бы избавиться тоже, но у меня на интернет-интерфейсе висит еще второй ip (192.168.... не спрашивайте зачем). Поэтому в моем скрипте мутноватая схема извлечения ip интернет-интерфейса, но должно работать и у всех. Ну и конечно когда меняете настройки нужно удалить вручную шаблон пакета, т.к. в моем скрипте он создается 1 раз, и большинство настроек в нем потом не меняется: /tool/traffic-generator/packet-template/remove packet-template-wg

А я сижу думаю, зачем проверка на 192.168.0.0 :)

@ropucyka
Copy link

Так что сами пакеты трафика WireGuard DPI разве не определяет? Только рукопожатие?

@Venom96669
Copy link

Так что сами пакеты трафика WireGuard DPI разве не определяет? Только рукопожатие?

Это сильно проще.
Анализировать не "каждый пакет", а только "несколько первых пакетов при установке соединения".
Возможно - не хватает мощьностей для глубокого анализа каждого пакета.

А возможно - просто понемногу "закручивают гайки". Тестируют..

@azharkov78
Copy link

Недостаточно. Нужно же ещё определить какой он там получился. Поэтому нужно перед get listen-port добавить сброс в 0. Но у меня подобный скрипт не оживляет WG. Данные не принимаются (rx=0).

:global Tx
:global Rx
/interface/wireguard/peers

:foreach i in=[find where disabled=no] do={
  :local LocalTx [get $i tx]
  :local LocalRx [get $i rx]
  :local LastHandshake [get $i last-handshake]
  :if (([:tostr $LastHandshake] = "") or (($LastHandshake > [:totime "2m"]) and ($Rx->[:tostr $i] = $LocalRx))) do={
    :local rawHeader [:rndstr length=4 from=123456789abcdef]
    :local EndpointAddress [get $i endpoint-address]
    :local EndpointAddressIP $EndpointAddress
    :local EndpointAddressIP [get $i current-endpoint-address]
    :local name [get $i name]
    :local wgDstPort [get $i current-endpoint-port]
    :local interface [get $i interface]
    
    # Сбрасываем исходящий порт на уровне интерфейса
    /interface wireguard set $interface listen-port=0
    :local srcport [/interface/wireguard/get $interface listen-port];

    :log info ("WG name is $name, EndpointAddress $EndpointAddress , LastHandshake $LastHandshake, LastTx " . $Tx->[:tostr $i] . ", CurrentTx $LocalTx, LastRx " . $Rx->[:tostr $i] . ", CurrentRx $LocalRx")
    :log info ("WG Currentinterface $interface, srcport $srcport, EndpointAddressIP $EndpointAddressIP, DstPort $wgDstPort")
    :log info ("Generating spam for RKN")
    set $i disabled=yes
    /tool traffic-generator stream remove [find]
    /tool traffic-generator packet-template remove [find]
    :delay 1
    /tool/traffic-generator/packet-template/add header-stack=mac,ip,udp,raw ip-dst=$EndpointAddressIP name=packet-template-wg raw-header=$rawHeader special-footer=no udp-dst-port=$wgDstPort udp-src-port=$srcport
    :delay 1
    /tool traffic-generator stream add disabled=no mbps=1 name=stream1 id=3 packet-size=1450 pps=0 tx-template=packet-template-wg
    :delay 1
    /tool traffic-generator quick duration=4
    :delay 1

    :log info ("Starting WG $EndpointAddress")
    set $i endpoint-address=$EndpointAddress
    set $i disabled=no
  }
  :set ($Tx->[:tostr $i]) $LocalTx
  :set ($Rx->[:tostr $i]) $LocalRx
}

У меня он отрабатывает. Но при этом меняет порт для удаленного подключения с телефона из РФ. Надо бы как-то добавить исключения

@vlsi
Copy link

vlsi commented Aug 29, 2024

Но при этом меняет порт для удаленного подключения

У вас на таком peer указано is-responder=yes?
Думаю, логично, если скрипт будет игнорировать такие.
Поправил в том же комментарии: https://gist.github.com/httpsx/76a98ea28e6f3a4ffc947e768c0b6c01?permalink_comment_id=5170553#gistcomment-5170553

Ещё можно каким-нибудь комментарием игнорировать peer'ы.

@pablobablo
Copy link

pablobablo commented Aug 29, 2024

Спасибо! Проверил - работает.
То же самое но скрипт для Linux/MacOs

wgIP="111.222.333.444"
wgPORT=51820
wgListenPort=56123
echo -n ":)" | nc -u -p $wgListenPort $wgIP $wgPORT -w 1

@azharkov78
Copy link

azharkov78 commented Aug 30, 2024

У вас на таком peer указано is-responder=yes?

Сейчас указал. Это пир, который создает сам Mikrotik, когда создаешь "backtohome" :)
Не работает, предыдущая отрабатывает. Может фильтр по имени сделать? что-то вроде name not local*
А если убрать is-responder, то помогает секунды на 4

@Wyou-VK
Copy link

Wyou-VK commented Aug 30, 2024

Добрые люди!
А скажите как заставить на asuswrt этот скрипт крутить?

@Eurgen
Copy link

Eurgen commented Aug 30, 2024

У вас на таком peer указано is-responder=yes?

Сейчас указал. Это пир, который создает сам Mikrotik, когда создаешь "backtohome" :) Не работает, предыдущая отрабатывает. Может фильтр по имени сделать? что-то вроде name not local* А если убрать is-responder, то помогает секунды на 4

Попробуйте заменить строку:

:if (($isResponder = "no" or $isResponder = "") and (([:tostr $LastHandshake] = "") or (($LastHandshake > [:totime "2m"]) and ($Rx->[:tostr $i] = $LocalRx)))) do={
на
:if (($isResponder != true) and (([:tostr $LastHandshake] = "") or (($LastHandshake > [:totime "2m"]) and ($Rx->[:tostr $i] = $LocalRx)))) do={

@Altair200333
Copy link

У меня способ больше не работает, хотя недавно помогало. Смена порта и даже сообщения не помогает, передача виснет на 828b (иногда и в kb уходит и встаёт)

@ropucyka
Copy link

А чем со смартфона пакеты отправить можно?

@koolvn
Copy link

koolvn commented Aug 31, 2024

Добрые люди! А скажите как заставить на asuswrt этот скрипт крутить?

https://gist.github.com/koolvn/993d9c7eb2666dbf15bdccc7d3c4fe33

@HPo1nt
Copy link

HPo1nt commented Aug 31, 2024

А чем со смартфона пакеты отправить можно?

На 4пда советовали hiddify со скриптом варпа.

@morzexxx
Copy link

morzexxx commented Aug 31, 2024

Интересная мысль пришла мне в голову. Если ТСПУ анализируют начало всех соединений (несклько байт) давайте может начнем массово создавать эти соединения и посмотрим что будет? Кто нить может написать такой скрипт?) Что если устроить "бесконечное начало"?

@Andrey52222
Copy link

Подскажите как на кинетик со скриптом все это дело провернуть?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment