Kirya Posted February 16, 2019 Author Share Posted February 16, 2019 Из внутренней домашней сети тоже не коннектится ? ps. Лог-то, когда выклыдавайте, хотя бы ключи подчищайте... Quote Link to comment Share on other sites More sharing options...
Stas Zevs Posted February 16, 2019 Share Posted February 16, 2019 3 hours ago, Kirya said: Из внутренней домашней сети тоже не коннектится ? ps. Лог-то, когда выклыдавайте, хотя бы ключи подчищайте... Из внутренней тоже, + в терминале пишет unable to connect 'ip телеги' 443, ключи стандартные, пока не заработало смысл менять/скрывать)) Quote Link to comment Share on other sites More sharing options...
Kirya Posted February 16, 2019 Author Share Posted February 16, 2019 12 минуты назад, Stas Zevs сказал: + в терминале пишет unable to connect 'ip телеги' 443 Так с этого и надо было начинать. Прокси не может достучаться до серверов ТГ. Блокировка (Как Вы ранее писали у вас же пров РТ). Вам нужно каким-либо способом её обойти для серверов ТГ. 😎 Quote Link to comment Share on other sites More sharing options...
Kirya Posted March 22, 2019 Author Share Posted March 22, 2019 Прошло минорное обновление uvloop до 0.12.2 В принципе для работы MTP оно похоже не важно, так как снова правятся баги в SSL, которое MTP не задействует. Но ещё и роут лики. Правда я у нас такого не наблюдал. Но мало ли. Не пропадать же вилочке для Mipself. uvloop-0.12.2-cp37-cp37-mipsel-34.whl Quote Link to comment Share on other sites More sharing options...
Almi Posted March 24, 2019 Share Posted March 24, 2019 (edited) Добрый день. при старте прокси он стартует, но не видит IPv6, то есть не "IPv6 found, using it for external communication". IPv6 проброшен через туннельного брокера и раздается в домшнюю сеть. Если сделать ping6 из под Entware, то тишина. Аналогично тишина если ping6 сделать через gui кинетика, раздел диагностика. В маршрутизации относительно v6 две записи: Действующие маршруты IPv6 ::/0 :: IPv6 Tunnel 20хх:ъъъ:ёёёё::/64 :: Домашняя сеть UPD: Решил проблему иначе: поставил Entware на NAS который в домашней сети получает IPv6., далее по аналогии. На роутере пробросил нужный порт на NAS и всё Ок Edited March 24, 2019 by Almi remedy Quote Link to comment Share on other sites More sharing options...
Kirya Posted March 24, 2019 Author Share Posted March 24, 2019 5 часов назад, Almi сказал: Добрый день. при старте прокси он стартует, но не видит IPv6, то есть не "IPv6 found, using it for external communication". IPv6 проброшен через туннельного брокера и раздается в домшнюю сеть. Если сделать ping6 из под Entware, то тишина. Аналогично тишина если ping6 сделать через gui кинетика, раздел диагностика Странно. По алгоритму перед коннектом прокси вычисляет свой внешний ipv6 по запросу на http://v6.ident.me/ и http://ipv6.icanhazip.com/ Если коннект хотя бы до одного срабатывает, то только после этого, если ipv6 в настройках специально не понижен в конфиге ключем PREFER_IPV6, прокся начинает работать по ipv6 и выдаёт процитированное Вами сообщение. Сильно похоже на какой-то фаерволл у Вас, который пропускает http запросы, но режет всё остальное... Quote Link to comment Share on other sites More sharing options...
Kirya Posted March 24, 2019 Author Share Posted March 24, 2019 (edited) Пересобрал вилочку uvloop-а 0.12,2 под Entware 1903. uvloop-0.12.2-cp37-cp37-mipsel-34_Ent1903.whl И в первом посту треда обновил init.d скрипт для запуска. Поприличней сделал. 😎 Edited April 1, 2019 by Kirya Пересбор whl под обновленное Entware. 1 Quote Link to comment Share on other sites More sharing options...
UweStrich Posted May 20, 2019 Share Posted May 20, 2019 (edited) В 24.03.2019 в 18:44, Kirya сказал: Пересобрал вилочку uvloop-а 0.12,2 под Entware 1903. uvloop-0.12.2-cp37-cp37-mipsel-34_Ent1903.whl 1 \u041c\u0431 · 3 downloads Обязан сделать одну ремарочку, т.к. сам с пайтоном "на Вы", и слишком долго бился над установкой этого "колеса": при попытке установить его стандартной командой python3 -m pip install ./uvloop-0_12.2-cp37-cp37-mipsel-34_Ent1903.whl пип ругался подобным образом - ERROR: uvloop-0_12.2-cp37-cp37-mipsel-34_Ent1903.whl is not a supported wheel on this platform. С энного захода в гугл и по удачной ссылке в выдаче, таки выяснил что pip чувствителен к названию файла .whl, т.к. в нём содержится информация о версии пайтона и о платформе, для которой колесо собрано, и что переименование файла "для удобства хранения" чревато вот такими ошибками при попытке установки колеса. Вооружившись этим знанием (а так же способом выяснить, какие "колёса" поддерживает пайтон на роутере): Скрытый текст ~ # python3 Python 3.7.2 (default, Mar 23 2019, 05:17:43) [GCC 7.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import pip._internal >>> print(pip._internal.pep425tags.get_supported()) [('cp37', 'cp37', 'linux_mips'), ('cp37', 'abi3', 'linux_mips'), ('cp37', 'none', 'linux_mips'), ('cp36', 'abi3', 'linux_mips'), ('cp35', 'abi3', 'linux_mips'), ('cp34', 'abi3', 'linux_mips'), ('cp33', 'abi3', 'linux_mips'), ('cp32', 'abi3', 'linux_mips'), ('py3', 'none', 'linux_mips'), ('cp37', 'none', 'any'), ('cp3', 'none', 'any'), ('py37', 'none', 'any'), ('py3', 'none', 'any'), ('py36', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')] переименовал файл из "uvloop-0_12.2-cp37-cp37-mipsel-34_Ent1903.whl" в "uvloop-0_12.2-cp37-cp37-linux_mips.whl". После этой манипуляции колесо успешно установилось: python3 -m pip install ./uvloop-0_12.2-cp37-cp37-linux_mips.whl Processing ./uvloop-0_12.2-cp37-cp37-linux_mips.whl Installing collected packages: uvloop Successfully installed uvloop-0.12.2 Надеюсь, этот "дебаг" поможет остальным обновиться до более актуальной версии uvloop 🙂 Edited May 20, 2019 by UweStrich уточнения, стилистика 1 1 Quote Link to comment Share on other sites More sharing options...
UweStrich Posted September 27, 2019 Share Posted September 27, 2019 На фоне новостей про "тестирование РКН окончательной блокировки Telegram на тюменцах", а так же продолжающемуся развитию python-версии MTProto, решился на выходных основательно засесть за "допиливание" крутящегося на роутере личного проксика таким образом, чтобы он и в качестве бэкэнда работал за другим проксирующим сервером (в моём случае - nginx), и чтобы при этом работала поддержка fake-tls, маскирующегося при этом под сертификат на фронтенде. Важный дисклеймер: описанный ниже способ несовместим с защищёнными доменами от KeenDNS (по крайней мере - на прошивке 2.16), так как nginx из Entware нужно будет слушать на порту 443, также используемой прошивочной службой. Помимо этого, должен оговорить что доменное имя получено от noip (статья по настройке), айпи-адрес при этом - "белый", купленный за сотню в месяц у провайдера. Шаг нулевой (поначалу - неочевидный): скомпилировать nginx, как минимум - поддерживающий необходимый для проксирования набор опций ("--with-stream_proxy_module" и "--with-stream_ssl_preread"), а как максимум - ещё и несколько опций, полезных при логировании перенаправлений ("--with-stream_realip_module", например); полный вывод "nginx -V" - под катом, установочный архив под mipsel - nginx-extratest_1.16.1-1c_mipsel-3.4.ipk (под mips - т.е. для Zyxel Keenetic LTE, например, - не компилировал, но позже могу добавить, если окажется востребованным) Скрытый текст ~ # nginx -V nginx version: nginx/1.16.1 built by gcc 7.4.0 (OpenWrt GCC 7.4.0 r944-a63df64b) built with OpenSSL 1.1.1b 26 Feb 2019 TLS SNI support enabled configure arguments: --crossbuild=Linux::mipsel --with-cc=mipsel-openwrt-linux-gnu-gcc --with-cc-opt='-I/home/baz/entstbl/Entware/staging_dir/target-mipsel_mips32r2_glibc-2.27/opt/include -I/home/baz/entstbl/Entware/staging_dir/toolchain-mipsel_mips32r2_gcc-7.4.0_glibc-2.27/include -O2 -pipe -mno-branch-likely -mips32r2 -mtune=mips32r2 -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -I/home/baz/entstbl/Entware/staging_dir/target-mipsel_mips32r2_glibc-2.27/opt/include/libxml2 -Wno-error=parentheses -Wno-error=implicit-fallthrough' --with-ld-opt='-L/home/baz/entstbl/Entware/staging_dir/target-mipsel_mips32r2_glibc-2.27/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link=/home/baz/entstbl/Entware/staging_dir/target-mipsel_mips32r2_glibc-2.27/opt/lib -Wl,--dynamic-linker=/opt/lib/ld.so.1 -L/home/baz/entstbl/Entware/staging_dir/toolchain-mipsel_mips32r2_gcc-7.4.0_glibc-2.27/lib -lxml2' --prefix=/opt --conf-path=/opt/etc/nginx/nginx.conf --http-log-path=/opt/var/log/nginx/access.log --error-log-path=/opt/var/log/nginx/error.log --lock-path=/opt/var/lock/nginx.lock --pid-path=/opt/var/run/nginx.pid --modules-path=/opt/lib/nginx --http-client-body-temp-path=/opt/var/lib/nginx/body --http-fastcgi-temp-path=/opt/var/lib/nginx/fastcgi --http-proxy-temp-path=/opt/var/lib/nginx/proxy --http-scgi-temp-path=/opt/var/lib/nginx/scgi --http-uwsgi-temp-path=/opt/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-http_log_module --without-http_upstream_zone_module --without-stream_upstream_zone_module --with-http_addition_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_mp4_module --with-http_random_index_module --with-http_secure_link_module --with-http_sub_module --with-http_xslt_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-stream=dynamic --with-stream_log_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-stream_proxy_module --with-stream_realip_module --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-headers-more-filter --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-auth-pam --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-cache-purge --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-dav-ext --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-ndk --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-echo --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-fancyindex --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/nchan --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-lua --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/rtmp --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-uploadprogress --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-upstream-fair --add-dynamic-module=/home/baz/entstbl/Entware/build_dir/target-mipsel_mips32r2_glibc-2.27/nginx-1.16.1/modules/http-subs-filter Шаг 0.5: настройки в веб-интерфейсе. Отключаем доступ к админке через интернет: Скрытый текст настраиваем перенаправление с 80-го порта внешнего интерфейса на другой адрес (в данном случае - 127.0.0.1:8888) Скрытый текст Шаг 1: настроить получение сертификата Let's Encrypt для nginx. Настройка проводилась по инструкции на гитхабе проекта Entware (на английском, но наиболее современная; некоторые команды и ссылки в аналогичной инструкции на русском за годы с момента написания успели устареть). Неизбежные отклонения из-за другого пакета (пакет на базе nginx-extras вместо обычного nginx) и из-за требований для маскировки прокси под TLSv1.3: во-первых, за неимением какого-либо поднятой на роутере обычной страницы, пришлось методом копирования "привить" от обычного пакета "стандартную заглушку" (html.zip), т.к. в своё время при настройке nginx-extras стандартной заглушки от него я не заметил; во-вторых, описанные в инструкции настройки, по большей части, проводились не в nginx.conf, а в "/sites-available/default"; изменения для поддержки TLSv1.3 также пришлось внести и в "ssl.conf". По окончании всех шагов, содержимое файла "default" приняло такой вид (комментарии из оригинального файла удалены для краткости, домены - заменены): Скрытый текст server { listen 127.0.0.1:8888; server_name имя.дднс.нет; #listen [::]:80 ipv6only=on; return 301 https://имя.дднс.нет$request_uri; } server { #слушаем на сокете для проксирования listen unix:/tmp/post.sock ssl proxy_protocol http2; #а так же - по адресу, который mtprotoproxy будет использовать для получения сертификата listen 127.0.0.1:8443 ssl http2; #отбитые ниже настройки позволяют получать #реальный айпи клиентов вместо айпи/сокета nginx #(полезно для логов) ############################## set_real_ip_from 127.0.0.1; set_real_ip_from ::1; set_real_ip_from unix:; real_ip_header proxy_protocol; ############################## include ssl.conf; resolver 127.0.0.1 [::1]; location / { root /opt/share/nginx/html; index index.html index.htm; } location ^~ /.well-known { allow all; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } а файла "ssl.conf" - такой: Скрытый текст ssl_certificate /opt/etc/nginx/certs/имя.дднс.нет/fullchain.pem; ssl_certificate_key /opt/etc/nginx/certs/имя.дднс.нет/privkey.pem; ssl_trusted_certificate /opt/etc/nginx/certs/имя.дднс.нет/chain.pem; ssl_ciphers 'TLS-CHACHA20-POLY1305-SHA256:TLS-AES-256-GCM-SHA384:TLS-AES-128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; ssl_prefer_server_ciphers on; ssl_dhparam /opt/etc/nginx/dhparams.pem; #ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_protocols TLSv1.3 TLSv1.2; ssl_session_cache shared:SSL:10m; ssl_session_timeout 5m; ssl_stapling on; ssl_stapling_verify on; ssl_ecdh_curve auto; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; always"; сертификат при этом запрашивался следующей командой: bash ./dehydrated --domain имя.дднс.нет --ocsp -a rsa -t http-01 --cron Шаг 2: Настраиваем config.py у mtprotoproxy для работы с фронтендом: Скрытый текст PORT = 3257 # name -> secret (32 hex chars) # дефолтные имена и секреты из неправленного конфига USERS = { "tg": "00000000000000000000000000000000", "tg2": "0123456789abcdef0123456789abcdef" } # Tag for advertising, obtainable from @MTProxybot # AD_TAG = "3c09c680b76ee91a4c25ad51f742267d" # Быстрый режим с упрощённым шифрованием - отключен; # при желании/необходимости - можно вариант False закомментировать # и раскомментировать вариант True FAST_MODE = False #FAST_MODE = True # Включаем поддержку работы с фронтэндом PROXY_PROTOCOL = True # Makes the proxy harder to detect # Can be incompatible with very old clients SECURE_ONLY = True # Makes the proxy even more hard to detect # Compatible only with the recent clients # TLS_ONLY = True TLS_DOMAIN = "google.com" MASK_HOST = "127.0.0.1" MASK_PORT = 8443 # указываем слушающий юникс-сокет во временной памяти роутера LISTEN_UNIX_SOCK = "/tmp/telegraph.sock" # заставляем прокси слушать только на локалхосте, чтобы не # светить в других интерфейсах LISTEN_ADDR_IPV4 = "127.0.0.1" LISTEN_ADDR_IPV6 = "::1" далее - в папке /opt/etc/nginx создаём файл "stream.conf" с примерно таким содержимым: Скрытый текст stream { # proxy_protocol on; resolver 127.0.0.1 [::1]; # proxy_ssl_server_name on; upstream mtproto_tls { server unix:/tmp/telegraph.sock; } upstream web { server unix:/tmp/post.sock; } upstream mtproto_dd { server unix:/tmp/telegraph.sock; #server 127.0.0.1:3257; #server [::1]:3257; } map $ssl_preread_server_name $name { www.google.com mtproto_tls; "" mtproto_dd; имя.дднс.нет web; } server { listen 443 so_keepalive=on; listen [::]:443 ipv6only=on so_keepalive=on; proxy_pass $name; proxy_protocol on; proxy_ssl_server_name on; tcp_nodelay on; proxy_socket_keepalive on; ssl_preread on; } } и прописываем строчку "include stream.conf" в конфиге "nginx.conf" перед/после блока http, а в шапке конфига - прописываем load_module "/opt/lib/nginx/ngx_stream_module.so"; пример рабочего "nginx.conf": Скрытый текст user nobody; worker_processes auto; worker_cpu_affinity auto; worker_priority 5; pid /opt/var/run/nginx.pid; include /opt/etc/nginx/modules-enabled/*.conf; load_module "/opt/lib/nginx/ngx_stream_module.so"; lock_file "/tmp/nginx.lock"; events { use epoll; worker_connections 768; multi_accept on; accept_mutex on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /opt/etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE #ssl_prefer_server_ciphers on; ## # Logging Settings ## # log_format combined '$proxy_protocol_addr - $remote_user [$time_local] ' # '"$request" $status $body_bytes_sent ' # '"$http_referer" "$http_user_agent"'; access_log /opt/var/log/nginx/access.log; error_log /opt/var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; #gzip_vary on; gzip_static on; gzip_proxied any; gzip_comp_level 1; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; include /opt/etc/nginx/conf.d/*.conf; include /opt/etc/nginx/sites-enabled/*; } include /opt/etc/nginx/stream.conf; после чего - перезагружаем mtprotoproxy и nginx ("/opt/etc/init.d/S80nginx reload") Эта конфигурация обеспечивает не только работу fake-tls на 443 порту, но также и обеспечивает "обратную совместимость" с более старой версией mtproto (секреты, начинающиеся с "dd"); работает она у меня уже несколько дней, и насколько могу судить - mtprotoproxy за nginx оказался даже более производительным, чем наоборот, как понимаю - в первую очередь из-за использования юникс-сокета во временной памяти: по "оценкам на глаз по пингу в Телеграмме" - где-то в полтора-два раза быстрее. Однако хочу сразу заметить, что всё описанное выше не претендует на "идеальность" или "полноту", и если имеются какие-то замечания и исправления от опытных специалистов - готов внести исправления и уточнения. P.S.: минутка зависти к владельцам роутеров с поддержкой ядра линукса 4.9 - на них, скорее всего, в ядре включен REUSEPORT, а значит - с Debian вместо Entware можно было бы добиться большей производительности и nginx, и самого mtprotoproxy.py... 1 Quote Link to comment Share on other sites More sharing options...
Kirill Yushkov Posted September 27, 2019 Share Posted September 27, 2019 1 час назад, UweStrich сказал: Эта конфигурация обеспечивает не только работу fake-tls на 443 порту, но также и обеспечивает "обратную совместимость" с более старой версией mtproto (секреты, начинающиеся с "dd"); работает она у меня уже несколько дней, и насколько могу судить - mtprotoproxy за nginx оказался даже более производительным, чем наоборот, как понимаю - в первую очередь из-за использования юникс-сокета во временной памяти: по "оценкам на глаз по пингу в Телеграмме" - где-то в полтора-два раза быстрее. У mtprotoproxy завышенное время пинга без подключения - это особенность работы. После подключения пинг уменьшается. https://github.com/alexbers/mtprotoproxy/issues/34 А nginx фронт это и делает. 1 Quote Link to comment Share on other sites More sharing options...
Kirya Posted February 3, 2020 Author Share Posted February 3, 2020 (edited) uvloop вошел в Entware. Так что теперь просто opkg install python3-uvloop и мы получаем ускорение. Edited February 3, 2020 by Kirya 1 Quote Link to comment Share on other sites More sharing options...
TheBB Posted February 3, 2020 Share Posted February 3, 2020 1 минуту назад, Kirya сказал: uvloop вошел в Entware. python3-crypt* тоже ))) 1 Quote Link to comment Share on other sites More sharing options...
Kirya Posted February 3, 2020 Author Share Posted February 3, 2020 2 минуты назад, TheBB сказал: python3-crypt* тоже ))) Это ещё в прошлом году было добавлено в инструкцию по установке :))) Вот как бы снова получить права на редактирование, чтобы подправить ? по Quote Link to comment Share on other sites More sharing options...
TheBB Posted February 3, 2020 Share Posted February 3, 2020 9 минут назад, Kirya сказал: Это ещё в прошлом году было добавлено в инструкцию по установке :))) не, не тестовые, а в репах, готовимся к удалению(?) ру2 10 минут назад, Kirya сказал: Вот как бы снова получить права на редактирование, чтобы подправить ? эт к администрации 1 Quote Link to comment Share on other sites More sharing options...
Kirya Posted February 3, 2020 Author Share Posted February 3, 2020 3 минуты назад, TheBB сказал: не, не тестовые, а в репах, готовимся к удалению(?) ру2 эт к администрации Ух ты, python3-cryptodome я сходу и не заметил. Сейчас затестим. И пойду писать админам... Quote Link to comment Share on other sites More sharing options...
Almi Posted February 7, 2020 Share Posted February 7, 2020 On 2/3/2020 at 10:31 PM, Kirya said: uvloop вошел в Entware. Так что теперь просто opkg install python3-uvloop и мы получаем ускорение. Сделал так ~ # opkg install python3-uvloop Installing python3-uvloop (0.14.0-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/python3-uvloop_0.14.0-1_mipsel-3.4.ipk Configuring python3-uvloop. ~ # при старте мтпрото получаю ошибку. Удаление python3-uvloop не помогает Traceback (most recent call last): File "/opt/root/mtprotoproxy/mtprotoproxy.py", line 1340, in <module> main() File "/opt/root/mtprotoproxy/mtprotoproxy.py", line 1287, in main try_setup_uvloop() File "/opt/root/mtprotoproxy/mtprotoproxy.py", line 171, in try_setup_uvloop asyncio.set_event_loop_policy(uvloop.EventLoopPolicy()) AttributeError: module 'uvloop' has no attribute 'EventLoopPolicy' Quote Link to comment Share on other sites More sharing options...
Kirya Posted February 7, 2020 Author Share Posted February 7, 2020 1. Почему-то у Вас не стартует uvloop 2. pip3 list что показывает по установленным питоновским модулям ? 3. opkg remove почему-то при удалении за собой оставляет неочищенными /opt/lib/python3.8/site-packages/uvloop и uvloop-0.14.0-py3.8.egg-info Для корректного удаления их нужно тоже грохнуть. 4. Странные у Вас номера строк mtprotoproxy. Вы давно его обновляли ? Quote Link to comment Share on other sites More sharing options...
Lstt Posted May 28, 2020 Share Posted May 28, 2020 Господа! Можно для тех, кто в танке...На сегодня (28.05.2020) - это работающий механизм? И на сером IP через KeenDNS? Quote Link to comment Share on other sites More sharing options...
Kirya Posted May 28, 2020 Author Share Posted May 28, 2020 Для серых IP с KeenDNS доменами решение на данный момент не найдено. На прямом ip всё работает на ура. Quote Link to comment Share on other sites More sharing options...
DennoN Posted May 29, 2020 Share Posted May 29, 2020 В 03.02.2020 в 22:56, Kirya сказал: Ух ты, python3-cryptodome я сходу и не заметил. Сейчас затестим. И как тесты прошли? uvloop все-таки лучше? Quote Link to comment Share on other sites More sharing options...
Kirya Posted May 29, 2020 Author Share Posted May 29, 2020 16 минут назад, DennoN сказал: И как тесты прошли? uvloop все-таки лучше? Тест в том сообщении был сравнении python3-cryptodome и python3-cryptography. Разница оказалась микроскопична. А uvloop - это замена на более быструю реализацию стандартного асинхронного питоновского сервера. Это про другое. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.