Архивы: по дате | по разделам | по авторам

Универсальный солдат

Архив
автор : Сергей Леонов   01.04.1999

Как-то раз в редакторскую зашел Евгений Козловский, окинул подчиненных недобрым взглядом и, остановившись на мне, спросил: "Та-а-ак, это у тебя, кажется, дома несколько компьютеров?" Чуя подвох, я уклончиво ответил: "Ну..." "Будешь тестировать маршрутизатор, сейчас принесу, - сказал Евгений, - а то у меня, понимаешь, всего один компьютер". (Евгений лукавил: у него три компьютера - обычный и два ноутбука, не считая еще Palm-Pilot'а, ему нужно было только выпросить у фирмы, которую я не упоминаю, чтобы не сочли за рекламу, еще один сетевой адаптер.)


   Вот только маршрутизатора мне и не хватало. Поинтересовавшись, что это за изделие, я выяснил, что вовсе и не "Киска", а ZyXEL, под названием Prestige 100MH PSTN Hub Router. "В общем, там хаб на четыре порта и модем внутри", - сказал Евгений, выкладывая на стол небольшую коробку. "Угу..." - ответил я без особого энтузиазма, и тут до меня дошло: раз у этой штуки внутри модем, то она должна соединяться с провайдером сама, а провайдер выделяет обычному пользователю всего один IP-адрес, и то динамический. Это значит, что либо только один компьютер сможет работать в Интернете (точнее, даже ни одного, так как самому маршрутизатору тоже нужен адрес) и придется просить провайдера о выделении мне группы статических адресов, либо... Я схватил описание и принялся листать, пытаясь найти нужную аббревиатуру... да, вот она: NAT - Network Address Translation (краткое описание остальных функций приведено во врезке). Стараясь не выдать внезапную заинтересованность, я коробку взял: "Ладно уж, потестирую..."

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

   Перекладка кабеля с установкой разъемов в домашних условиях заняла полдня, после чего я торжественно водрузил маршрутизатор на монитор и включил питание. Устройство поморгало светодиодами и успокоилось. Обращение к соседнему компьютеру проходило успешно - по крайней мере, функцию концентратора маршрутизатор выполнял. Пришлось, правда, лезть в настройку сетевых адаптеров и отключать режим Full Duplex, иначе индикатор "Collision" при двух включенных компьютерах моргал непрерывно - все-таки для локальной сети это просто концентратор.

   В комплекте с маршрутизатором поставляется программа Web Configurator, написанная с использованием Java-скриптов, а сам маршрутизатор может выполнять функции Web-сервера; таким образом, настройка осуществляется через браузер. Перелистав все имеющиеся страницы и установив все, что можно, я перезагрузил устройство, но ничего не изменилось. Обращение к внешнему адресу из браузера оставалось в режиме ожидания, но дозваниваться до провайдера маршрутизатор не хотел ни в какую.

   Провозившись с час, я уже было собрался позвонить в представительство ZyXEL и спросить, где же у него кнопка установки соединения (не смейтесь, я видал и такие устройства, не буду называть изготовителя), и допустил даже крамольную мысль, что ZyXEL вообще не имеет "Dial On Demand" (то есть дозвона по требованию). В описании, однако, эта функция значилась, а потому я решил действовать согласно известному правилу, гласящему, что, когда ничто другое не помогает, надо прочесть инструкцию.

   Процедура настройки в инструкции описывала процесс с использованием программы-терминала, а не через Web Configurator. Терминальный интерфейс оказался гораздо более функциональным. ZyXEL пошла по тому же пути, что и другие изготовители аналогичных устройств: маршрутизатор имеет собственную "операционную систему" (я взял эти слова в кавычки только потому, что для пользователей, привыкших к графическому интерфейсу Windows, интерфейс командной строки может показаться недостаточным условием наличия операционной системы), названную ZyNOS - ZyXEL Network Operating System. Впрочем, "опускаться" до уровня команд ZyNOS обычному пользователю и не нужно; система меню, реализованных в режиме настройки через терминал, вполне достаточна, чтобы настроить все, что надо.

   Мне так и не удалось понять, что я пропустил при настройке через Web Configurator, но после выполнения описанных в руководстве действий я поднял глаза и обнаружил, что связь давно уже установлена. Установлена непривычно тихо, без щелчков набора номера и пересвиста модемов (звуковой головки у маршрутизатора нет, а щелчки реле, коммутирующего линию при наборе номера, услышать можно, но надо прислушиваться).

   Первая неприятность, которая меня поджидала, - непрохождение запросов к DNS-серверу. То есть обращение к сайту по цифровому адресу работало, а по имени - нет. Разумеется, при настройке я по привычке оставил поля для адресов DNS пустыми, рассчитывая на динамическое получение их через DHCP. Однако для того, чтобы это работало, маршрутизатор должен выполнять функции DNS-proxy, то есть получать адреса DNS-серверов от DHCP-сервера провайдера и потом раздавать их компьютерам в локальной сети. Пришлось узнать адреса DNS-серверов провайдера (я никогда и не знал их) и вписать в соответствующие поля.

   Все. Полная победа над Интернетом в отдельно взятой квартире. Вешаете коробку с надписью на стену (я не ошибся, вешается она именно вверх ногами), втыкаете в нее "хвосты" от сетевых адаптеров ваших компьютеров и без всякого Dial-Up Networking, без противного звука соединяющихся модемов, без необходимости нажимать клавишу повторного набора номера имеете себе Интернет, причем на всех компьютерах одновременно (только не рассказывайте об этом своему провайдеру, вы ведь с ним заключили договор на одно-единственное подключение), и всего за 400 долларов (рекомендованная ZyXEL цена). Правда, появляется Интернет не сразу, а только после того, как вы обратитесь к узлу, находящемуся за пределами квартиры, и, кроме того, надо дождаться, когда встроенному модему удастся дозвониться. В процессе же дозвона глупый браузер (не буду говорить, какой фирмы, чтобы не сочли за рекламу) безуспешно пытается достучаться до DNS, после чего останавливается по тайм-ауту. Но зато уж если модем соединился... С этого момента у меня появилась "противоположная" проблема: как заставить его отключиться? Дело в том, что ОС одной известной фирмы (которую опять же не называю) периодически обращается к внешним адресам (в частности, запрашивая DNS-сервер), и обращения эти сбрасывают таймер маршрутизатора, по которому разрывается соединение. Часть обращений удалось отфильтровать внутренними фильтрами маршрутизатора, но добиться отключения по неактивности пользователя так и не удалось, активность есть все равно: например, та же ICQ периодически генерирует внешние обращения.

   Из всех используемых мною программ работы с Интернетом маршрутизатор не поддерживал две: полностью не работала traceroute, и не желала отправлять сообщения ICQ (проблема решилась после установки параметра "отправлять через сервер"). Для всех же остальных программ маршрутизатор оказался абсолютно "прозрачен", хотя локальная сеть и работала с трансляцией адресов (локальные адреса из диапазона 192.168.х.х). Из мелких проблем, касающихся модема, можно отметить не вполне уверенное распознавание сигнала "занято", но, повторюсь, это относится к версии на Rockwell, которая в России продаваться не будет.

   В качестве провайдера для первых опытов мною был избран привычный "Россия-Он-Лайн", а в качестве резервного я установил "Комбеллгу". При попытке подключиться к которой и начались проблемы. Дело в том, что проверка имени/пароля у "РОЛ" спокойно выполнялась при установленном по умолчанию автоматическом определении протокола авторизации PAP/CHAP, а сервер "Комбеллги" выходил в режим авторизации через терминал. Возможность такой авторизации в маршрутизаторе предусмотрена, но набранный скрипт не хотел запускаться, и процесс установки связи оканчивался ошибкой по тайм-ауту. Причина выяснилась в режиме пошаговой отладки: "Комбеллга" после установки соединения не посылала в канал ни единого символа, ожидая нажатия "Enter" со стороны пользователя, что легко реализуется в скриптах Windows, но оказалось совершенно невозможным в скриптах маршрутизатора - он понимает пустое поле ожидаемой от сервера строки как конец скрипта и не предоставляет никакой возможности послать что-либо в канал до получения чего-либо от сервера.

   Будучи не в состоянии решить проблему самостоятельно, я написал два письма: в московское представительство ZyXEL и в "Комбеллгу". Готовность помочь выразили обе компании, причем ZyXEL предоставила мне бета-версию новой прошивки для маршрутизатора, а заодно и документацию на ZyNOS и команды модема (сейчас эта прошивка уже появилась в виде релиза на сайте www.zyxel.ru).

   Наевшись досыта проблем с обновлением флэш-памяти системных плат и видеоадаптеров, я стараюсь перезаписывать флэш аккуратно. Однако законы Мэрфи исправно соблюдаются: при обновлении микропрограммы маршрутизатора я грубо ошибся, попытавшись записать на место микропрограммы файл настроек маршрутизатора. Перед записью флэш-память стирается, поэтому по окончании попытки маршрутизатор остался без микропрограммы вообще. Однако код отладочного монитора, через который производится запись флэш-памяти, расположен отдельно, поэтому монитор продолжал нормально функционировать и поддерживать связь через последовательный порт маршрутизатора. При второй попытке микропрограмма записалась удачно. После повторной настройки я установил рекомендованный для "Комбеллги" протокол регистрации PAP, и все получилось. Не знаю даже, что явилось причиной - корректная работа новой версии ZyNOS с протоколами авторизации или изменения со стороны "Комбеллги", - но проблема была решена.

   Кроме этого, новая версия добавила недостававший DNS-прокси, что позволило мне снова забыть про фиксированные адреса DNS-серверов; стали нормально отправляться прямые сообщения ICQ, заработала программа traceroute, и появились дополнительные возможности настройки. Найти программы, которые не работали бы через маршрутизатор или требовали специальных установок типа "работа через proxy/socks", мне до сих пор не удалось.

   В результате почти месячной работы с маршрутизатором у меня даже появились пожелания к разработчикам:

   1) Предположим, я использую устройство дома, или у меня в офисе всего одна телефонная линия. Было бы очень полезно иметь программную утилиту, управляющую соединением: установить, разорвать, разорвать и не устанавливать по запросу, разрешить установку по запросу. А то, когда мне нужно срочно позвонить, приходится выдергивать шнур питания из маршрутизатора (выключателя на корпусе устройства нет).

   2) Было бы совсем круто, если бы эта штука научилась выполнять функции VPN-сервера, то есть инкапсулировать и шифровать пакеты, используя PPTP или L2TP (просто передавать их она умеет). Тогда два подобных маршрутизатора полностью решали бы проблему закрытого обмена данными через Интернет между двумя локальными сетями. Предполагаю, впрочем, что мне ответят: "Ну ты, блин, даешь. За такие деньги, да еще и VPN..." Однако для реализации этого пожелания не требуются изменения в аппаратной части устройства, все можно решить на микропрограммном уровне. А я и следующее предложу - VoIP (Voice over IP) с подключенного к маршрутизатору телефона. Здесь, правда, придется и аппаратуру модернизировать, но зато... Размечтался.



 
Prestige 100MH имеет
1) Четырехпортовый концентратор на 10љМбит/с под витую пару (если нужно больше портов, можно использовать дополнительный концентратор).
2) Модем стандарта V.90, который выполнен в виде отдельного модуля и может заменяться. ZyXEL устанавливает в эти маршрутизаторы два типа моемов: на чипсетах от Rockwell или от Texas Instruments. Последний, как говорят представители ZyXEL, работает в России лучше, поэтому он и будет устанавливаться в маршрутизаторы, поставляемые в нашу страну. Надо, правда, отметить, что мне достался экземпляр с чипсетом Rockwell.
3) Микропрограммно реализованный маршрутизатор между модемом и концентратором (для пользователя <микропрограммно> = <аппаратно>). Маршрутизатор может работать как в режиме с фиксированными IP-адресами из пула провайдера, так и в режиме трансляции адресов. Последнее обозначается изготовителем как SUA (Single User Account) и реализует протокол NAT. Эти аббревиатуры означают одно: локальная сеть использует произвольные IP-адреса (чаще всего это 192.168.х.х, не предназначенные для использования в Интернете), а маршрутизатор получает динамический адрес от провайдера и осуществляет <прозрачную> для приложений трансляцию адресов. Таким образом (ох, и нарываюсь я на недобрые слова провайдеров), к однопользовательскому учетному номеру можно подключить целую сеть. Если не использовать SUA, то маршрутизатор работает с реальными адресами и выполняет динамическую маршрутизацию, отсылая и принимая RIP-запросы.
4) DHCP-сервер для локальной сети, выделяющий IP-адреса динамически из указанного пула.
5) Firewall. Хотя эта функция устройства не указана явно, маршрутизатор имеет богатые возможности по настройке фильтров раздельно в обе стороны как по адресам, номерам протоколов, номерам портов, так и по произвольному шаблону для пакета, и отдельнољ- фильтры пакетов активизации соединения.
6) Dial-in-cервер, принимающий входящие звонки и выполняющий авторизацию.
7) Функции контроля времени работы с каждым провайдером, сжатие данных по протоколу Stac, управление по сети через встроенный Web-сервер или Telnet, соединение по требованию, авторизация по PAP и CHAP и в терминальном режиме, обратный звонок: да проще было бы перечислить, чего нет.


© ООО "Компьютерра-Онлайн", 1997-2022
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.