Предстоящий праздник очень далек от сетей (пользуясь случаем, поздравляю нечастых на этой странице дам). Правда, если говорить о сетях "домашних", то неизбежно возникают некоторые фрейдистские ассоциации или даже прямые намеки. И это к лучшему - внеочередной выпуск содержит интересную, но весьма специализированную статью "софтового" направления. Соответственно, читать ее будут только настоящие "фанаты" - а остальные могут спокойно праздновать. ;-)
Если кто-то не видел предыдущий плановый обзор - #126 тут.
Но сначала - небольшое отступление. Итоги конкурса "десятитысячное сообщение в форуме" нужно подвести незамедлительно.
Победителя зовут Serzh, что можно видеть по этой ссылке. Так как, судя по всему, пока он не знает о выигрыше - не могу сказать точно, какая из коробок попадет в его руки в ближайшие несколько дней.
Надеюсь, к лету можно будет ожидать сообщения в форуме под номером 20000. Понятно, что и приз придется удвоить. ;-)
Автор статьи - Евгений Кондратов aka Udjin - организатор одной из первых в России домашних ethernet-сети (1996 год, г. Находка). Соединены были шесть компьютеров в доме.
Все что Вы прочтете ниже не претендует на полноту и
отражает субъективную точку зрения Автора.
Сокращения принятые в тексте:
Почему.
Довольно долгое время я использовал в своей работе продукты Microsoft. В частности: NT4, NT2000. IIS3 - 4, MS PROXY SERVER, MS SQL Server 6.5 - 7.0 - 2000.
Они хороши, и у меня не было причин отказываться от их использования (некоторые из них я и по сей день использую и буду использовать), но таки решил "уходить" на свободно-распространимое программное обеспечение.
Причина - непрозрачность продуктов от MS. За дружелюбным интерфейсом которых кроется нечто, работающее по собственным правилам, и навязывающее свою волю пользователю. Для меня этого оказалось достаточным, чтобы обосновать перед самим собой отказ от продуктов MS и уход под знамена GPL (???).
Выбор ПО.
Передо мною лежат коробки с операционными системами RedHat 7.1, Free BSD 4.4, AltLinux Junior 1.1, AltLinux Business Server RosLinux 1.1 - их можно разделить на 3 семейства: RedHat, FreeBSD и клоны Mandrake.
Все указанные выше операционные системы я пощупал, опробовал на различных за дачах, сделал выводы. Поскольку мне нужно работать, а не собирать "кубик-рубика" по эмпирическим правилам, то выбор пал на Free BSD.
Стройная и понятная операционная система для сервера. Логичная. Строгая. Мечта системного администратора. Сторонникам семейства Линуксов также воздалось - тексты набираются на машине, работающей под управлением RedHat 7.3. Домашняя сеть маршрутизируется в интернет через шлюз под управлением FreeSCO.
О чем статьи?
Серия статей будет посвящена решению конкретных задач. Под каждую задачу выбиралось наиболее оптимальное, с моей точки зрения, решение. В статьях я опишу последовательность действий , и попытаюсь обосновать свой выбор в каждом конкретном случае.
Критерий оценки оптимальности выбора - деньги потребные на создание соизмеримого по требуемой функциональности программно/аппаратного комплекса.
Задача 1. Строим программный Роутер.
Домашняя сеть из 3-х персональных компьютеров. Доступ в интернет - модемное соединение. Необходимо раздать интернет-трафик внутри DMZ (равноправно) и сделать сие "дешево и сердито".
Первоначально решалось следующим образом:
Машина: P200MMX 64Mb RAM 2GB SCSI, Ethernet 10/100 PCI, Courier V. Everything
ПО: NT4 Workstation + eServ 2.96 (позже Squid 2.4) + AtGuard
Поиск программного роутера.
Для домашней сети покупать сервер доступа от CISCO или роутер Zyxel накладно, но хотелось иметь нечто с интерфейсом IOS CISCO, столь же надежное, в рамках разумного, и как можно дешевле.
Однодисковых дистрибутивов в сети достаточно (начиная с образцово-показательного "демо" от QNX). Я остановил свой выбор на FreeSCO (freesco.wallst.ru). Автор сего произведения "админского" искусства - Serge V. Storozhevykh.
FreeSCO - это реинкарнация мини роутера "Ballantain" (http://freesco.wallst.ru/ballantain/bltrus.shtml, http://www.atom.krasnet.ru/~evg/ipmasq.shtml) того же автора.
Текущая версия FreeSCO, на момент написания статьи - 0.2.7
Подкупила меня его универсальность и не требовательность к железу. Разработчик заявляет минимально 386 процессор, 6(8) мегабайт памяти + Floppy Drive.
Что умеет Freesco
386-й процессор найти не удалось, но попался в чудно тонком slim-case 486 DX66 + 16 Мб RAM + 120MB IDE (Sea Gate), 3COM509, Winbond Multi Port Adapter. Плюс на время инсталляции использовался флоппи-драйв. Доступ в интернет - модем Courier.
Установка.
Перед установкой желательно препарировать жесткий диск - разметить fdisc, отформатировать его и сделать загрузочным. Перемещайтесь к разделу download, и качайте (нужно 2 zip-файла - freesco-027.zip и modules-027.zip). Распакуйте их куда будет удобно.
Что мы имеем.
Папка TCLIENT.W9x, клиент Time Server для Windows 95/98
Папка TCLIENT.UIX, клиент Time Server для linux (unix)
Файлы:
В каталоге модулей находится детальная инструкция по установке модулей (драйверы для различных сетевых карт и наборы раскладок клавиатуры на все случаи жизни).
Теперь сделайте загрузочный диск: rawrite.exe freesco.XYZ, и загрузитесь с него.
После того, как получите приглашение операционной системы, заходите как root (имя - root и пароль root). Далее: move2hdd.
Удалите из флоппи драйва загрузочный диск и наберите в командной строке router.bat setup
Настройка.
Прежде чем приступить к настройке, необходимо спланировать свою сеть и сервисы которые вы будете использовать.
В моем случае это выглядит следующим образом:
Для первичной настройки рекомендую воспользоваться мастером, и он шаг за шагом проведет вас по всем возможным опциям.
Выглядит это следующим образом:
Выбирайте опцию меню Modem-to-Ethernet router in dial-on-demand mode (analog or ISDN modem) - (Роутер между интерфейсами модема и Ethernet в режиме дозвона по требованию).
Ниже описаны наиболее важные, с моей точки зрения, настройки.
711 Hostname of this computer [router]? Press
Тут запрашивается имя вашего роутера. У меня - kuzya;-)
712 Domain name [inet]? Press
Имя вашей сети (DMZ) - FREENET
How many ethernet cards do you have [1-3]? 3
Количество установленных ETHERNET карт - 1
811 I/O port address of 1st ethernet card [0x300]?
812 IRQ line of 1st ethernet card [11]?
Последовательно будут запрошены адреса ввода / вывода и прерывания для каждого из адаптеров, в случае - если используются PnP адаптеры - можно пропустить эти настройки
720 Use DHCP client for configuring 1st network interface y/n [n]? n
Для моего случая (подключение к провайдеру по модему) необходимо указать "n", если используется в качестве внешнего интерфейса ETHERNET или доступ осуществляется с помощью кабельного модема - придется использовать клиента DHCP.
721 IP address of 1st network interface [10.0.0.1]? Press
722 Network mask [255.0.0.0]? Press
723 IP range [10.0.0.100 10.0.0.150]? Press
Для нашего случая не принципиально. В случае выделенного канала - запросите адрес у провайдера.
14 Screen saver, in minutes. 0 - disable [0]? Press 0
15 Swap file size in kbytes (on boot device). 0 - disable [0]?
Размер файла подкачки - у меня 16.
Далее мастер попробует идентифицировать ваш модем и настроить параметры порта. Нужно учитывать, что SOFT-модемы не опознаются.
32 Host DNS address (usually your provider's DNS) []?
Тут необходимо указать IP DNS - сервера провайдера. Будут запрошены первичный и вторичный DNS сервера.
16 Keep up ppp link for N sec. 0 - use filter.cfg; 1 - forever. [600]? Press
У меня - 1. Или укажите количество секунд не активности соединения.
31 ISP phone numbers [T4004444 T5004444]?
Номера модемного пула провайдера. T - тон набор, P - пульс.
331 Does your ISP give you dynamic IP address [y]? Press
Выбирается в зависимости от того, выделяет Ваш провайдер адреса клиентам из динамического диапазона, или вы имеете постоянный адрес соединения. В моем случе - y. Если постоянное соединение или фиксированный IP - то укажите его.
Остальные пункты настройки очевидны - на всякий случай тут приведен укороченный листинг реальной конфигурации.
После того, как сохраните конфигурацию - перезагрузитесь командой reboot. И после перезагрузки Ваш роутер самостоятельно дозвонится до провайдера с получением первого запроса от клиентов DMZ.
Следующим шагом меняйте пароли установленные по умолчанию.
В системе уже существуют следующие пользователи:
Необходимо сменить пароли пользователям:
Команда - chpass [имя пользователя].
Доступ к интерфейсу администрирования через www - http://192.168.0.1:82 Для инсталляции дополнительных пакетов используйте утилиту installpkg (installpkg http://anyvhere.any/any.sh)
Для обеспечения загрузки компьютера c FreeSCO без монитора и клавиатуры измените настройки CMOS SETUP - в частности поставте в разделе GENERAL:
HALT - NO ERROR
Монитор и клавиатуру можно отключать, тщательно смажьте подшипник вентилятора в блоке питания циатимом с графитом и забудьте о своем роутере. У меня за 3 месяца работы не было ни одного сбоя.
На стороне клиентов настройки сводятся к установке протокола TCP-IP c получением параметров по DHCP. Никаких дополнительных настроек на клиентах делать не требуется. Все работает благодоря NAT прозрачно.
Загрузка процессора при обслуживании трех клиентов не превышает 4%. Используется при работе 13,2 мб памяти. Таким образом 486DX66 способен маршрутизировать сеть куда большую, чем моя домашняя, и на более значительных скоростях.
Оценка программного роутера FreeSCO:
Персональный компьютер 486 DX66/16/120/3C-509 - US 30
FreeSCO - US 0
Итого: US 30
Для примера, аналогичная конфигурация которую я использовал ранее:
P200/64/2GB/3C-509 - US 100
NT4Workstation - US 120
eServ - US 90
Итого: US 310
Ссылки на ресурсы:
Фотографии посвящаются тем, кто все же дочитал текст до конца.
Ну или не поленился крутнуть "вниз" колесико мышки. :-)
Конечно исполнение "новорусское"... И не только санузла. :-)
Работает примерно в таком виде (менялись модемы, добавлялись порты) уже года 4...