УДК 004 (06) Информационные технологии О.А. ЖУРАВЛЕВ, К.Я. КУДРЯВЦЕВ Московский инженерно-физический институт (государственный университет) ИСПОЛЬЗОВАНИЕ IRC-ПРОТОКОЛА ДЛЯ ОРГАНИЗАЦИИ ВИРТУАЛЬНОГО ТУННЕЛЯ ПЕРЕДАЧИ ДАННЫХ Работа посвящена организации виртуального туннеля передачи данных на основе IRC протокола. Всемирная сеть интернет позволяет не только получать доступ к большому объему информации сосредоточенной на WEB-серверах, но и обмениваться оперативной информацией (сообщениями, файлами) между отдельными пользователями сети. В отличие от электронной почты (E-mail), такие средства, как ICQ, IRC позволяют в режиме online создать виртуальный туннель между двумя хостами, по которому обеспечивается передача персональных данных. Два хоста, подключенные к сети интернет и не имеющие «внешних» ip-адресов, могут быть связаны виртуальным туннелем передачи данных, использующим протокол IRC для обмена информацией. Поверх туннеля может быть поднято VPN-соединение, объединяющее эти хосты в единую виртуальную сеть. Итак, для реализации туннеля должны быть выполнены следующие требования: Имеется общедоступный IRC-сервер, имеющий «внешний» ip-адрес (далее IRC-сервер). Имеется хост А с внутренним или внешним ip-адресом и возможностью подключения к IRC-серверу. Имеется хост В с внутренним или внешним ip-адресом и возможностью подключения к IRC-серверу. На хостах А и В запускается программа iLink, в которой указываются адрес IRC-сервера, уникальные имена в IRC-чате, режим соединения и порт. Один хост должен работать в режиме сервера (iLink-сервер), другой – в режиме клиента (iLink-клиент). Алгоритм реализации туннеля: Хост-сервер запускается первым. Программа iLink устанавливает соединение с IRC-сервером, после чего ждет входящего соединения от хоста-клиента через IRC-протокол. Хост-клиент запускается вторым, устанавливает соединение с IRC-сервером, открывает приватный разговор (с точки зрения IRC-протокола) c хостом-сервером. После взаимной аутентификации по именам«никам», введенным в настройках, программа iLink, запущенная на хосте-клиенте, открывает заданный в настройках порт XXX на интерфейсе 127.0.0.1 и ждет входящего соединения. На хосте-клиенте запускается VPN-клиент, который устанавливает соединение с 127.0.0.1:XXX iLink-клиент передает данные iLink-серверу через установленный приватный IRC-разговор. iLink-сервер, получив данные о входящем соединении, сам устанавливает соединение с VPN-сервером. Происходит обмен данными по следующей схеме: VPN-клиент iLink-клиент IRC iLink-сервер VPN-сервер [ Хост-клиент ] <-> [IRC-сервер] <-> [ Хост-сервер ] Данные, передаваемые по IRC-протоколу, преобразовываются из 256-символьного алфавита в 128символьный, чтобы избежать использования заведомо запрещенных символов и символов, способных привести к ошибкам из-за специфики IRC-протокола, например, последовательность ‘/quit’ приведет к обрыву соединения с IRC-сервером. Рассмотренный алгоритм позволяет просто и эффективно организовывать VPN с удаленными пользователями на основе IRC протокола с целью обмена приватной информацией. _______________________________________________________________________ ISBN 5-7262-0633-9. НАУЧНАЯ СЕССИЯ МИФИ-2006. Том 15 1