Древности: шшшш, сссссс, VOIP, BBS и другие друзья модема

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

pws00ltnak1mwcpscwzzhss5dvy.png


Есть масса способов подключить к интернету хоть Windows 95, хоть DOS, но зачем? В современном вебе старым компьютерам делать нечего, для них скорее требуется воссоздавать интернет двадцатилетней давности. Но ведь тогда дело не ограничивалось только интернетом. Более того, он был дорогой, и его было мало. Первая моя компьютерная сеть — это Фидонет, а о ней я узнал, дозваниваясь модемом до пары-тройки местных BBS. А вот это интересно. Конец 2018 года — самое время воссоздать инфраструктуру, идея которой зародилась в далеком 1978 году. Сегодня — рассказ о проекте, который я медленно пилю уже полгода, история о телефонных проводах, модемах и винтажном текстовом общении.
Заметки о своих музейных экспонатах я веду в режиме реального времени в Телеграмме. Там же по вторникам я собираю вырезки из старых компьютерных журналов: в первом выпуске был обзор железок и цен за 1986 год, во втором ноутбуки оттуда же, третий посвящен представленной в 1987 году серии IBM PS/2.

CONNECT 19200
Модемная связь более-менее массово начала использоваться (как обычно, в оборонке) в конце пятидесятых, хотя сама концепция использования телефона для передачи данных уходит корнями чуть ли не в двадцатые годы прошлого века, а то и дальше — если назначить дальним родственником модема телеграф. В семидесятых типичный модем представлял собой подставку для телефонной трубки, в которую свистел на скорости в 300 бит в секунду. Примерно в таком виде модемы дожили до начала восьмидесятых, постепенно превращаясь в автоматизированные устройства, способные самостоятельно набирать номер и отвечать на входящие звонки. Тогда же скорость передачи данных повысилась сначала до 1200, потом до 2400 и 4800 бит в секунду. В 1994 году финализируется стандарт V. 34, обеспечивающий скорость до 28800 бит в секунду. Следующая остановка — 33600, а затем — конечная, 56к, но только при наличии подходящего цифрового оборудования на АТС.

ognu-gkjdaltlixhx7kx8yye2j0.jpeg


Этот суперкраткий экскурс в историю я закончу собственным опытом. Модемом для доступа в интернет я активно пользовался до 2003 года, потом появилась линия ADSL сначала на 128, а потом и на 256 килобит в секунду. Исчезла проблема вечно занятого домашнего телефона, а потом испарился и сам телефон. Модемы — это вроде бы не самая подходящая штука, чтобы ностальгировать об ушедших временах. Все девяностые они вызывали немало фрустрации, не сильно надежно работая на не отличающихся высоким качеством телефонных линиях. Дозвониться до фидошной ноды, а потом до интернета, удержать коннект для загрузки очень нужного файла, выключать картинки для скорости — это был так себе экспириенс.

Но сейчас, через 15 лет после отправки последнего модема на пенсию, эта часть компьютерной истории вызывает интерес. Тем более, почти все мои ноутбуки из девяностых снабжены встроенным модемом. Хоть обзвонись, только некуда. Даже не так, самая большая проблема — нет телефонной линии, вообще. Вот из такой безнадежной позиции этой весной началось мое исследование.

VOIP спешит на помощь
Казалось бы, самый простой способ — соединить два модема между собой, посвистеть и успокоиться. Но нет, так не работает, точнее (как последние пару недель выясняли в чате), соединяться по выделенной линии способны лишь некоторые продвинутые модемы, и мои встроенные к ним не относятся. Или же вам потребуется эмулировать свойства телефонной линии при помощи батарейки, конденсатора и такой-то матери. Не вариант, тем более, ну позвоню я сам себе, попишу в терминал, и что? Если ближайшая АТС недоступна, надо строить свою. На самом деле проще забить на модемы, и слать байты напрямую в последовательный порт, хоть из интернета, хоть как. Но об этом как-нибудь в другой раз.

awjp5ppvsezpgcl5pwpyro6zxdu.png


В начале лета приезжает заказанный в Китае VOIP-адаптер Linksys PAP2T — одно из самых недорогих решений для проведения телефонной линии через интернет. У него два порта, и есть возможность держать сразу две телефонных линии — по меркам девяностых это недостижимая роскошь. Подключаю, настраиваю, колдую с настройками файервола, прикручиваю старый радиотелефон — работает! Но недолго. То ли бракованный, то ли поддельный аппарат немилосердно греется и каждые 10–15 минут намертво вешает телефонную часть. Я борюсь с жабой и заказываю более современный аналог с похожими характеристикам: Cisco SPA112. Тоже две линии, к ним я прикручиваю два SIP-аккаунта. Успешно звоню с одного телефона на другой. Подключаю с двух сторон модемы и наконец-то слышу эти божественные звуки.

Или не эти. Или не слышу. Коннект происходит, но данные не передаются, и спустя минуту-другую соединение отваливается. В чем дело? Хотя мы сейчас без проблем стримим через интернет видео с битрейтом в единицы и десятки мегабит, самый продвинутый стандарт для IP-телефонии, G.711, работает с каналом связи шириной 64 килобита в секунду. Другие еще экономнее. Я бы и рад выделить больше, но не могу. VOIP-адаптеры в первую очередь заточены на голосовую связь, а модемы — ну так, если получится. Множество включенных по умолчанию фич, таких как эхоподавление, делают модемный коннект невозможным.

gklix0julprpbp5tikjegj9z_bg.png


Не буду утверждать, что я изучил эту тему до конца. Настройки перебирал долго, изучая (довольно редкие) свидетельства успешного использования модема через цифровой канал. Обязательно нужно ограничить возможности соединения только тем самым относительно щадящим кодеком G.711. А вот все остальные настройки? Решающий момент произошел, когда я обнаружил, что в качестве транспорта у меня почему-то установлен протокол UDP, склонный легко терять пакеты данных. Переключение на TCP, а заодно и отключение всех встроенных способов детектирования данных (заточенных на работу факса) этой осенью дало стабильный результат: соединение на скорости 9600 бит в секунду, способное держаться пару десятков минут.

Как я не купил Курьер
Не все модемы одинаково полезны. На излете индустрии популярность приобрели дешевые модели, в которых вся обработка сигнала передается процессору. У них были серьезные проблемы с поддержкой в Linux из-за насквозь проприетарной кодовой базы, да и хилые компьютеры начала двухтысячных они легко тормозили. Такое устройство, по имени Lucent WinModem, установлено в моем ноутбуке ThinkPad T22. Более старые модели ноутбуков IBM оснащены хитрым цифровым сигнальным процессором MWave, обслуживающим одновременно и модем, и звуковую карту. Можно предположить, что самый лучший модем — это внешнее, полностью автономное устройство. Сейчас они стоят относительно недорого, и я решаю купить лучший — USR Courier.

izwsazvnnhsu6czbwzyiu1fpuug.png


Делаю заказ на новое в коробке устройство, и через неделю ко мне приезжает, кхм, USR Sportster. Продавец перепутал посылки и отправил мне более дешевый лот. И даже компенсация части стоимости не могла победить мою печаль. Ладно, в девяностых моим рабочим модемом был Zyxel U1496E+, модель легендарная, но небыстрая, с устройствами других производителей способная работать только на 9600 бит в секунду, зато державшая эту скорость мертвой хваткой. Новый «шпрот», даже с поддержкой V. 92, да еще и выполненный в классическом корпусе с аппаратным выключателем — для начала подойдет.

qqgtmdhdwtbndkdeovrm4dxjtz4.jpeg


Модем приехал из США, и я обнаружил, что комплектный блок питания умеет работать только с сетью в 110 вольт. Пришлось заказывать аналог с европейской розеткой. Наконец, надо было подобрать последовательный кабель. Здесь тоже вышла засада: проводов у меня накопилось много, но все подходили то к компьютеру, то к модему строго одним концом. В результате я собрал франкенштейна из трех разных кабелей.

1arya3-dzhkmtmgx2ps41qesdba.png


После камлания с настройками инициализации удалось поднять скорость до 33600, со стабильным коннектом, и для моей винтажно-современной телефонной линии это, пожалуй, максимум возможного.

BBS
Я решил восстановить свою собственную модемную инфраструктуру из девяностых, правда на куда более современном железе. Для этого я взял один из своих ноутбуков ThinkPad 600 1998 года выпуска с процессором Pentium II 266 Мгц, конкретный экземпляр был снабжен 48 мегабайтами оперативной памяти. Максимум — 512, но мне столько и не требуется. Операционная система — как и больше двадцати лет назад — Windows 95. Софт для BBS — Maximus, в свое время коммерческий, а в начале двухтысячных отпущенный на вольные хлеба с открытыми исходниками. На сайте разработчика Maximus ныне продают одежду.

6reizhzkdiqcos_iynmeqgw27ei.jpeg


Когда на старом железе пытаешься сделать что-нибудь реально работающее, в твоем опыте становится меньше ностальгии и больше фрустрации. Тесты я проводил на англоязычной версии Windows 95, которая, как оказалось, совсем не дружит с русским языком «из коробки», даже после установки соответствующего языкового пакета. Пришлось переустанавливать чисто русскую версию. Это был ранний релиз Windows 95, и мне потребовалась пара часов, чтобы осознать, что поддержки USB — перекидывать файлы с современного компьютера — в этой версии нет. Она появилась только в апдейте Windows под названием OSR2, ну или можно ее забрать с диска с этим дистрибутивом, необходимые файлы все равно лежат отдельно.

В BIOS был выключен последовательный порт, а чтобы его включить, нужна утилита IBM, а для нее пришлось установить апдейт браузера Internet Explorer до версии 4.0. А он заодно попытался подтянуть за собой «активный десктоп» из Windows 98. Эти попытки я решительно пресек, и после пары вечеров с бубном и костылями, у меня все готово.

BBS — это вообще что? Думаю уже пора объяснить. Если хотите изучить сами, есть вот этот пятичасовой фильм, снятый в США в начале двухтысячных. История BBS началась в Чикаго в 1978 году. По словам очевидцев, триггером стал снежный шторм, да такой, что нельзя было никуда доехать. А если нельзя, почему бы не общаться по телефону. Почему не голосом? Так не интересно. За десять лет вокруг BBS на западе была создана целая индустрия, там были и платные станции на сотни линий, и конференции сисопов, и многое другое. Все это практически за год было убито вебом: в 1994–1995 годах количество BBS в США достигло пикового значения (тысячи станций), и практически сразу же началось стремительное падение.

wqlqxszsidih_26icf7z7ln9vc8.png

В России BBS появились чуть позже, и жили дольше, а некоторые живут до сих пор. По данным из эхоконференции RU.BBSNEWS систем, отвечающих честно, по телефону, существует восемь на всю Россию. Дозваниваюсь до одной из них: есть коннект на 14400, неплохо. Это значит, что моя VOIP-модемная связь работает не только внутри моего оператора. Кстати, модемный пул у интернет-оператора МТУ Интел (ныне часть МТС) до сих пор отвечает. Правда после коннекта (на невероятные 45333 и выше) больше ничего не происходит. Почему — не знаю, а жаль. Можно было бы выйти в интернет через, эээ, интернет.

9x2ai9yd_t06r2etcfqa4vmqsso.jpeg


Так вот, BBS — это личинка компьютерной сети, станция, к которой в любой момент времени может подключиться столько людей, сколько есть телефонных линий. Это текстовый терминал родом из шестидесятых, через который вы получаете возможность общения с другими пользователями BBS, и можете читать конференции FIDO. В девяностых с помощью BBS я и узнал о существовании Фидонета, после чего завел свою станцию, сначала с юношеским максимализмом сделав ее круглосуточной. После жалоб домашних на «постоянно звонят и молчат в трубку» BBS стала ночной. Вот это всё я и пробую воссоздать.

Maximus устанавливается довольно легко, достаточно скачать дистрибутив (например, тут) для вашей ОС, на выбор есть Windows, DOS и OS/2 (и кажется существует порт под Linux, выпущенный, так сказать, посмертно). Первый запуск производится локально, нужно зарегистрироваться от имени Сисопа или суперпользователя станции. В конфигурационных файлах — масса настроек, но для начала достаточно указать номер последовательного порта, на котором висит модем. Конфиги затем компилируются — это сделано для интеграции встроенного в Maximus языка программирования, для совсем уж непростых сценариев взаимодействия с пользователями и окружающим миром. Затем выполняем runbbs.bat и всё, можно звонить. А нет, сначала (если у вас DOS и Windows) нужно поставить драйвер FOSSIL для общения с модемом.


Больше можно ничего не делать, но поменять штатную приветственную заставку на свою я просто обязан. В 1996 году я долго рисую псевдографику в текстовом редакторе. В 2018 году просто гуглю генератор ASCII-букв и забираю прямо оттуда.

2c87p3osebwsnsgzpdipsza5bvs.jpeg


Давайте посмотрим, что у нас есть по умолчанию. Файловые помойки, в девяностых они играют важную роль. Новым пользователям по умолчанию выставляется совсем небольшой временной лимит на соединение — час, а то и меньше. Это было сделано отчасти для того, чтобы пользователи не висели часами на линии, и давали прозвониться другим (а сисопу давали время скачать почту). Поднять лимит можно было, сделав что-то полезное: можно было занести сисопу пиво, или закачать на BBS какой-нибудь полезный файл. По дефолту все новые файлы складываются в раздел «непроверенное», после чего сисоп должен руками перенести их туда, куда надо.

_bz4krsatabkswriyxshgr18kag.png

Набор софта на старых BBS был традиционный: драйверы, книги, картинки, музыка в MIDI (позже MP3, устанешь качать), компактные игры под DOS. На мою BBS девяностых как-то звонил пользователь со старинным модемом на 2400 бит в секунду и чудовищно медленно, несколько ночей подряд, качал полуторамегабайтный ролик, где в Билла Гейтса кидают тортом. И так это было мучительно долго и бесперспективно, что я предложил ему доставку ролика ногами, на дискетке. В ответ был вежливый отказ: неспортивно.

mxcfun6kxd3ctxcmoe6jz_t0kge.png
Раздел сообщений содержит личную переписку юзера с сисопом, локальную конференцию для всех пользователей BBS, ну и те эхоконференции FIDO, которые Сисоп не поленится прикрутить. Обычно фидошные конференции были в режиме рид-онли: в ФИДО даже у поинтов сети особо не было прав, не говоря уж о посетителях BBS. Для своей BBS я оставляю локалку и прикручиваю найденный в веб-архиве кусок конференции HUMOR.FILTERED. Работает!

jsg7gm4qtfsbdfcehxtfnpfgsku.png


Еще одна полезная фича — простые игры, но не помню, что бы мне это было интересно даже в те времена. А вот что реально круто — это опция Yell Sysop. С ее помощью можно было побибикать владельцу станции в PC-спикер и вызвать его на беседу. В окошке терминала за разговорами я порой проводил всю ночь. Формат общения самый примитивный: по сути у вас на двоих один экран, поэтому желательно дождаться, пока собеседник договорит, иначе выходило вот такое:

gznk78_cbnbjwmy4x-khxyr3h-i.jpeg


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

BBS на основе древнего софта еще и небезопасная штука: Maximus уже хеширует пароли пользователей, а другие программы и вовсе хранят их в открытом виде. В BBS также существовали уязвимости при обработке закачиваемых файлов. Даже современные программы (такие как разрабатываемая и поныне Mystic BBS) по умолчанию предполагают соединение через сеть по Telnet, протокол полностью открытый и ничем не защищенный от перехвата. Отчасти поэтому я пока не собираюсь делать свою BBS доступной напрямую из сети, это (с точки зрения безопасности) пожалуй даже сложнее, чем построить свою телефонную станцию.

Но зачем?
Логичным завершением моего исследования с реставрацией стала покупка входящего номера у VOIP-провайдера. Гулять так гулять. Есть ли в этом всем смысл? Это как посмотреть. Моя основная задача была — воссоздать опыт взаимодействия с BBS из девяностых, с максимальным использованием винтажных технологий (за исключением проводов до телефонной станции). Тут полный успех. Но как-то не хочется просто выключить это всё и положить на полку. А есть ли у BBS в 2018 году практический смысл?

Не очень. Можно было бы сказать — вот произойдет катаклизм, выключится интернет, а BBS вот они, работают. Не в моем случае: технология завязана на постоянное подключение к сети. Буду ли я теперь публиковать статьи только на BBS? Ну нет. На мой взгляд, BBS имеет смысл строго как музейный экспонат. Но это большая и сложная тема. Сейчас моя BBS — это почти пустая оболочка. Наполняют ее пользователи, или сам системный оператор. В музейных целях было бы очень здорово сделать доступными старые архивы фидошных (а может и не только) эхоконференций, в натуральном, так сказать, виде. Мой опыт с HUMOR.FILTERED показывает, что это возможно.

Но это непростая задача, и сначала взявшись за нее с энтузиазмом, я теперь пребываю в сомнениях. На них и закончу: если история получит свое продолжение за пределами простого proof-of-concept, напишу апдейт. И, да, раз уж я купил входящий телефон, звоните, что ли. Если у вас конечно есть телефонная линия, и модем, и компьютер, к которому этот модем можно подключить. Телефон +7 499 404 11 35. Беру на себя обязательство держать BBS в работоспособном виде минимум три месяца с даты публикации этого поста. А там посмотрим.

© Habrahabr.ru