|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Web display (связь с пк без чистого айпи)
Однажды у меня возник вопрос «Как связаться клиенту с сервером, если они обое находятся во внутренних сетях и их реальные айпи не известны?». Конечно можно взять у провайдера белый айпи, или хостинг, но это стоит денег и для легких задач или тренировки как то деньги тратить не хочется. Сразу на ум пришла идея использовать какой-то промежуточный сервер. Но какой? Я задал вопрос на форуме и мне начали говорить про VPN сети. Я в них толком и не вникал, но понял что их использование и настройка довольно сложны. А что если мне надо снимать показания с какого-нибудь прибора, который подсоединен на другом ПК, или просто управлять ПК с любой точки мира, а замарачиватся с VPN не хочется? Тогда пришла в голову идея использовать ICQ. Наш сервер будет иметь один UIN, который не будет изменяться, а клиенты будут использовать динамические UIN которые они могут получать со страницы твоего веб сайта которая ясное дело никому не известна . На теории все выглядит красиво, а как на счет практики? Так как я поставил себе за цель управлять каким нибуть устройством на удаленном ПК, то я отыскал у себя небольшой символьный дисплей который подключается к ПК через USB. На дисплее должна отображаться информация, которая вводится в мемо в клиенте. Причем информация на дисплее должна изменятся сразу после изменения текста в мемо.
Задача поставлена, а теперь за дело. Первое- это создаем сервер. Для соединения с ICQ сервером используем TICQClient, который можно бесплатно скачать. Описывать создание самого сервера я не буду, так как нужно разбирать интерфейс соединения с дисплеем, работу с клиентом и т. д. Для тех, кто работал с компонентами инди составить протокол обмена сообщениями клиента и сервера не составит труда. Я вылаживаю только скрин сервера: Далее клиент. Его работу я тоже не описываю вот скрин: А вот результат роботы: Плюсы такой технологии: - Связь с сервером с любой точки планеты, где есть Интернет - Легкая переноска сервера на любой ПК - Быстрая настройка и легкость обмена сообщением Минусы: - Время пересылки сообщений (оно мало заметно, но всё же есть) - Ограничение длины сообщений (читать про протокол ICQ) - Бан при частой пересылке сообщений (это самый главный недостаток) Такой способ нельзя использовать в каких-то мощных программах, где сервер работает с множеством клиентов, или идет пересылка множеств данных. Но он отлично подходит для серверов или клиентов, которые отправляют одиночный пакет, например информацию про состояние ПК, данные, взятые с какого нибуть устройства, и т. д. Не твори зла, и жизнь повернется к тебе передом |