Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Поднимайтесь как можно выше по дереву, собирайте цветы и дарите их близким.
Вас ждут уникальные награды и 22 выгодных промокода!

Пикаджамп

Аркады, Казуальные, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 40 постов
  • unimas unimas 13 постов
  • hapaevilya hapaevilya 2 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
10
kst2002
8 лет назад

Домашние вкусняшки на малине сорта raspberry pi⁠⁠

Домашние вкусняшки на малине сорта raspberry pi Raspberry pi, Умный дом, Программирование, Робототехника, Длиннопост

Этот маленький комп неспроста так быстро и широко разошёлся по всему белу свету. Маленький, достаточно шустрый, непрожорливый (потянет даже зарядка от мобильника) девайс за недорого. К тому же, слыхать, уже в наличии клоны за ещё более недорого. Я, старый автоматизатор, знаю цену таким вещам. Вот прям сейчас, далеко ходить не надо, на столе валяется процессор Beckhoff cx9020:

Домашние вкусняшки на малине сорта raspberry pi Raspberry pi, Умный дом, Программирование, Робототехника, Длиннопост

Это тоже по сути своей комп примерно такого же размера как малина (если не считать конструктив), CPU ARM 600мГц, 512мБ RAM, в общем похож на старую версию R-PI. Он давно валяется и никто не помнит почём его брали. В инете у всех все цены по запросу, как сговорились. Вот [здесь](http://www.dom-intel.ru/magazin/oborudovanie/kontrollery/bec...) не постеснялись обозначить цену на похожий, но более слабый комп: без малого 110 косарей просят на момент написания поста!

Ладно, к чёрту Beckhoff, есть у меня где-то наш аналог - питерский fastwell. Не поленился, нашел, вот он:

Домашние вкусняшки на малине сорта raspberry pi Raspberry pi, Умный дом, Программирование, Робототехника, Длиннопост

Тут тоже arm на 600мГц, памяти сколько не помню, а эзернета вообще нет. Но всё равно будем считать где-то рядом с малинкой. В районе 40 тыр, если мне гастрит не изменяет, стоили они год назад (уточнил - 41726 с ндс). Плюс срок поставки примерно месяц, т.к. в питере только магазин, а производят их сами понимаете где. Вот так то.

Можно поискать и найти у нашего, к примеруБ овена ПЛК в разы дешевле, но я искал с соизмеримыми с малиной параметрами, поэтому прочее не в счёт.

К чему я это? Я, повторюсь, спец по автоматике, поэтому смотрю на малину как на ПЛК - программируемый логический контроллер. И поэтому искал похожее на рынке ПЛК. Если оценивать на малину как медиаплейер, то, возможно, на рынке медиа-девайсов она будет не так выгодна, не знаю ибо не меломан.

Итак, ПЛК - это тот ракурс, в котором мне хотелось бы посмотреть на сей сабж в свете его технико-экономических достоинств.

Что можно сотворить из маленького шустрого ПЛК не сразу окинешь взглядом. Тут, как говорится, редкая птица до середины долетит. Можно очертить только сферически - хобби-конструирование (роботы, самолётики и тп) ну и всякая разная домашняя автоматизация. Промышленную не рассматриваю, т.к. могут полететь помидоры, зачем мне это (я хоть и сравнивал по ценам с бэкхоффом, но прекрасно понимаю, что малину как она есть в шкаф промобъекта никто не поставит, 'не положено' как в армии говорят).

А раз домашняя, то малина в двойном плюсе и вот почему. Первый плюс - малую цену - мы уже видели.

Второй плюс. Обладая высокой производительностью, мы получаем доступ к классу средств разработки для дорогих и 'настоящих' ПЛК. Я имею в виду языки программирования стандарта МЭК 61131-3 :

Домашние вкусняшки на малине сорта raspberry pi Raspberry pi, Умный дом, Программирование, Робототехника, Длиннопост

На картинке выше среда разработки CODESYS, в которой можно кодить как раз на таких языках.


С++ или МЭК?


Чем языки МЭК лучше С++ или питона, спросят многие. Ну, если программа простая, просто ножками подёргать для курсовой, то ничем не лучше. Но сложная программа (читай - прикладная, т.к. любой практически ценный труд неизбежно обрастает сложностями) требует от разработчика продвинутых навыков и хороших средств отладки. Матёрый программер справится и на gcc, кто бы спорил. Но если человек хочет за неделю вкурить теорию и через две уже что-то получить на выходе, то подобные инструменты ему, как говорится, доктор прописал. Т.е. если есть некий порог вхождения, то для МЭК он заметно ниже.

Это можно почувствовать на таком примере. Допустим, вы приобрели малину и захотели создать простейшую C-программку, мигающую светодиодом:


#include <gpio.h>


int main(void) {

bool led;


gpioInit(/*здесь должны быть данные инициализации ножек GPIO*/);

while(1) {

gpio_write_do(1 ,led);

led = !led;

usleep(100);

}

return 0;

}


Этот код 10 раз в секунду изменяет состояние 1-го пина GPIO. Если вы никогда не программировали на С, то тут мало что понятно. А что писать в строке gpioInit вместо комментария непонятно вообще никому, кто не ознакомился со спецификой библиотеки поддержки GPIO.


Теперь вот как это будет выглядеть на мэковском языке FBD:

Я думаю, комментарии излишни.

Показать полностью 3
[моё] Raspberry pi Умный дом Программирование Робототехника Длиннопост
8
43
vivaos
vivaos
8 лет назад
Arduino & Pi

Пост взаимопомощи в суровом мире электронных устройств⁠⁠

Господа, очередной пост "ВиО" для взаимного решения ваших проблем в работе с Arduino или Raspberry Pi. Знающие - подсказываем, не знающие - спрашиваем! :)

Пост взаимопомощи в суровом мире электронных устройств Arduino, Raspberry pi, Помощь, Вопрос-ответ, Бойцовский клуб (фильм)
Показать полностью 1
Arduino Raspberry pi Помощь Вопрос-ответ Бойцовский клуб (фильм)
60
252
XameleoH
XameleoH
8 лет назад
Arduino & Pi

2Din магнитола на Raspberry PI (часть 4)⁠⁠

Всем привет! Давно не было статьи, но это не значит что проект заглох. Банально не хватает времени и нервов ждать некоторые компоненты с алика

ну ничего по итогу сделано не мало так что наслаждайтесь (напомню что все кнопки иконки и тд не конечный результат их можно заменить, переместить и исправить)


Самый главный ПОДВИГ это то, что я дождался длинный шлейф для соединения экрана с малиной!

т.к он шел ко мне больше месяца до этого я из старого шлейфа намудрил фигни чтоб хоть как то поставить ГУ

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

вот он долгожданный 16-ти контактный 30 см шлейф


как только пришел шлейф пошел менять старый на новый

соответственно ГУ у меня уже стояла в машине почти 2 недели

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

подключил новый шлейф


теперь я спокойно если что, могу снимать панель с экраном не боясь оторвать шлейф, который раньше был очень короткий и с одной стороны был приклеен на клей.


установил панель с экраном на место

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

вывел провод программирования Atmega 168 в бордачек если вдруг нужно будет изменить что либо в прошивке


сделал переходник для программирования атмеги через усб

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

к самой малине подключаюсь через телефон по Фи-Фи



так и не много то что уже сделано:

переключение между экранами AUX/радио/блютус/настройками/

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

конечно же это не все что будет, в конечном итоге просто еще больше половины не сделал


ну и то что имеем во вкладках на данный момент:

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

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

Экран блютус содержит в себе пока что 3 кнопки переключение песен: вперед, назад и пауза/плей

Есть возможность переключать песни с руля(!) блютус к телефону подключается автоматически при включении зажигания черт возьми это очень удобно, КАРЛ! Я забыл что такое доставать телефон из кармана подключать провод заходить в плеер и искать песни.

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

Экран Радио! тут все как у обычных смертных только пока что нет авто поиска (но до него не далеко)

можно сохранять станции и кнопками на руле переключатся между сохраненными.

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

так же на данный момент есть иконка громкости

если на него нажать вылезет ползунок который в диапазоне от 0-40 убавляет или прибавляет громкость.

так же громкость можно регулировать и выключать звук в 0 на руле

2Din магнитола на Raspberry PI (часть 4) Машина, Mitsubishi, 2din, Магнитола, Головное устройство, Звук, Raspberry pi, Длиннопост, Mitsubishi Lancer

Есть еще функция приглушенной подсветки пока что она не автоматическая включается и выключается на экране (иконка в виде солнышка рядом с громкостью )


на данный момент

работаю над :

подключением к can шине

камерой заднего вида

воспроизведение видео/музыки с USB носителей

подключение к интернету через ви фи телефона

поставить часы реального времени, так как пока не подключишься к нэту время остается старым.

и многое другое)

Показать полностью 9
[моё] Машина Mitsubishi 2din Магнитола Головное устройство Звук Raspberry pi Длиннопост Mitsubishi Lancer
54
296
krugmad
8 лет назад
Arduino & Pi

Управление освещением с помощью Siri⁠⁠

Всем привет! Хочу рассказать о своем «умном доме», а именно о взаимодействии Siri (голосового помощника iOS) и сенсорных выключателей с радиоуправлением Livolo.

Начну издалека) Идея управления выключателями с помощью Siri приходила в несколько этапов.

Управление освещением с помощью Siri Siri, Умный дом, Raspberry pi, Livolo, Микроконтроллеры, Длиннопост

Пару лет назад я заказал на Али дистанционный блок управления (ДБУ) выключателями, он монтируется непосредственно в люстру, имеет пульт с 3 каналами управления. Плюсом было то, что теперь не нужно было вставать с кровати, чтобы выключить свет, но был и один огромный минус – настенный выключатель всегда должен был быть включен, т.к. коммутация происходила именно в ДБУ. Но я был вполне доволен, с учетом того что данный блок стоил всего лишь 6,5 баксов.

Кроме того, я наладил веб-сервер с управлением ДБУ с помощью Arduino, поиграл немного с управлением с помощью телефона, но активно не пользовался, т.к. это было крайне неудобно, проще дотянуться до пульта, чем лезть в браузер телефона.

Управление освещением с помощью Siri Siri, Умный дом, Raspberry pi, Livolo, Микроконтроллеры, Длиннопост

После этого мне на глаза попался сенсорный выключатель Livolo, я заказал радиоуправляемый выключатель и пульт (Не реклама, это просто тот выключатель который я заказал). В отличии от ДБУ выключатель монтируется в стену и совмещает в себе функции обычного выключателя и радиоуправление. Я поменял все стандартные выключатели в квартире на выключатели Livolo. Очень доволен и пользуюсь по сей день, нравится то, что они практически бесшумные, не надо прикладывать никаких усилий для включения и выключения, на один пульт можно привязать до 3 выключателей. Сейчас у меня 4 выключателя и 2 пульта. Единственный недостаток это то, что если хочется воспользоваться пультом, его надо иметь при себе, а он имеет свойство теряться.

Управление освещением с помощью Siri Siri, Умный дом, Raspberry pi, Livolo, Микроконтроллеры, Длиннопост

Тогда я решил интегрировать управление выключателями в homekit и управлять ими с помощью Siri, потому что у меня, как правило, телефон всегда под рукой или в радиусе видимости, функция «Привет, Siri» очень кстати. Вот тут мы и подошли к самой теме поста.

Дружил я Siri и Livolo в 3 этапа.

1. Купил Raspberry Pi3. Raspberry Pi3 - это самая затратная часть умного дома, 35-40 баксов в принципе не очень дорого, но девайс определенно стоит своих денег. Он используется в качестве сервера автоматизации homekit. Способ установки homebridge на RPi3 подробно описан на гитхабе (ссылка на первоисточник: https://github.com/nfarina/homebridge/blob/master/README.md). С RPi3 можно подружить практически любой, даже самый дешевый датчик, еще один плюсик малинке.

2. Подключил RF передатчик к RPi3. Передатчик заказал на Али за 1 бакс еще во времена использования ДБУ. Livolo сделали весьма замороченное управление своими выключателями, разбор посылаемого сигнала разложен на хабре «Зубочистка-детектив раскрывает секрет радиопротокола». На его базе написан скрипт на Pythone ( ссылка на первоисточник: https://github.com/midorineko/rpi_automation/blob/master/livolo.py).

Загружаем скрипт (мой скрипт слегка отредактирован под мои нужды) в домашнюю директорию RPi3 и начинаем тестить с помощью запуска из командной строки. Хочу заметить, что до малинки я никогда не пользовался Linux, что являлось еще одной дополнительной трудностью.

Управление освещением с помощью Siri Siri, Умный дом, Raspberry pi, Livolo, Микроконтроллеры, Длиннопост

3. И самый важный этап: подружить скрипт Python с homebridge. Работает это так: Siri получает команду на включение света – homebridge запускает скрипт. Для возможности запуска скрипта python установил cmd плагин для homebridge (ссылка на первоисточник: https://github.com/luisiam/homebridge-cmdswitch2). После редактирования файла config.json получаем интегрированное в homekit управление выключателями.

После завершения всех действий добавляем homebridge в автозагрузку RPi3. Теперь мы имеем готовое решение для управления выключателями с помощью Siri.


П.С. 1) Пикабушники, подскажите, ПЛИЗ, на каком ресурсе можно создать блог, где я мог бы описывать свою реализацию «умного дома»?

2) В связи с маленьким рейтингом не могу добавить видео. Было бы кому-нибудь интересно его посмотреть (я его еще и не делал) ?

3) Мой первый пост, за косяки извиняйте )

Показать полностью 4
[моё] Siri Умный дом Raspberry pi Livolo Микроконтроллеры Длиннопост
61
15
igurug
igurug
8 лет назад

Спасибо, Raspberry Pi! У моего сына будет классное детство :)⁠⁠

Спасибо, Raspberry Pi! У моего сына будет классное детство :)
[моё] Детство Raspberry pi
30
84
mr.GreyWolf
8 лет назад
Arduino & Pi

Проигрыватель на базе Raspberry Pi 3 модель B (часть 4)⁠⁠

Очередная порция доработок проигрывателя.


Это продолжение, начало здесь: часть 1, часть 2, часть 3.


Теперь прототип имеет следующий вид:
Проигрыватель на базе Raspberry Pi 3 модель B (часть 4) Raspberry pi, Kodi, Osmc, Длиннопост

Как видно из фото, для того, чтобы разместить розетку для подключения кабеля питания я перенёс блок питания и релейный включатель/выключатель питания.


Также я установит панель с разъёмами:

Проигрыватель на базе Raspberry Pi 3 модель B (часть 4) Raspberry pi, Kodi, Osmc, Длиннопост

Ethernet Удлинитель (30 см)

Проигрыватель на базе Raspberry Pi 3 модель B (часть 4) Raspberry pi, Kodi, Osmc, Длиннопост

HDMI Удлинитель (30 см)

Проигрыватель на базе Raspberry Pi 3 модель B (часть 4) Raspberry pi, Kodi, Osmc, Длиннопост
Запрессованные гайки под дюймовую резьбу, поэтому мне пришлось искать винты от HDD, они конечно были найдены, шлиц под биту Torx t8.

Также я сделал переходник с Jack, диаметр 3,5 мм, 4 контакта на розетки RCA. Подробно о разъёме для передачи  аналогового звука/изображения у Raspberry Pi 3 модель B здесь.

Проигрыватель на базе Raspberry Pi 3 модель B (часть 4) Raspberry pi, Kodi, Osmc, Длиннопост
Подробная техническая информация доступна на этой странице.
Показать полностью 5
[моё] Raspberry pi Kodi Osmc Длиннопост
24
69
cusdeb
cusdeb
8 лет назад
Arduino & Pi

Как сделать Raspberry Pi доступным из любой точки мира⁠⁠

Введение


В прошлой статье я рассказал о том, как развернуть домашнее облачное хранилище на базе подготовленного командой cusdeb.com образа для Raspberry Pi 2 и 3 с предустановленным Nextcloud 11 (кстати, совсем недавно мы обновили образ до 12-й версии), а прямо сейчас я расскажу о том, как делать сервисы наподобие Nextcloud доступными извне. Несмотря на то, что на протяжении всей статьи упоминается Raspberry Pi, ничего из сказанного здесь не ограничивает вас в использовании любого другого устройства.


«Белые» динамические и статические IP-адреса


Все IP-адреса протокола IPv4 делятся на «белые» (более формально – публичные, глобальные или внешние) и «серые» (более формально – частные, локальные или внутренние). К устройству с «белым» IP-адресом можно получить доступ из любой точки мира, т.к. «белые» IP-адреса маршрутизируются в Интернете, в отличие от «серых» IP-адресов.

«Белые» IP-адреса, в свою очередь, делятся на динамические и статические. Динамические «белые» IP-адреса являются сегодня большой редкостью, но если вам все-таки повезло, то у вас есть возможность с небольшими трудозатратами абсолютно бесплатно сделать свой RPi (или любую другую машину) доступным через Интернет. Дело в том, что сервис NO-IP позволяет зарегистрировать домен третьего уровня и посредством специального клиентского ПО в фоновом режиме отслеживать изменение вашего динамического IP-адреса и при необходимости обновлять DNS, чтобы ваша машина была всегда доступна по зарегистрированному вами домену.

Если у вас по той или иной причине нет динамического «белого» IP-адреса, то почти наверняка у вас есть возможность купить у вашего провайдера «белый» статический IP-адрес. На самом деле это является наиболее надежным и наименее трудозатратным решением. Вот расценки трех провайдеров, которые у меня всегда на слуху.

* ТТК – 250 руб. в месяц

* Ростелеком – 50 руб. активация и 100 руб. в месяц

* Дом.ru – 450 руб. активация и 20 руб. в месяц


Если вы являетесь клиентом провайдера Дом.ru, то не спешите покупать у него статический «белый» IP-адрес, т.к. у вас определенно есть возможность получить динамический «белый» IP-адрес абсолютно бесплатно. Для этого убедитесь в своем личном кабинете, что у вас выключен NAT.


Проброс портов


Этот этап необходимо пройти в том случае, если у вас есть «белый» IP-адрес (вне зависимости от того, динамический он или статический). Основная идея здесь заключается в том, чтобы маршрутизатор, который стоит перед вашим RPi, принимал все запросы, а затем передавал их одноплатнику. Для каждого маршрутизатора эта процедура выглядит по-разному, и в Сети можно легко найти описание той, которая будет применима именно для вашего маршрутизатора. Вот как она выглядит для моего ZyXEL Keenetic DSL.

Для начала нужно назначить RPi статический адрес в локальной сети, чтобы при перезагрузке устройства маршрутизатор случайно не дал ему IP-адрес отличный от предыдущего. Для этого переходим на страницу «Домашняя сеть» и на вкладке «Устройства» выбираем свой RPi, подключенный к локальной сети. В появившемся диалоговом окне ставим галочку напротив «Постоянный IP-адрес».

Как сделать Raspberry Pi доступным из любой точки мира Raspberry pi, Своими руками, Длиннопост, Начинающий
Теперь можно выполнить сам проброс портов. Для этого переходим на страницу «Безопасность» и на вкладке «Трансляция сетевых адресов (NAT)» добавляем новое правило. В появившемся диалоговом окне указываем «Broadband connection (ISP)» в качестве «Интерфейса». Теперь все зависит от того, какой сервис нужно сделать доступным извне. В данном конкретном примере я рассмотрю Nextcloud, до которого в моей локальной сети можно дотянуться по адресу http://192.168.1.37:8001/nc. Таким образом, указываем «TCP» в качестве «Протокола» и говорим, что все запросы, которые приходят на 80-й порт маршрутизатора, нужно передавать на http://192.168.1.37:8001.
Как сделать Raspberry Pi доступным из любой точки мира Raspberry pi, Своими руками, Длиннопост, Начинающий
После этого сервис будет доступен через <белый IP-адрес>/nc без указания номера порта 8001. Если используется «белый» статический IP-адрес, то на этом можно остановиться. В данном случае последним штрихом может стать только регистрация домена, к примеру, на domain.com. Если же используется «белый» динамический IP-адрес, то сервис будет доступен до тех пор, пока не поменяется этот IP-адрес. Таким образом, необходимо воспользоваться услугами сервиса, предоставляющего услуги динамического DNS. В данной статье я предлагаю воспользоваться NO-IP.


NO-IP


Для начала работы с NO-IP перейдите на страницу регистрации, создайте Free'шную учетную запись, зарегистрируйте там же домен третьего уровня и активируйте вашу учетную запись. В качестве доменного имени я выбрал denismosolov.ddns.net. Также рассмотрите апгрейд вашего аккаунта с Free до Enhanced, иначе вам потребуется подтверждать ваш домен каждый месяц. (Тем не менее, лично мне цена $24.95 в год за эту услугу показалась слегка завышенной.) После этого я могу получать доступ к сервису, который крутится на моем устройстве, через denismosolov.ddns.net, но проблема с динамическим IP-адресом все еще остается актуальной. Для того чтобы RPi всегда был доступен по зарегистрированному домену, на него необходимо поставить специальное клиентское ПО. Если вы используете Raspbian, Debian, Ubuntu или любой другой дистрибутив GNU/Linux на своем одноплатнике, то я не рекомендую тратить время на официальный клиент от NO-IP под названием DUC (DNS Update Client). Во-первых, он не обновлялся с 2008-го года, а во-вторых, есть универсальное решение – inadyn, которое на данный момент поддерживает 25 сервисов, предоставляющих услуги динамического DNS, в числе которых NO-IP. К сожалению, несмотря на то, что пакет с inadyn есть в Debian и Ubuntu, он недостаточно актуален, хотя и поддерживает NO-IP в полной мере. Я предлагаю воспользоваться подготовленным мною Docker-контейнером с самой свежей версией inadyn или собрать контейнер самостоятельно, воспользовавшись проектом cusdeb-services.

Для того чтобы воспользоваться готовым контейнером, клонируйте проект, перейдите в поддиректорию inadyn этого проекта, раскомментируйте блок default@no-ip.com в конфигурационном файле inadyn.conf, добавьте в него параметры своей учетной записи и выполните docker-compose up.

$ git clone https://github.com/tolstoyevsky/cusdeb-services.git

$ cd cusdeb-services/inadyn

$ nano inadyn.conf

$ docker-compose up


После того как вы убедитесь в том, что клиент нормально стартовал и не жалуется на конфигурационный файл, который вы ему подсунули, убейте текущий интерактивный процесс и перезапустите контейнер командой docker-compose up -d. Теперь ваше устройство будет доступно из любой точки мира через Интернет.


IPv6-туннель


Я попытался сделать статью как можно более универсальной и на любой вкус, поэтому решил не останавливаться на паре описанных выше способах решить проблему доступности устройства через Интернет. Дело в том, что есть еще один способ – сделать свой сервер IPv6-only, но в этом случае у клиентов почти наверняка возникнут проблемы с доступом к нему, т. к. их провайдер до сих пор не сделал и шагу в сторону IPv6. Тем не менее, я расскажу об этом подходе, т. к. считаю, что в некоторых случаях он может оказаться очень полезным. К примеру, если вы поднимаете не массовый сервер и знаете своих клиентов в лицо. В этом случае вы можете раздать им простую инструкцию, которая бы рассказывала, как (бесплатно) воспользоваться услугами туннельного брокера для доступа к вашему и другим IPv6-only сервисам.

Для начала предлагаю убедиться в том, что вы все-таки не можете обращаться к IPv6-only сервисам, иначе все описанное далее будет для вас абсолютно бесполезным. Выполните на своем устройстве ping6 ipv6.test-ipv6.com. Если ответом стало «connect: Network is unreachable», то придется читать дальше. Если ipv6.test-ipv6.com все-таки пингуется, то поздравляю – или ваш провайдер поддерживает IPv6, или вы уже настроили работу с IPv6-only сервисами через туннельного брокера.

Teredo – это один из способов настройки поддержки IPv6 на компьютере, имеющем адрес IPv4. Teredo позволяет получить IPv6-туннель даже тем клиентам, которые выходят в Интернет через провайдерский NAT (т. е. имеют «серый» IP-адрес). Несмотря на то, что Teredo разрабатывался Microsoft только для Windows, существует реализация клиента под названием Miredo для Linux и других Unix-подобных операционных систем. Если вы используете на своем одноплатнике Raspbian, Ubuntu или любой другой Debian-подобный дистрибутив GNU/Linux, то установите Miredo следующей командой.

$ sudo apt-get install miredo

Теперь ping6 ipv6.test-ipv6.com должен возвращать ожидаемый результат. Вот так все просто. IP-адрес, который вы получили, является по определению «белым». Теперь вместо проброса портов нужно только открыть UDP-порт 3544. Дело в том, что Teredo инкапсулирует пакеты IPv6 в заголовках IPv4 и использует UDP-порт 3544 для передачи этих пакетов. Процедура открытия того или иного порта варьируется от маршрутизатора к маршрутизаторы. Вот как она выглядит для моего ZyXEL Keenetic DSL. Сначала переходим на страницу «Безопасность», а затем на вкладке «Межсетевой экран» добавляем новое правило, открывающее UDP-порт 3544.

Как сделать Raspberry Pi доступным из любой точки мира Raspberry pi, Своими руками, Длиннопост, Начинающий

Для того чтобы достучаться до вашего устройства, ваши клиенты могут также установить Miredo в любой Unix-подобной операционной системе (включая macOS) или настроить Teredo в Windows, но сейчас остаются нерешенными две проблемы:

* в данном конкретном случае IPv6-адрес зависит от IPv4-адреса, поэтому является динамическим (если конечно IPv4-адрес динамический)

* IPv6-адреса достаточно трудно запоминать.

Эти две проблемы легко решить посредством сервиса, предоставляющего услуги динамического DNS. Для этих целей предлагаю в этот раз воспользоваться dynv6, который, как и NO-IP, позволяет зарегистрировать домен третьего уровня и привязать его к динамическому IP-адресу. В качестве клиента, который в фоновом режиме будет отслеживать изменение вашего динамического IP-адреса и при необходимости обновлять DNS, предлагаю использовать inadyn, который также упомянуть упомянался в предыдущем разделе. Для того чтобы воспользоваться готовым контейнером с клиентом, клонируйте проект cusdeb-services, перейдите в поддиректорию inadyn этого проекта, раскомментируйте блок default@dynv6.com в конфигурационном файле inadyn.conf и измените в нем параметры username и hostname. Обратите внимание, что в качестве значения username необходимо использовать токен, который можно найти в настройках вашего домена на вкладке Instructions. Для параметра password нужно оставить значение «n/a».

$ git clone https://github.com/tolstoyevsky/cusdeb-services.git

$ cd cusdeb-services/inadyn

$ nano inadyn.conf

$ docker-compose up


Теперь ваше устройство будет доступно из любой точки мира, но для клиентов, у которых настроен IPv6.


Заключение


В этой статье я рассказал как сделать свое устройство, будь то одноплатник, ноутбук или стационарный компьютер, доступным из любой точки мира через Интернет. Также я рассмотрел как решить эту задачу посредством «белого» статического и динамического IP-адреса, и рассказал как сделать сервисы на своем устройстве IPv6-only через туннельного брокера. Не прошли незамеченными и сервисы, предоставляющие услуги динамического DNS, которые предлагаю абсолютно бесплатно регистрировать домены третьего уровня, привязывать их к своему IP-адресу и сохранять устройство доступным по этому домену несмотря на то, что IP-адрес может в любое время измениться.

К сожалению, за бортом осталась важная тема получения сертификата через сервис Let's Encrypt для того, чтобы устанавливать защищенное соединение между вашим сервером и клиентами. Дайте знать в комментариях, если эта тема нуждается в том, чтобы я о ней также написал на Пикабу.

Спасибо!

Показать полностью 3
[моё] Raspberry pi Своими руками Длиннопост Начинающий
27
10
wiistriker
8 лет назад

Мини-компьютер Raspberry Pi и интервью с его создателем Эбеном Аптоном⁠⁠

[моё] Raspberry pi Эксклюзив Интервью Видео
12
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии