Клиенты Билайн видят друг друга в мобильной сети
Вчера обнаружил, что мобильники, по крайней мере те, что расположены в пределах одной соты видят друг друга по внутреннему IP адресу присвоенному оператором. Я сейчас пишу простенькую программу которая представляет собой простенький HTTP сервер. Так вот, - если запустить такой сервер на одном телефоне - то другой телефон зарегистрированный в сети Билайн видит мой телефон по его внутреннему IP. Проверял на двух телефонах коллег в офисе - на обоих сработало. Причем, у всех телефонов подсети были разные.
Данный факт открывает много интересных возможностей. Например, можно напрямую передавать данные с вебкамеры одного телефона на другой с минимальной задержкой минуя всякие прокси сервера. При этом, существует огромное количество клиентов для динамического DNS так что даже IP адрес не придется каждый раз узнавать....
Нужно будет еще проверить - работают ли широковещательные запросы - а вдруг?
BitTorrent Sync
Если у вас есть здоровая доля паранойи - то рано или поздно вы зададите себе вопрос - а так ли вам нужен DropBox или Google Disc или Yandex Disk или аналогичные сервисы? Конечно, вряд ли кто-либо будет специально копаться в ваших личных файлах, но... Во первых, эти системы как правило, в своих условиях использования, оставляют за собой право использовавать ваши данные как им заблагорассудится. Во вторых, никто не гарантирует вам, что завтра вы проснетесь а вся информация с вашего аккаунта попросту не исчезнет, заодно испортив операционную систему на вашем компьютере, ну, мало-ли, технический сбой произошёл. Или проект, просто не решат закрыть по причине нерентабельности, мало ли...
Чтобы не связываться с третьими лицами можно развернуть свою облачную синхронизацию папок по технологии BitTorrents Sync. При этом данные будут синхронизироваться только между вашими устройствами и больше никакими. При этом объем пересылаемых данных неограничен а ваши файлы можете видеть только вы. Весь трафик между вашими устройствами шифруется при помощи стойких алгоритмов шифрования. В настоящее время существуют клиенты для Linux, Window, Mac OS. Приложение можно поставить на сетевые роутеры на базе Линукс с процессорами ARM. В общем, полный коммунизм...
Неделю назад поставил btsync на свои машины и телефон - пока полет нормальный. Данные в папках синхронизируются. Причем, даже в том случае если устройства находятся за мощными файерволами и не имеют прямой связи. Правда, в этом случае синхронизация происходит медленнее, так как осуществляется через шлюз третих лиц. Для исправления этого недостатка я расшарил свои папки на VDS сервере.
Интересно, что, для адресации папки используется двадцатибайтное случайное слово. Любой, кто знает это слово, теоретически, может получить себе копию этой папки. Например, сообщив своим друзьям секрет папки и положив туда свои любимые треки можно делиться с ними музыкой или фильмами... Правообладателям такая технология может сильно не понравиться...
Правда, есть и обратная сторона - что делать если вы потеряете свое мобильное устройство? Эще напрягает то, что сам проект проприетарный, а значит, об открытых исходниках речь не идет, а значил, теоретически, создатели BitTorrent Sync вполне могут оставить в приложении закладочку... Так, на всякий случай...
Программка для закидывания ключа на сервер
SSH позволяет заходить на сервер без пароля, для этого нужно на удалённом сервере добавить содержимое своего отрытого ключа в файл ~/.ssh/authorized_keys.
Заметил, что, каждый раз, чтобы закинуть ключ на сервер приходится заходить в свой старый пост, чтобы подсмотреть команду:
> cat ~/.ssh/id_rsa.pub | ssh username@servername.ru \ 'cat >> .ssh/authorized_keys'
Не так сложно запомнить короткую команду, но набирать это каждый раз ручками нереально, учитывая, что ежедневно приходится иметь дело с большим числом серверов. Работу компьютера должны делать компьютеры. И вот, чтобы каждый раз не совершать много лишних телодвижений сделал себе вот такой файл:
#!/bin/sh cat ~/.ssh/id_rsa.pub | ssh $1 'cat >> .ssh/authorized_keys'
Теперь, чтобы закинуть ключ на сервер достаточно набрать:
> ./sshfriend.sh username@servername.ru
OpenSource растеризатор для SVG файлов
Нашёл качественный растеризатор SVG файлов.