Category Archives: Сеть и интернет

linux: несколько IP на один NIC

Заметка, чтобы не забыть. Варварство без специфичных скриптов того или иного дистрибутива, с циничным пользованием deprecated утилит. Continue reading

Posted in Сеть и интернет | Tagged | Leave a comment

PPTP-клиент за NAT на основе Linux-сервера

Небольшая локальная сеть на несколько компьютеров получала доступ в интернет через сервер на базе CentOS 6 – обычным NAT маскарадингом через iptables. Обнаружилось, что в такой конфигурации по умолчанию невозможно поднять VPN-туннель PPTP (протокол – GRE) с компьютеров, находящихся за таким шлюзом. Continue reading

Posted in Сеть и интернет | Tagged , , | 1 Comment

icecast relay и редиректы

Сервер icecast может использоваться не только для организации вещания новых сетевых медиапотоков, но и для ретрансляции уже существующих. Источник исходного потока при этом может являться распределенной структурой других icecast-подобных серверов, в которых для распределения нагрузки на головном сервере может использоваться простой http-редирект (код 302) на дополнительные узлы.

Хотя relay-функциональность icecast и позволяет разбирать этот код и реагировать на него соответствующим образом, работает это не всегда. Continue reading

Posted in Сеть и интернет | Tagged , , | Leave a comment

Firefox: “Blocked: May contain a virus or spyware”

В отдельных ситуациях Firefox может возомнить себя намного умнее своего пользователя и напрочь блокирует возможность загрузки файлов с сайтов, которые его левой пятке захотелось посчитать небезопасными. При этом в окне загрузки отображается надпись вида “Blocked: May contain a virus or spyware”, и нет никакой наглядной возможности обойти эту блокировку. Continue reading

Posted in Сеть и интернет | Tagged , , | Leave a comment

OpenWrt, libiconv и Full Language Support

Бывают ситуации, когда в OpenWrt не хватает полной языковой поддержки. Особенно, когда дело касается работы с кириллицей в кодировке UTF-8. Для таких случаев в OpenWrt предусмотрена неурезанная версия библиотеки libiconv-full, а также глобальная опция Compile with full language support.

Вот только скомпилировав прошивку с данными опциями выясняется, что никакой поддержки кириллических кодировок как не было, так и нет. Continue reading

Posted in Сеть и интернет | Tagged , | 14 Comments

davfs2 и загрузка файлов в OpenWrt

В опубликованной на днях статье про резервное копирование в WebDav мы касались того, что davfs2 из репозитория OpenWrt не всегда способен успешно загружать файлы в удаленное хранилище, и зачастую они заканчивают свой путь в каталоге lost+found. При этом чтение файлов из WebDav, получение их атрибутов, а также и удаление – всегда работает корректно.

Как оказалось, эта проблема имеет простое решение. Continue reading

Posted in Сеть и интернет | Tagged , | 2 Comments

Резервное копирование в WebDav на OpenWrt

Рассмотрим возможность создания резервного копирования в облачное хранилище WebDav на примере Яндекс.Диска при помощи виртуальной файловой системы davfs2, утилиты cadaver и небольшого PHP-скрипта. Continue reading

Posted in Сеть и интернет | Tagged , , | 3 Comments

PHP, SQLite и регистронезависимость

Несмотря на объявленную поддержку UTF, встраиваемая СУБД SQLite3 по умолчанию не умеет делать регистронезависимую сортировку, сравнение и операции по преобразованию строк над буквами, не входящими в английский алфавит. Для решения этой проблемы разработчики SQLite рекомендуют использовать расширение ICU, с подключением которого станет возможным выбирать различные кодировки и иметь возможность пользоваться регистронезависимыми операциями сравнения любых символов кроме латиницы. Вот только описаний, как это сделать для php-mod-sqlite3, найти толком нельзя, да и объем ICU превышает размер самой библиотеки SQLite! Для embedded-применений – например, в OpenWrt – такое не годится. Continue reading

Posted in Сеть и интернет | Tagged , , | Leave a comment

Автоматизация загрузки файлов на WebDav

Ранее на страницах этого сайта рассматривалась возможность монтирования облачных WebDav-хранилищ при помощи fuse-системы davfs2. Одним из ее недостатков был тот факт, что при любых операциях над файлами они неминуемо копировались сначала во временную директорию, а лишь затем перемещались в целевой каталог.

Альтернативой davfs2 для прямого получения или загрузки файлов в облачное хранилище является утилита cadaver. Однако, она предполагает интерактивное взаимодействие с пользователем, и использование ее в автоматизированных скриптах не представляется возможным. Обойти эту проблему можно при помощи утилиты empty, аналога expect для создания и взаимодействия с псевдотерминалами. Continue reading

Posted in Сеть и интернет | Tagged , , , | Leave a comment

empty-expect и сборка под архитектуру PowerPC

Некоторые консольные приложения несмотря на интуитивную предрасположенность к скриптовой автоматизации предполагают интерактивное взаимодействие с пользователем, что напрочь убивает любые попытки составления простых скриптов для автоматического выполнения тех или иных действий с их помощью.

Для исправления ситуации существуют немногочисленные программы, позволяющие создавать своего рода псевдотерминалы, отслеживающие появление на консоли того или иного текста и позволяющие задать текст, автоматически отправляемый в ответ на данный текст. Типовым примером является утилита expect, требующая для работы интерпретатора tcl, или значительно более легкая и значительно менее известная утилита empty, заметно более подходящая для OpenWrt-роутеров. Continue reading

Posted in Сеть и интернет | Tagged , , | Leave a comment