Jump to content

Обход блокировок на роутере!


Recommended Posts

8 минут назад, Роберт Зарипов сказал:

fragmentation нечего не работает 

При запуске ошибок никаких нет?

Link to comment
Share on other sites

  • Replies 558
  • Created
  • Last Reply

Top Posters In This Topic

10 минут назад, Albram сказал:

При запуске ошибок никаких нет?

~ # /opt/etc/init.d/S99zapret start
iptable_raw.ko is already loaded
xt_string.ko is already loaded
nfqws is installed
tpws is installed
Restoring ipset
Adding iptables rule
Starting anti-zapret: ~ #
 

Link to comment
Share on other sites

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

~ # /opt/etc/init.d/S99zapret start

Содержимое /opt/etc/init.d/S99zapret покажите.
А goodbaydpi работает на компе? С какими параметрами запуска?

Link to comment
Share on other sites

1 час назад, Albram сказал:

Содержимое /opt/etc/init.d/S99zapret покажите.
А goodbaydpi работает на компе? С какими параметрами запуска?

по этому пути /opt/etc/init.d/S99zapret файл не открывается блокнотом только по этому пути открывается /opt/zapret/init.d/keenetic/S99zapret goodbyedpi на компе вот его параметры  

 

 

@ECHO OFF
PUSHD "%~dp0"
set _arch=x86
IF "%PROCESSOR_ARCHITECTURE%"=="AMD64" (set _arch=x86_64)
IF DEFINED PROCESSOR_ARCHITEW6432 (set _arch=x86_64)
PUSHD "%_arch%"

start "" goodbyedpi.exe -5 --blacklist ..\russia-blacklist.txt

POPD
POPD

 

Edited by Роберт Зарипов
Link to comment
Share on other sites

2 часа назад, Albram сказал:

Содержимое /opt/etc/init.d/S99zapret покажите.
А goodbaydpi работает на компе? С какими параметрами запуска?

#!/bin/sh
# For systemd :
#  install : /usr/lib/lsb/install_initd zapret
#  remove : /usr/lib/lsb/remove_initd zapret
### BEGIN INIT INFO
# Provides:        zapret
# Required-Start:    $local_fs $network
# Required-Stop:    $local_fs $network
# Default-Start:    2 3 4 5
# Default-Stop:        0 1 6
### END INIT INFO

# CHOOSE ACTION PERFORMED ON PACKETS: FRAGMENTATION (NFQWS) OR MODIFICATION (TPWS).
ACTION=fragmentation
#ACTION=modification
#ACTION=combined

# CHOSE NETWORK INTERFACE BEHIND NAT
SLAVE_ETH=br0


IPSET_CR=/opt/zapret/ipset/create_ipset.sh
NAME=zapret
DESC=anti-zapret

QNUM=200
TPPORT=1188
ROUTE_TABLE_NUM=100
NFQWS=/opt/zapret/binaries/mips32r1-lsb/nfqws
TPWS=/opt/zapret/binaries/mips32r1-lsb/tpws
TPWS_USER=nobody
#FILL THE ADRESS OF BLACKHOLE PAGE
BLACKHOLE=blocklist.rkn.gov.ru
BLACKHOLE_REG="|0D0A|Location: http://$BLACKHOLE"

PIDFILE=/var/run/$NAME.pid

set -e

case "$1" in
  start)
        if lsmod | grep "iptable_raw " &> /dev/null ;  then
         echo "iptable_raw.ko is already loaded"
        else
         if insmod /lib/modules/$(uname -r)/iptable_raw.ko &> /dev/null; then
          echo "iptable_raw.ko loaded"
         else
          echo "Cannot find iptable_raw.ko kernel module, aborting"
          exit 1
         fi
        fi
    if lsmod | grep "xt_string " &> /dev/null ;  then
         echo "xt_string.ko is already loaded"
        else
         if insmod /lib/modules/$(uname -r)/xt_string.ko &> /dev/null; then
          echo "xt_string.ko loaded"
         else
          echo "Cannot find xt_string.ko kernel module, aborting"
          exit 1
         fi
        fi
        if ($NFQWS 2> /dev/null| grep "wsize") &> /dev/null ; then
         echo "nfqws is installed"
        else
         echo "nfqws is not installed, aborting"
         exit 1
        fi
        if ($TPWS --test 2> /dev/null| grep "maxconn") &> /dev/null ; then
         echo "tpws is installed"
        else
         echo "tpws is not installed, aborting"
         exit 1
        fi
    echo "Restoring ipset"
    #($IPSET_CR)
    if !(ipset list -n zapret > /dev/null) ; then
     ipset restore -f /opt/zapret/ipset/zapret.ipset
    fi
    if !(ipset list -n zapret6 > /dev/null) ; then
     ipset restore -f /opt/zapret/ipset/zapret6.ipset
    fi
    echo "Adding iptables rule"
    case "${ACTION}" in
        fragmentation)
        iptables -t raw -C PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200 2>/dev/null ||
         iptables -t raw -I PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200
        iptables -t raw -C PREROUTING -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass 2>/dev/null ||
         iptables -t raw -I PREROUTING -m multiport -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
        #iptables -t nat -C PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888 2>/dev/null ||
        #         iptables -t nat -I PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888
        DAEMON=$NFQWS
        DAEMON_OPTS="--qnum=$QNUM --wsize=5"
        ;;
        modification)
        sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
    if [ -e /proc/net/if_inet6 ] ; then
        ! ip -6 route add local default dev lo table 99
          ! ip -6 rule add from all fwmark 0x9 lookup 99
      ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
       ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
      ip6tables -t mangle -N DIVERT
      ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
      ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
      ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
    fi
    iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
    iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
        DAEMON=$TPWS
        DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
        ;;
    combined)
  sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
  if [ -e /proc/net/if_inet6 ] ; then
    ! ip -6 route add local default dev lo table 99
    ! ip -6 rule add from all fwmark 0x9 lookup 99
    ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
     ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
    ip6tables -t mangle -N DIVERT
    ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
    ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
    ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
  fi
  iptables -t raw -C PREROUTING -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass 2>/dev/null ||
   iptables -t raw -I PREROUTING -m multiport -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
  iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
   iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
  iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
   iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
  $NFQWS --daemon --qnum=$QNUM --wsize=1200
  DAEMON=$TPWS
  DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
  ;;
    esac

    echo -n "Starting $DESC: "
    start-stop-daemon -S -q -p $PIDFILE -b -m -x $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    ;;
  stop)
    echo "Saving ipset"
    ipset save zapret -f /opt/zapret/ipset/zapret.ipset
  if [ -e /proc/net/if_inet6 ] ; then
       ipset save zapret6 -f /opt/zapret/ipset/zapret6.ipset
  fi
    echo "Deleting iptables rule"

    case "${ACTION}" in
       fragmentation)
          iptables -t raw -D PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200
          iptables -t raw -D PREROUTING -m multiport -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
          #iptables -t nat -D PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888
          DAEMON=$NFQWS
        ;;
        modification)
      sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=0
      ! iptables -t nat -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      ! iptables -t nat -D OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      if [ -e /proc/net/if_inet6 ] ; then
        ! ip6tables -t mangle -D PREROUTING -p tcp -m socket -j DIVERT 2>/dev/null
        ! ip6tables -t mangle -F DIVERT 2>/dev/null
        ! ip6tables -t mangle -X DIVERT 2>/dev/null
        ! ip6tables -t mangle -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null
        ! ip -6 rule del from all fwmark 0x9 2>/dev/null
        ! ip -6 route del local default dev lo table 99 2>/dev/null
      fi
        DAEMON=$TPWS
        ;;
    combined)
      sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=0
      ! iptables -t raw -D PREROUTING -m multiport -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
      ! iptables -t nat -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      ! iptables -t nat -D OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      if [ -e /proc/net/if_inet6 ] ; then
        ! ip6tables -t mangle -D PREROUTING -p tcp -m socket -j DIVERT 2>/dev/null
        ! ip6tables -t mangle -F DIVERT 2>/dev/null
        ! ip6tables -t mangle -X DIVERT 2>/dev/null
        ! ip6tables -t mangle -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null
        ! ip -6 rule del from all fwmark 0x9 2>/dev/null
        ! ip -6 route del local default dev lo table 99 2>/dev/null
      fi
      #ip -6 route flush table 99
      killall nfqws
    DAEMON=$TPWS
  ;;
    esac

    echo -n "Stopping $DESC: "
    start-stop-daemon  -K -q -p $PIDFILE -x $DAEMON
    echo "$NAME."
    ;;
  *)
    N=/etc/init.d/$NAME
    echo "Usage: $N {start|stop}" >&2
    exit 1
    ;;
esac

exit 0
 

Link to comment
Share on other sites

13 часа назад, Роберт Зарипов сказал:

по этому пути /opt/etc/init.d/S99zapret файл не открывается блокнотом только по этому пути открывается /opt/zapret/init.d/keenetic/S99zapret goodbyedpi на компе вот его параметры  

start "" goodbyedpi.exe -5 --blacklist ..\russia-blacklist.txt

Как минимум не совпадает размер tcp window size, при запуске с параметром -5 это значение 2:
-5: -f 2 -e 2 --auto-ttl --reverse-frag --max-payload

а в скрипте S99zapret у вас 5:
--wsize=5

Т.е. сначала установите в скрипте значение 2 для --wsize=

Link to comment
Share on other sites

11 час назад, Albram сказал:

Как минимум не совпадает размер tcp window size, при запуске с параметром -5 это значение 2:
-5: -f 2 -e 2 --auto-ttl --reverse-frag --max-payload

а в скрипте S99zapret у вас 5:
--wsize=5

Т.е. сначала установите в скрипте значение 2 для --wsize=

установил DAEMON_OPTS="--qnum=$QNUM --wsize=2" вот так да

Link to comment
Share on other sites

1 час назад, Роберт Зарипов сказал:

работает только https http не работает

А вот для этого параметра где данные взяли?
 

Скрытый текст
BLACKHOLE=blocklist.rkn.gov.ru

 

 

Link to comment
Share on other sites

6 минут назад, Роберт Зарипов сказал:

это моя местная заглушка она выходит

 

2 часа назад, Albram сказал:

А вот для этого параметра где данные взяли?
 

  Показать содержимое
BLACKHOLE=blocklist.rkn.gov.ru

 

 

спасибо за подсказку все сделал все работает

Link to comment
Share on other sites

добрый день настроил выборочный обход блокировки от https://habr.com/ru/post/428992/ все работает кроме union ссылок и только на компьютере не открывает не один браузер а на телевизоре samsung по wifi открывает union ссылки не знаю у кого спросит автор уже неделю не активен на habr

Link to comment
Share on other sites

  • 2 weeks later...

добрый день у меня вот такая ошибка начала вылезать 

 

Restoring ipset
ipset v7.15: The set with the given name does not exist
ipset v7.15: The set with the given name does not exist
Adding iptables rule
iptables v1.4.21: Set zapret doesn't exist.

Try `iptables -h' or 'iptables --help' for more information.
как решит

Link to comment
Share on other sites

  • 2 weeks later...
Posted (edited)

Инструкция делалась для роутеров с версии KeeneticOS 3.7

1. Устанавливаем компоненты системы KeeneticOS ( через веб интерфейс ) :

Компоненты зависимы друг от друга пока не поставить галочку на установку "Протокол IPv6" не появятся "Модули ядра подсистемы Netfilter" и т.д.

[Сетевые функции]

     Сенсор NetFlow Не устанавливать (Если установлен необходимо удалить)

     Протокол IPv6 Установить

[Утилиты и сервисы]

     Прокси-сервер DNS-over-HTTPS Установить

[Пакеты OPKG]

     Поддержка открытых пакетов Установить

     Модули ядра для поддержки файловых систем Установить (для установки Entware на встроенную память)

     Модули ядра подсистемы Netfilter Установить

     Модули ядра подсистемы Traffic Control Установить

     Пакет расширения Xtables-addons для Netfilter Установить

2. Настроить DNS-over-HTTPS по инструкции.

3. Устанавливаем в роутер систему Entware, её можно установить на отдельную флешку или на встроенную память в зависимости от модели роутера:

4. Далее подключаемся по SSH к установленной системе Entware:

Если на роутере был установлен ssh то порт для подключения будет 222

ssh root@192.168.1.1

5. Ставим необходимые пакеты Entware:

opkg install ipset curl unzip bind-tools iptables cron nano kmod_ndms xtables-addons_legacy

6. В файле /opt/etc/init.d/S10cron вместо ARGS="-s" оставляем просто ARGS="" иначе в логах будет мусор каждую минуту.

sed -i 's/ARGS="-s"/ARGS=""/gi' /opt/etc/init.d/S10cron

7. Скачиваем репозиторий и запускаем скрипт  install_bin.sh :

curl -L -o /tmp/zapret.zip https://github.com/bol-van/zapret/archive/refs/heads/master.zip && \
unzip /tmp/zapret.zip -d /opt && rm /tmp/zapret.zip && \
mv /opt/zapret-master /opt/zapret && \
/opt/zapret/install_bin.sh

7. Запустите blockcheck.sh. blockcheck позволяет выявить рабочую стратегию обхода блокировок
По результатам blockcheck нужно понять какой вариант будете использовать : nfqws или tpws
И запомнить найденные стратегии.

/opt/zapret/blockcheck.sh

8. Запустите install_easy.sh, для настройки конфигураций:

Подробнее по параметрам настройки почитать тут.

/opt/zapret/install_easy.sh

Запускаем скрипт и проверяем, что недоступные сайты открываются, если это так, значит все настроено правильно и можно продолжать.

/opt/zapret/init.d/sysv/zapret start

9. Добавляем симлинк на автозапуск скрипта:

ln -fs /opt/zapret/init.d/sysv/zapret /opt/etc/init.d/S99zapret

10.  На некоторых устройствах таблица mangle периодически сбрасывается ndm. Исправим это добавив файл /opt/etc/ndm/netfilter.d/zapret.sh со скриптом:

nano /opt/etc/ndm/netfilter.d/zapret.sh

Вставим скрипт:

#!/opt/bin/sh
[ "$type" == "ip6tables" ] && exit 0
[ "$table" != "mangle" ] && exit 0   # check the table name
/opt/etc/init.d/S99zapret start-fw >/dev/null

Добавим права для запуска скрипту:

chmod +x /opt/etc/ndm/netfilter.d/zapret.sh

 

P.S. Если все сделали правильно скрипт должен заработать.

Edited by AlexBl
  • Thanks 2
  • Upvote 1
Link to comment
Share on other sites

  • 3 weeks later...
Posted (edited)

Делал по инструкции. Нашлись вот такие стратегии:

ipv4 rutracker.org curl_test_http : tpws --methodeol
ipv4 rutracker.org curl_test_http : nfqws --dpi-desync=split --dpi-desync-ttl=2
ipv4 rutracker.org curl_test_https_tls12 : tpws not working
ipv4 rutracker.org curl_test_https_tls12 : nfqws --dpi-desync=fake --dpi-desync-ttl=4
ipv6 rutracker.org curl_test_http : tpws --methodeol
ipv6 rutracker.org curl_test_http : nfqws --dpi-desync=split --dpi-desync-ttl=2
ipv6 rutracker.org curl_test_https_tls12 : tpws not working
ipv6 rutracker.org curl_test_https_tls12 : nfqws --dpi-desync=fake --dpi-desync-ttl=5

Запустил install_easy.sh, выбрал nfqws, отредактировал конфигурацию вот так:

NFQWS_OPT_DESYNC="--dpi-desync=fake --dpi-desync-ttl=4 --dpi-desync-ttl6=5"
NFQWS_OPT_DESYNC_HTTP="--dpi-desync=split --dpi-desync-ttl=2"
NFQWS_OPT_DESYNC_HTTPS="--dpi-desync=fake --dpi-desync-ttl=4"
NFQWS_OPT_DESYNC_HTTP6="--dpi-desync=split --dpi-desync-ttl=2"
NFQWS_OPT_DESYNC_HTTPS6="--dpi-desync=fake --dpi-desync-ttl=5"

Запускаю /opt/zapret/init.d/sysv/zapret start делаю проверку на том же rutracker и ничего не работает. Где я мог допустить ошибку?

UPD. Как только отключаю IPv6 на роутере - начинает работать. В итоге пока остановился на таком конфиге:

NFQWS_OPT_DESYNC=""
NFQWS_OPT_DESYNC_HTTP="--dpi-desync=split --dpi-desync-ttl=2"
NFQWS_OPT_DESYNC_HTTPS="--dpi-desync=fake --dpi-desync-ttl=4"
NFQWS_OPT_DESYNC_HTTP6=""
NFQWS_OPT_DESYNC_HTTPS6=""

Плюс IPv6 от провайдера выключил и настроил его через тенельброкера буржуйского, где нет блокировок. HTTPv4 - нестабильно работает, иногда прилетает заглушка от провайдера. Поставил keep alive для http - стало значительно стабильней.

Edited by Hcimor
Link to comment
Share on other sites

Posted (edited)

Приветствую всех участников темы! Я совсем недавний пользователь Keenetic OS, но некоторый опыт в линукс имею. Недавно приобрел Hopper и настроил перенаправление сайтов по списку по этой инструкции https://github.com/DontBeAPadavan/rublock-via-vpn/wiki Только вместо списка сайтов (конфига dnsmasq), формируемого с сайта antizapret, использую свой небольшой список. Раньше этим методом пользовался на машине с полноценным дистрибутивом линукс и на роутерах  с прошивкой Столкнулся с нестандартной проблемой из разряда "подземных стуков", поэтому прошу совета. Итак по порядку.

1. На роутерe Hopper установил opkg затем Entware по мануалу https://help.keenetic.com/hc/ru/articles/360021214160-Установка-системы-пакетов-репозитория-Entware-на-USB-накопитель

(выбрал архив mipsel в правильности выбора не уверен, если не прав поправьте)

2. Настоил wireguard подключение

3. Далее по инструкции выше настроил dnsmasq, маркировку пакетов из списка ipset и их заруливание в отдельную таблицу маршрутизации, где основным шлюзом назначил интерфейс wireguard подключения. Ну и SNAT понятное дело сделал для хождения пакетов между локальной сетью и интерфейсом wireguard

В итоге список ipset создается, маршрутизация работает, сайты из списка открываются через подключение wireguard, то есть. Но при этом наблюдаются жуткие тормоза, нередко открытие страниц завершается ошибкой таймаута, при обновлении сайт может открыться, а может опять зависнуть. Первое подозрение было на несоответствие размеров пакета, но пингование разным размером пакета показало, что дело не в этом. Менял подключение wireguard на подключение OpenVPN к другому серверу - картина та же. При этом если подключение wireguard назначить основным скажем для гостевой сети wi-fi то скорость и стабильность вполне себе хорошие. Повторюсь, настраиваю обход по инструкции выше далеко не первый раз, на других системах с подобным поведением ни разу не сталкивался. Кстати на других системах использовал подключения впн к тем же серверам,  что так же подтверждает, что дело точно не в них. На этом мои идеи исчерпаны посему очень нуждаюсь в совете людей, хорошо знающих Keenetic OS и ее особенности.

З.Ы. В системном логе тишина, на интерфейсе wireguard быстро растет счетчик дропнутых пакетов, что на мой взгляд тоже не есть норма. Если не прав, поправьте.

 

Edited by R0cky
Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...