?

Log in

No account? Create an account
Переусложнение
rustedowl
Недавно натолкнулся на банкомат, явно работающий на DOS. Значки, характерная псевдографика для рисования и анимаций - все указывало на это. Но больше всего меня в нем поразила скорость работы. По сравнению с теми девайсами которые стоят у Сбера или ВТБ - он молниеносен. Щелк! И готово.
Но написать этот пост меня заставило другое - включение переадресации в личном кабинете мегаfона. Все видели их личный кабинет? В 2004 году так загружались сайты, полностью написанные на тогда еще macromedia flash. Долго, но зато потом показывали всякие бесполезные красивости. А когда я попытался перейти по ссылке о стоимости переадресации, браузер пожаловался что переадресация выполняется способом, который никогда не будет закончен. И это чистый браузер, а не мой обычный, который безжалостно обдирает с URLов всякую дрянь типа utm_source и прочие следильники.
И так везде. Никто не пользуется CSS3 чтобы нарисовать выпадающее меню. Надо обязательно подключить этак три js-библиотеки как минимум. Я уже не помню, когда видел простой информационный сайт с текстом и четким перечислением возможностей. Нет, даже у какой-нибудь свободной софтины все обязательно анимировано, использует параллакс, пару-тройку сторонних шрифтов, пару-тройку следилок и предлагает во написать во все соцсети о том, что этот сайт был посещен. Когда я смотрю на статистику uMatrix, у меня волосы становятся дыбом - сайтов, которые сохраняют по две сотни кукис и загружает восемь десятков js становится все больше.
И... они не работают. Даже на чистом браузере нет никакой гарантии, что нормально отработает корзина интернет-магазина, или форма сообщений, или что угодно еще. Тот же мегаfoн - вы вводите телефон, пароль, нажимаете "войти"... и он СБРАСЫВАЕТ поля ввода, а дополнительно показывает капчу. Восхитительное юзабилити, определенно 18 js скачиваются с сайта не зря.
Но что хуже всего, этот подход заставляет отвлекаться. На все это мигалово, перекликалово, перехваты действий, поиск кнопки "поиск" уходит внимание, которое является ограниченным ресурсом.
И что со всем этим делать - я не знаю.

Приложение долго открывается - дебаг (Windows 10 RS5)
rustedowl
Пытаюсь открыть картинку (jpeg)
10 секунд - открывает.
Меняю аппликуху для открытия jpeg-файлов.
Пытаюсь открыть jpeg-файл
10 секунд - открывает

Удивляюсь.

Запускаю cmd.exe
Пишу в ней "iview.exe" "путь до файла"
Открывает мигом.

Думаю.

Удаляю в предыдущем варианте iview.exe
10 секунд - открывает

Достаю procmon из пакета Sysinternals
Создаю фильтр: все, что по duration больше 5 - на бочку.
Молчит

Убираю фильтр по duration, открываю jpeg и отключаю capture
Ищу резкий переход по времени.
Нахожу разрыв, где cmd уже отработал, но IrfanView еще нет.
Листаю то, что попало в этот разрыв.

Раз в секунду там появляется огромная простыня попыток процесса DWM.exe найти файлы openvr_api.dll, libovrrt32_1.dll, libovrrt64_1.dll (все это добро входит в Oculus Runtime, кстати)
После открытия IrfanView попытки прекращаются
Ведомый мрачным предчувствием создаю пустые файлики с этими именами в System32
IrfanView открывается мгновеннно.

Внимание, вопрос! На кой черт Windows Desktop Manager (DWM) ищет библиотеки шлема Oculus?!! И при чем тут графический просмотрщик вообще?

Полезное дополнение для сохранения Web-страниц (SingleFile)
rustedowl
В прошлом я уже упоминал, что данные в интернете хранятся совсем не так вечно, как думают большинство пользователей сети.
Недавно вновь разбирал закладки, и обнаружил что четыре из них "сдохли" за то время, которое лежали в папке "неразобранных", т.е. где-то за 4 месяца.
Поэтому, если что-то заслуживает сохранения, то производить его надо немедленно и оффлайн.
Раньше я пользовался дополнением "Save Page WE", но у него есть большой недостаток - он загружает страницу минуя блокировщики рекламы и тому подобное, поэтому чтобы не сохранять страничку с ссылками на яндекс-метрики и тому подобную хрень, его надо запускать через режущий рекламу прокси.
SingleFile такого недостатка лишен. Он сохраняет страницу именно в том виде, в котором вы ее видите на момент сохранения, с уже отрезанной uBlock'ом рекламой и даже примененными Stylish стилями, если они есть или почищенную в "читабельный вид" при помощи Tranquility.
Так же у этого дополнения есть множество других полезных особенностей, вроде сохранения только выделенной части текста или даже автоматического сохранения всех посещенных страниц.
А еще оно Open Source, с кодом лежащим на GitHub.

OpenVPN 2.4+ личный гайдлайн
rustedowl
Коллега попросил поделиться своими личными best-practice по использованию OpenVPN. Причем с нуля.
Поэтому я и написал сей гайдлайн. Замечу, что я рассматриваю OpenVPN версии старше 2.4.0, где XP уже не поддерживается, зато в остальных ОС появились очень приятные плюшки.
Read more...Collapse )

OpenVPN и NAT через TUN
rustedowl
Дано:
Сервер OpenVPN, 10.8.0.1
Клиент OpenVPN, 10.8.0.3
Второй клиент OpenVPN, 10.8.0.100
Все это добро работает через TUN.

Задача:
Сделать так, чтобы клиент 10.8.0.3 NATился в инет через 10.8.0.100

Решение:
Использовать CCD (client-config-dir) и для клиента 10.8.0.100 указать "iroute 0.0.0.0 0.0.0.0" и только после этого настраивать NAT. Иначе пакеты пойдут к шлюзу по умолчанию - на 10.8.0.1

Вот такой грязный хак.

Через TAP все работает и так, поскольку таблица маршрутизации формируется ядром, а не демоном OpenVPN.

Удаленное управление под Android (замена сервера VNC)
rustedowl
Время от времени приходится сталкиваться с задачкой - у пользователя телефона что-то случилось, и чтобы в полной мере оценить глубину проблемы, требуется удаленное подключение к экрану устройства, а еще лучше - удаленное управление.
Во времена Android 2 я этим не заморачивался, но тогда был DroidVNC, прекрасно работавший.
После, для родственников и друзей, которые рискнули отдавать свои телефоны в мои цепкие ручки, я использовать VMLite VNC Server. Всем "хорош" - платный, требует ROOT-прав, привязывается к Google-аккаунту (а я гугл со своих телефонов выпиливаю нахрен), но свое дело он делал. Даже можно было изощриться и настроить его так, чтобы он делал Reverse Connect одним кликом (виджет, запускающий скрипт, запускающий сервер с параметрами. Прелесть!)
Однако, последняя версия аппликухи поддерживает только Android 7.1 и обновляться, судя по тому что ее уже нет в Google Play, не собирается. Пришлось искать альтернативы.
Других VNC-серверов не обнаружилось. Непопулярная, видимо, штука. Ну еще бы - учитывая что сейчас осталось только два производителя нормальных (по качеству и доступности в продаже) телефонов, чьи устройства можно рутовать без паяльника.
TeamViewer-host имеет два фатальных недостатка. Во-первых, лотерея - поддерживается устройство или нет, а во-вторых, он работает только через свое облако, надо регистрировать его на почту и, кажется, даже платить.
Vysor - платный, причем по подписке (уже нахрен) и использует браузер в качестве клиента (нет, точно нахрен).
И, наконец, то ради чего я и решил написать этот пост.

Прекраснейший, опенсорсный, мультиплатформенный SCRCPY. Работает через ADB. БЕЗ РУТА!!! Скорость работы по проводу - ощутимо быстрее чем VNC, через ADB over TCP не пробовал, но вполне возможно что будет не хуже.
Для работы не требует практически нифига - под винду вообще есть бинарник, запустил и юзай.
Помимо удаленного управления позволяет ставить приложения (нужно перетащить apk на окошко телефона), будить уснувший телефон одним щелчком правой кнопки (как я с этим задолбался в прошлом!) и много других полезных вещей, читайте инструкции!
Единственное требование к использованию помимо Android 5+ - это включенный ADB. То есть, даже ставить ничего не надо. Программа сама поставит на телефон свой бинарник при установке соединения и сама удалит его после.
Так что - рекомендую к использованию.

Вы еще не используете DNSCrypt? Скоро начнете...
rustedowl
Сегодня впервые столкнулся с DNS-poisoning на уровне провайдера. Обычно при попытке получить адрес заблокированного сайта с DNS-сервера, отдается провайдерская заглушка, но тут ребята пошли дальше. Даже если запросить nslookup'ом вполне конкретные серверы, вроде 8.8.8.8 или 208.67.222.222 возвращает те же самые неправильные адреса. И ладно бы они какой-нибудь рутрекер блокировали, но в "запрещенные и экстремистские" входит, страшно сказать, 7-zip.org
Возможно у ребят прописаны статика на все стандартные публичные DNS-сервера, а может у них продвинутая DPI-ка, которая переписывает DNS-запросы на лету. Но факт остается фактом - без DNSCrypt или VPN нынче никак.
И да, страна должна знать своих героев. Провайдер - петербургский SmartHome.

Ремонт ноутбука (реклама и антиреклама, уж кто как заслужил)
rustedowl
Некоторое время назад у меня время автономной работы в моем Acer Aspire V5-572G упало до удручающих величин в 10-15 минут. Диагноз ясен - пора менять батарейку.

И началась опупея...Collapse )

Офигения псто (техподдержка DELL)
rustedowl
Приобрел ноут Dell Latitude E6230, для своих скромных админских нужд. Ноут довольно старый, 2013 или 2014 года выпуска. Ну, естественно, первым делом я полез на сайт Dell чтобы выкачать последнюю версию BIOS. Все в курсе, что обычно сайты вендоров бесполезны, и дрова на них едва ли не старше самих ноутбуков.
Каково же было мое удивление, когда я увидел что собой представляет сайт техподдержки Dell! Они выкладывают ВСЕ новые драйвера и утилиты, в том числе и под новые ОС (на ноуте была наклейка Windows 7). И под "все" я имею в виду и те, что не принадлежат Dell'у - драйвера для видеокарты, драйвера чипсета, драйвера звуковухи... блин, они даже выкладывают прошивки SSD для тех моделей, с которыми ноут поставляется! И все свежайшее - скажем, драйвер чипсета - от 1.03.2018, драйвер тача - 10.04.2018.
В общем, я приятно удивлен.

DtDNS - всё. А жаль.
rustedowl
Сегодня мне сервис dtdns.com прислал сообщение, что он прекращает работу с 1 августа. Я пользовался их нахалявным динамическим DNS довольно-таки давно, и последние годы у них даже вебсайт тормозил по-черному. Видимо, это надоело и самим владельцам.
Кто что может посоветовать на замену? Требований три - бесплатный (либо с однократной оплатой) сервис, не требующий выставления альтернативного DNS-сервера и позволяющий легко менять IP-адрес с помощью HTTP-запросов. Делегированный на Яндекс домен не предлагать :)