Irc client на delphi


Содержание
Илон Маск рекомендует:  Лекции по конструированию компиляторов глава 3 синтаксический анализ

Помощь в кодировании IRC-клиента в Delphi 2010 с использованием Indy Components

Я пытаюсь закодировать базовый клиент irc в Delphi 2010 с использованием компонентов Indy. Я могу подключиться к моему серверу irc (unrealircd), используя образец A. ниже.

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

Образец A: Это соединение с IRC-сервером при нажатии кнопки4. Он успешно присоединяется к каналу с указанным именем.

Эти события не работают вообще, и во время компиляции не генерируются ошибки.

У меня было несколько человек, которые смотрели на это, и похоже, что некоторые проблемы с unicode уничтожили мою настройку TClientSocket irc, и даже когда я перешел на indy и использовал образцы с официального сайта, я все еще не мог ничего угнать например, событие onconnect.

У друга была копия приложения, которое он написал в Delphi 2010, используя ту же версию indy, и мне удалось импортировать его проект, и он начал работать.

Desktop-ный чат на Delphi с поддержкой ников, комнат, статусов, проброса портов и клиент-серверной архитектурой (на сокетах)

Во времена службы в армии, был это 2013 год, начал я чатик тогда делать. Не помню, для чего и почему, но помню, что было интересно и увлекательно его делать. Оно и понятно! Когда сидишь и никуда не можешь уйти, когда свобода ограничена, мозг начинает из того, что есть, придумывать себе задания, чтоб не скучать. А задание это было, кстати, довольно крутым ��
Даже позже, когда уже закончилась служба в армии, часто вспоминал то время, как продуктивно получалось тогда что-то делать, потому что не было никаких отвлекающих факторов (ну, почти. Были ещё основные задания тоже, конечно же), и деться никуда не можешь, и люди не отвлекают. Плюс режим и распорядок дня тоже делали своё хорошее дело ��
Даже мысли потом бывали, что было бы круто сделать армию чисто для программистов, где есть и распорядок дня, и физическая подготовка (это тоже важно для мозгов), и в остальное время сидишь и пилишь код! Это было бы круто!
Но что-то я немножко от темы отступил, слишком длинное предисловие получилось…

Так вот! Чатик ещё не доделан до конца до сих пор, но пользоваться им уже можно, потому что основной функционал уже присутствует и работает, а именно:

  • выбор ника и его регистрация паролем (чтоб другие не могли его использовать)
  • общение в комнатах (как каналы в IRC)
  • пароль на комнату (вход будет только по этому паролю, а кто комнату создал, тот и владелец, он сможет пароль сменить)
  • комнаты размещаются во вкладках, которые, в свою очередь, являются дочерними окнами главного окна и располагаются внутри него
  • возможность общаться приватно (с указанием причины или без, но другой пользователь должен позволить или отказать в запросе на приват)
  • возможность менять фон главного окна (градиент, текстура, рисунок). Не знаю, зачем это, но да ладно ��
  • статусы! Да, есть там статусы, типа «на месте», «занят», «отошёл» и возможность текст статуса установить. Статусы отображаются в списке пользователей комнаты
  • можно вписать информацию о себе (только если ник зареган), которую могут посмотреть другие пользователи. Там базовая инфа: ФИО, email, город (вроде), плюс просто поле для ввода любой другой информации о себе
  • трей-иконка! (а куда ж без неё). При входящих сообщениях значок меняется на конвертик. Если окно чата не свёрнуто в трей, но при этом не в фокусе, то кнопка на панели задач мигает при событиях или сообщениях
  • оповещения о наборе текста тоже есть. Отображаются в списке пользователей, прям как в старых ICQ-клиентов для телефонов с J2Me ))
  • поддержка некоторых BB-кодов. Можно немножко отформатировать текст (жирный, курсив, чёркнутый, имя шрифта и размер сменить и цвет)
  • поддержка консольных команд и горячих клавиш. Например, можно нажать на кнопку на панельке или в меню, а можно нажать Ctrl+J и ввести имя комнаты, в которую надо зайти, либо набрать в поле ввода сообщений команду /join #room_name. И всё это для того, чтобы войти в комнату! Надо же! )
  • есть что-то вроде файлового менеджера, но он вообще не доделан, но там есть виртуальные папки users и rooms, в которых можно посмотреть текущих подключенных к серверу пользователей и их IP адреса (ай-ай-ай. ), а также посмотреть текущие активные комнаты и количество пользователей в них. Выглядит это вот так (нужно обратить внимание на «размер» комнат):
  • возможность работы через разные типы прокси (http, socks4, socks5 с авторизацией или без)
  • возможность работы по SSL, но эта штука работает коряво и я сам не понимаю и не помню, как тогда сделал, что на одном порту всё висит и есть возможность подключаться и по SSL, и без него… ) Какая-то магия или костыли ))
  • возможность сохранять переписки из чатов в обычный текст или как RTF-файл (с сохранением форматирования текста)
  • небольшая консолька (не доделано ещё) для ввода команд отдельно, без окна чата
  • возможность от клиента к клиенту пробрасывать порты (работает через сервер, поэтому NAT не страшен). Это вообще дикая штука! Работает оно так: слушается локальный порт у одного пользователя, и все обращения к этому порту прозрачно через чат, через сервер пробрасываются до другого клиента, до хоста и порта, который указан в настройках подключения моста. Это значит, что можно, например, от одного клиента подключиться напрямую (прозрачно, через чат и сервер) к сервису другого клиента чата, например, к удалённому рабочему столу, либо к VNC, либо к роутеру (чтоб, например, помочь что-то настроить), или ещё к чему угодно! И это круто! И это всё тоже может работать через прокси, который настроен в настройках чата.
  • возможность при подключении к серверу заходить в определённые комнаты (задаётся в настройках). По умолчанию клиенты заходят в комнату #main.
  • как уже, думаю, стало понятно, чат имеет клиент-серверную архитектуру. Где-нибудь нужно запустить сервер, указать ему порт (в файле конфигов), открыть этот порт наружу или.. ну, в общем, позаботиться о том, чтобы к этому серверу могли извне подключаться. А клиентам нужно будет уже в настройках задать тот самый адрес и порт, и всё будет работать �� Можно, конечно, и в локалке использовать без проблем, никто этому не мешает, работать тоже будет!

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

Некоторые настройки чатика


Многооконный режим чатика и общая комната

Вход в защищённую паролем комнату

Список мостов (ещё не работает, но так должно выглядеть)

Добавление моста (это работает). Есть возможность сохранять их и быстро подключаться потом

Автодополнение команд в консольке (нажать Ctrl+Space)

Автодополнение пока что работает только в консольке, которая отдельно. А сама консолька ничего не выводит — не доделано это. Но автодополнения нет в поле для ввода текста. Но это всё ещё впереди! Зато в текстовом поле для ввода сообщение можно нажимать Ctrl+Стрелка_Вверх или Ctrl+Стрелка_Вниз, чтобы прокручивать историю сообщений.
В консольке можно команды вводить просто, а в поле для ввода сообщений команды нужно начинать со слеша (/).

Поддерживаются следующие команды:

  • info , [title] — просто отобразить информационное окошко сообщения с текстом message и заголовком title
  • exit, quit — завершить чат, но с запросом подтверждения
  • exit!, quit! — завершить чат без запроса
  • join — войти в комнату с названием #room_name
  • part [#room_name] — выйти из текущей комнаты, но если указано имя комнаты, то выйти из той, указанной комнаты
  • connect — подключиться к серверу
  • disconnect — отключиться от сервера
  • nick — установить себе новый ник nickname
  • registernick, register — зарегистрировать текущий ник, задать указанный пароль и email
  • chpass, changepass
      — поменять пароль текущего пользователя (ника). Нужно указать старый пароль и новый
    1. regroom, roomregister [#room_name]

— зарегистрировать комнату, задать ей пароль. Сработает тогда, когда регистрировать её будет пользователь, который её создал. Если не указать #room_name, то будет произведена попытка зарегистрировать текущую активную комнату, из которой эта команда была набрана

  • chroompass, changeroompass [#room_name]
      — сменить пароль комнаты. Это разрешено только владельцу комнаты. Если не указать #room_name, то будет использоваться текущая активная комната.
    1. query [reason] — позвать указанного пользователя в приват. Можно указать причину, тогда она отобразится у того пользователя при запросе на приват
    2. msg — послать указанному пользователю приватное сообщение (из любой комнаты). Сработает только тогда, когда до этого был открыт приват с этим пользователем, но изначально оно работало и без запроса. Возможно, есть смысл вернуть это )
    3. clear — очистить текущее окошко переписки
    4. clear_history — очистить историю введённых сообщений и команд для текущего окошка
    5. close — закрыть текущую вкладку комнаты или привата
    6. echo — вывести в окошко переписки введённый текст

    Вы, конечно, можете сказать: «Камон! Какой нафиг чат?! Сейчас 2020 год на дворе, соц-сети существуют, куча разных мессенджеров, зачем ещё что-то?!». А я вам скажу, что это было интересно делать, да и иметь свой собственный чат, в котором ты ни от кого не зависишь и можешь делать всё так, как нравится — это в любом случае круто! Да и всё же, с приходом разных этих мессенджеров и соц-сетей с кучей эмоджи и стикеров, а также голосовых сообщений и всего такого, мне кажется, немного потерялся этот особый дух текстовых сообщений (не знаю, как его правильно назвать). И конечно, я не агитирую за переход на этот чат, просто нашёл свой старый проект, снова его запустил, и даже используем тут с некоторыми людьми, но это не означает, что я против соц-сетей и других мессенджеров )
    Просто это как-то помогает немного вернуть ту атмосферу, и нам это нравится ��

    Если кому интересно, то сейчас у меня запущен чатный сервер, вот настройки для подключения, кто хочет опробовать:

    Адрес: pc.karamush.ru
    Порт: 25366
    На текущий момент (на 08.07.018) пока всё ещё запущено и работает, в ближайшее время отключать не собираюсь.


    [UPD 29.03.019]: из-за происков провайдера теперь нет возможности держать у себя сервер, т.к. не всегда выдаётся белый IP-адрес, так что скачивайте и пробуйте, всё прекрасно работает (из того, что уже сделано �� ).

    Единственный минус — всё это только под винду, написано на Delphi 7 с использованием некоторых дополнительных визуальных компонентов (всё будет в архиве). А сетевая часть использует библиотечку Synapse.

    Кстати-кстати! Пока я этот чат писал тогда, в армии, я вёл текстовый документ с логом разработки develog.txt. Туда я записывал свои мысли, эксперименты, текущий прогресс, результаты. В общем, когда сейчас вспомнил про этот чатик, решил всчитнуть этот девелог, и там так интересно было! Очень прикольное ощущение, когда читаешь то, что я там хотел сделать, а теперь оно всё есть и работает! А некоторые решения были не очень хорошими, поэтому об этом там тоже написано, и это убрано и не используется. В общем, довольно интересное чтиво. Криминальное ��

    А вот и исходнички и отдельно бинарники!

    Вот архив с клиентом и сервером, а также необходимыми для работы SSL библиотеками, которые нужно поместить в папку программы или в системную папку:
    ichat_binaries.zip

    А вот тут архив со всеми исходниками, develog-ом, а также необходимыми компонентами и либами (надеюсь, всё, что нужно, поместил):
    ichat_sources.zip

    [UPD 29.03.019]: по просьбе одного из пользователей сделал небольшую доработку, так что теперь можно просматривать список комнат не только в файловом менеджере, но из главного окошка, из меню «Комнаты->Список комнат». Так что теперь отдельное окошко со списком комнат, с отображением некоторой информации о них, с возможностью обновить этот список и войти в любую выбранную комнату )

    Выглядит это вот так:

    Список комнат, оо да )

    Там просто обновлённые бинарники сервера и клиента, причём, сжатые UPX-ом зачем-то, для меньшего размера, хотя, в наше время быстрого интернета… Ну да ладно )

    Надеюсь, было полезно и интересно! Если что, можете в комментариях писать, либо в ВК (если найдёте, хехе), если что-то вдруг будет не так или надо будет что-то добавить или исправить. )

    Приятного использования! И не забывайте: сервер чата пока что запущен, так что можно опробовать ��

    Irc client на delphi

    Профиль
    Группа: Участник Клуба
    Сообщений: 882
    Регистрация: 30.3.2002
    Где: Саратов


    Репутация: нет
    Всего: 2

    Профиль
    Группа: Участник
    Сообщений: 532
    Регистрация: 8.2.2005

    Репутация: нет
    Всего: 18

    Делал простой mIRC на Дельфи (использовал компонент Indy IdIRC), выкладываю, может пригодится.

    Это сообщение отредактировал(а) Voyager — 26.11.2005, 05:34

    Присоединённый файл ( Кол-во скачиваний: 208 )
    mirc.zip 69,81 Kb

    Voyager
    Дата 26.11.2005, 05:29 (ссылка) | (нет голосов) Загрузка .

    Профиль
    Группа: Участник
    Сообщений: 4
    Регистрация: 26.9.2005

    Репутация: нет
    Всего: нет

    FrykT
    Дата 27.11.2005, 22:24 (ссылка) | (нет голосов) Загрузка .
    Гость_Mikel
    Дата 5.12.2005, 14:17 (ссылка) | (голосов: ) Загрузка .

    Профиль
    Группа: Участник
    Сообщений: 16
    Регистрация: 20.10.2006


    Репутация: нет
    Всего: нет

    Shnur
    Дата 25.10.2006, 21:59 (ссылка) | (нет голосов) Загрузка .
    Цитата(Voyager @ 26.11.2005, 05:29)
    Делал простой mIRC на Дельфи (использовал компонент Indy IdIRC), выкладываю, может пригодится.
    Google
    Дата 12.11.2020, 16:31 (ссылка)

    1. Публиковать ссылки на вскрытые компоненты

    2. Обсуждать взлом компонентов и делится вскрытыми компонентами

    • Литературу по Дельфи обсуждаем здесь
    • Действия модераторов можно обсудить здесь
    • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
    • Вопросы по реализации алгоритмов рассматриваются здесь
    • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) — крупнейшем в рунете сборнике материалов по Дельфи

    Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

    Простой клиент IRC Delphi/Pascal

    Я искал навсегда на google о том, как сделать клиента IRC Delphi. Но ни в какое свободное время, и быть новым для языка Паскаля не помогло моим усилиям. Все, что мне нужно, это код, демонстрирующий, как подключиться к IRC-серверу на канале, и получать все, что отправлено только на этом канале (без личных сообщений).

    delphi pascal client irc

    1 ответ

    Я написал один: RoIRC и open sourced it, но этот сайт, по-видимому, не позволяет открытому доступу к его SVN для нечленов, поэтому я скоро выложу его на github. Следите здесь


    Irc client на delphi

    Пожалуйста, выделяйте текст программы тегом [сode=pas] . [/сode] . Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
    Указывайте точные версии Delphi и используемых сетевых библиотек.

    Не приветствуется поднятие старых тем. Если ваш вопрос перекликается со старой темой, то для вопроса лучше создать новую тему, а старую указать в первом сообщении с описанием взаимосвязи.
    Внимание:
    попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
    Повторная попытка — 60 дней. Последующие попытки бан.
    Мат в разделе — бан на три месяца.
    Полезные ссылки:
    MSDN Library FAQ раздела Поиск по разделу Как правильно задавать вопросы

    Выразить свое отношение к модераторам раздела можно здесь: Krid, Rouse_

    Simple Delphi/Pascal IRC client [closed]

    I have looked for forever on google on how to make a Delphi IRC client. But to no Avail, and being new to the language of Pascal has not helped my endeavors. All I need is code demonstrating how to connect to an IRC server on a channel, and receive anything sent on just that channel(no private messages).

    closed as off-topic by Disillusioned, J. , Rob Kennedy, Dav > Jul 28 ’15 at 6:09

    This question appears to be off-topic. The users who voted to close gave this specific reason:

      «Questions asking us to recommend or find a book, tool, software library, tutorial or other off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.» – J. Dav >If this question can be reworded to fit the rules in the help center, please edit the question.

    Помощь требуется кодирование клиента IRC в Delphi 2010 с использованием Indy компонентов

    Im пытается закодировать основной клиент IRC в Delphi 2010 с использованием Indy компонентов. Im возможность подключиться к IRC серверу (с UnrealIRCd), используя образец А ниже.

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

    Пример: Это подключается к серверу IRC при нажатии Button4. Он успешно соединяет канал с указанным именем.

    Эти события не работают вообще, и никакие ошибки не генерируются во время компиляции.

    Ive было несколько людей смотрят на это, и это только кажется, Theres некоторые проблемы Юникода, которые разрушили мою установку TClientSocket Irc, и даже когда я переехал в Инди и использовали образцы от официального сайта я до сих пор не удалось получить что-нибудь стрелять, таких как OnConnect событие.


    Друг был копия заявления он написал в Delphi 2010, используя ту же версию Indy, и мне удалось импортировать свой проект, и он начал работать.

    Irc client на delphi

    We recommend upgrading to the latest Google Chrome or Firefox.

    Join GitHub today

    GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.

    New pull request

    Clone with HTTPS

    Use Git or checkout with SVN using the web URL.

    Downloading .

    Want to be notified of new releases in nwoolls/Gist-IRC ?

    Launching GitHub Desktop .

    If nothing happens, download GitHub Desktop and try again.

    Launching GitHub Desktop .


    If nothing happens, download GitHub Desktop and try again.

    Launching Xcode .

    If nothing happens, download Xcode and try again.

    Launching Visual Studio .

    Permalink

    Правила форума «Delphi: Сети»

    • © 2020 GitHub , Inc.
    • Terms
    • Privacy
    • Security
    • Status
    • Help


    You can’t perform that action at this time.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

    Помощь в кодировании IRC-клиента в Delphi 2010 с использованием Indy Components

    Я пытаюсь закодировать базовый клиент irc в Delphi 2010 с использованием компонентов Indy. Я могу подключиться к моему серверу irc (unrealircd), используя образец A. ниже.

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

    Образец A: Это соединение с IRC-сервером при нажатии кнопки4. Он успешно присоединяется к каналу с указанным именем.

    Эти события не работают вообще, и во время компиляции не генерируются ошибки.

    У меня было несколько человек, которые смотрели на это, и похоже, что некоторые проблемы с unicode уничтожили мою настройку TClientSocket irc, и даже когда я перешел на indy и использовал образцы с официального сайта, я все еще не мог ничего угнать например, событие onconnect.

    У друга была копия приложения, которое он написал в Delphi 2010, используя ту же версию indy, и мне удалось импортировать его проект, и он начал работать.

    Irc client на delphi

    Ну кто не знает про IRC, это гениальное изобретение, позволяющее с помощью программы-клиента mIRC, установленной на вашем компьютере, общаться в реальном времени и обмениваться файлами с любым человеком в Интернете! IRC оставила далеко позади себя как неуклюжие chat’ы в окне браузера, так и маразматические «комнаты общения» таких онлайновых служб, как AOL и MSN, превосходящие по степени контролируемости, поднадзорности и отсутствия какой бы то ни было анонимности школьные утренники в СССР. IRC настолько популярна, что многие люди проводят в IRC больше времени, чем бродя по WWW. И коль скоро для многих людей это часть жизни, следует подумать и о privacy в этой виртуальной жизни.

    Ваша privacy может подвергается опасности в IRC по следующим причинам:

    1. Возможность прослушивания того, что вы говорите другому человеку при общении один на один. Здесь все довольно просто: если вы считаете, что обсуждаемый вопрос конфеденциален, не пользуйтесь общением на канале, даже если кроме вас и вашего собеседника на нем никого нет. Не пользуйтесь командой /msg или окном query, что одно и то же. Вся информация проходит через IRC сервер и технически может быть записана. Вместо этого воспользуйтесь DCC (Direct Client to Client). При этом информация будет передаваться вашему собеседнику напрямую, минуя сервер, от которого можно даже отключиться после установления связи по DCC. В принципе, и эту информацию можно расшифровать на любом из узлов, через который установлена связь между вами и вашим собеседником, но это сложно. Если вы хотите быть уверены в полной приватности вашей беседы, воспользуйтесь методами, описанными в главе Защищенный разговор.


    2. Сбор информации о том, на каких каналах вы находитесь, с последующей идентификацией вашей личности. Допустим, политический деятель, скрывающий свою гомосексуальную ориентацию, часто бывает в IRC. Будучи уверенным в свой анонимности, он частенько заходит на канал #russiangay или #blackleather. Общается с людьми. Вступает в переписку, не называя, понятное дело, своего реального имени. А потом находит все свои письма опубликованными в какой-нибудь вонючей бульварной газетенке типа Mосковского Kомсомольца. Не очень приятно. Но ситуация вполне возможная. О том, как можно собрать информацию о человеке в IRC, рассказано в разделе

    Вы — охотник. Здесь приведем рекомендации, позволяющие снизить риск идентификации вашей личности.

    Итак, первое. Если вы хотите быть анонимны, не указывайте свой настоящий адрес e-mail в соответствующем поле в Setup. Во-вторых, станьте «невидимы». Это свойство позволяет вам остваться необнаруженным при попытке любого пользователя, не знающего точное написание вашего nick, найти вас в IRC по имени вашего домена или userid (часть вашего e-mail, стоящая перед знаком @), используя команду /who или /names. (см. ниже). Это делается командой /mode $me +i, которая может быть для удобства включена в список команд, автоматически выполняемых при подключении (mIRC Options=>Perform). В последних версиях mIRC 5.** надо просто поставить галочку напротив Invisible Mode в диалоговом окне Setup. Разумеется, если вы подключились к какому-либо каналу, то вы будете видимы для других людей, пока вы будете на этом канале. В-третьих, не давайте свой адрес людям в IRC, в добропорядочности которых вы не уверены. Или, по крайней мере, давайте свой альтернативный адрес. Вот, пожалуй, и все, что можно сделать. А теперь рассмотрим, что и как другие люди в IRC могут о вас узнать (или вы о них).

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

    1. Поиск пользователей по домену, имени, и userid. Довольно мощным средством поиска по какой-либо известной части информации о пользователе (или группе пользователей) является команда /who, о которой почему-то нет ни слова в mIRC’овском Help файле. Странно, правда;) Делая запрос о пользователе командой /whois, мы обычно получаем примерно такой текст:

    Команда /who позволяет задать маску для поиска пользователей по любой части их доменного имени, userid или имени (то, что в поле Real Name). Допустим, мы ищем людей из домена global.de. Синтаксис таков:

    Или ищем всех пользователей из Сингапура:

    Или мы уже общались с господином ShowTime, и хотим найти его опять:

    Так же могут найти и вас, если вы не воспользуейтесь командой /mode $me +i, как было описано выше.

    2. Определение адреса электронной почты. Задача довольно сложная, но иногда выполнимая. Начнем с «лобовой» атаки. Команда /ctcp ShowTime userinfo (или, проще, через меню) покажет нам e-mail address, указанный самим пользователем. Поскольку мало кто сообщает свой настоящий адрес, надежды на правдивый ответ мало. Если домен полученного адреса совпадает с тем, что следует за знаком @ в ответе, полученном на запрос /whois, то вероятность того, что адрес указан правдивый, повышается.

    Следущая возможность — использовать информацию, содержащуюся в ответе на запрос /whois. Имя домена подделать крайне сложно, поэтому мы наверняка знаем, что пользователь ShowTime из домена linknet.net. Это первый шаг. Часто вместо буквенной строки после знака @ следует цифровой IP адрес, который по той или иной причине не определился при подключении пользователя к серверу. Его можно попытаться определить командой /DNS ShowTime. Если результат получен, то переходим к следующему абзацу. Если нет, то попробуем еще один способ. Воспользовавшись программой WS Ping32 (50K) или CyberKit (905K), сделаем TraceRoute с указанием цифрового адреса. Программа проследит путь от вашего IP адреса до искомого IP, принадлежащего ShowTime. Последний из определившихся по имени адресов укажет, скорее всего, на имя домена пользователя.

    Едем дальше. У нас есть либо полное имя, соответствующее IP адресу пользователя под кличкой ShowTime (ml1_12.linknet.net), либо, в худшем случае, только имя домена (linknet.net). В первом случае мы можем попытаться, воспользовавшись командой finger (либо в одной из двух вышеупомянутых программ, либо прямо в mIRC, где есть кнопка Finger прямо на Tool Bar’е), определить всех текущих пользователей из домена linknet.net. Для этого мы делаем finger адреса @linknet.net (userid не указываем). При удачном стечении обстоятельств мы получим что-нибудь в этом роде:

    Вот он наш ml1_12, принадлежит oneguy@linknet.net. Отметим, что иногда информация в ответ на finger-запрос может быть выдана только пользователю из того же домена, к которому принадлежит адрес, который вы хотите идентифицировать. Решение простое: найдите пользователя из искомого домена (/who *linknet.net* ), и попросите его сделать finger запрос.

    И в первом, и во втором случае есть еще одна возможность. Если «охотнику» известно реальное имя или фамилия искомого пользователя, можно послать figer-запрос в виде имя@домен или фамилия@домен. Например, finger на John@some.net может нам дать список всех пользователей по имени John с их login’ами.

    Вот, пожалуй, и все известные автору средства, которые есть у «охотника». А выяснив ваш e-mail адрес, «охотник» может может выяснить и ваше реальное имя. Как? Читайте в разделе Установление личности по известному адресу.

    Долгий поиск информации на эту тему завершился успехом с любезной помощью Дениса Савельева, единственного читателя, отозвавшегося на мой призыв поделиться знаниями по этой теме. Если оставить в стороне IP spoofing, который весьма сложен и вряд ли осуществим на платформе Windows 95, остаются два способа маскировки реального IP адреса: использование специального прокси сервера, способного поддерживать IRC протокол, и использование SOCKS firewall на неком удаленном хосте.

    SOCKS
    В последнее время получила широкое распростанение программа Wingate,

    которая связывает несколько компьютеров в локальную сеть и позволяет работать с Интернетом через модем. При этом большинство пользователей удовлетворяется настройками «по умолчанию», не подозревая, что эти настройки позволяют любому человеку использовать их SOCKS прокси. Если найти IP адрес, по которому в данный момент расположен компьютер под Wingate, то можно попробовать подсоединиться к IRC, настроив клиент на нужный IP адрес и порт 1080 (в mIRC Setup это в разделе firewall, как показано на иллюстрации). Заметим, что доступ к SOCKS дает не только Wingate, но и многие другие программные продукты, так что не удивляйтесь, если какой-нибудь web-сервер по адресу www.some.net позволяет подключиться к порту 1080. Остается чисто практический вопрос: как найти такой IP адрес. Очевидно, проверять в каком-нибудь диапазоне, причем предположительно богатом пользователями Wingate, все адреса на предмет отклика порта 1080. Инструментарий каждый выбирает сам, благо в сети есть выбор. Один из энтузастов-читателей даже благородно ведет список подобных IP адресов. Его страница находится здесь, так что если искать лень — заходите. Есть также популярная страница Proxys-4-All.

    Прокси
    Итак, со всей ответственностью заявляю: IRC прокси серверы существуют и работают, все заверения на сайте Анонимайзера и в newsgroups, посвященных IRC, о том, что протокол IRC не может может работать через прокси, что свой IP адрес скрыть нельзя и т.д. и т.п. являются ПОЛНОЙ ЧУШЬЮ. Вокруг этого вопроса в Интернете какая-то стена молчания, даже и не знаю почему. Ну я ведь молчать не буду: я лично подсоединился к IRCNet через прокси сервер, и на запрос /whois всем гордо отвечал:

    Адрес прокси вписывается вместо адреса IRC сервера. Прокси намертво связан с одной из IRC сетей, так что если вы нашли адрес прокси в DALnet, то только в далнет им и можно пользоваться. Теперь самое интересное: как найти подобный IRC прокси сервер. Это вполне возможно, хотя и довольно сложно. Пару адресов мне дали, один я нашел сам за час. «Не тяни резину, выкладывай адреса!», слышу я крики читателей. Не дам, не обижайтесь. Сотня обращений на один такой сервер в день из домена .ru — и удовольствие кончится. Некоторое время назад я попросил читателей присылать найденные ими адреса серверов с тем, чтобы опубликовать более-менее длинный список. Не откликнулся никто. Ну что же, спасение утопающих — дело рук самих утопающих. Не хотите делиться информацией — не надо. На письма с просьбой поделиться адресом отвечать НЕ БУДУ. Каждый желающий будет искать сам; рассказываю о том, как это делать.

    Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL
    Type Name Latest commit message Commit time
    Failed to load latest commit information.