ргр. Конспект лекций ПЕРЕСДАТЬ. Конспект лекций по дисциплине "Управление и перспективы развития инфокоммуникационных систем" для докторантов специальности
Скачать 1.63 Mb.
|
Телекоммуникационные устройства в ОС LinuxМодемы и интерфейсные сетевые карты — это аппаратные телекоммуникационные устройства, подключаемые к ПК (часто с использованием слотов на материнской плате). Вначале эти устройства должны быть опознаны операционной системой Linux, в противном случае они могут работать некорректно. Для нормального функционирования этих устройств в ОС Linux необходимы специальные драйверы и программное обеспечение. На рисунке 1 представлено программное и аппаратное обеспечение, необходимое для нормальной работы телекоммуникационных устройств. Рисунке 1 - Уровни работы телекоммуникационных устройств Как видно из рисунка1, каждое телекоммуникационное устройство должно взаимодействовать с ядром ОС Linux. Как было сказано в предыдущей лекции, ядро отвечает за управление интерфейсами, которые назначаются телекоммуникационным устройствам. Как правило, это достигается с помощью загружаемых драйверов, которые называются модулями. Эти модули можно устанавливать при загрузке системы с помощью механизма сценариев. В свою очередь, ядру должны быть известны все параметры устройств в системе, чтобы оно могло работать с ними корректно. После того как ядро системы обнаружило и сконфигурировало телекоммуникационные устройства, должна быть обеспечена возможность доступа к устройству, соответствующему программному обеспечению. Если же речь идет о сервере электронной почты, то программное обеспечение должно соответствовать протоколу TCP/IP. Программное обеспечение TCP/IP для ОС Linux позволяет прикладным программам посылать пакеты TCP/IP через сетевой адаптер и модем удаленным устройствам на основе IP-адресов. Для нормальной работы стека протоколов TCP/IP необходим определенный набор параметров IP. Наиболее важными для организации IP-соединения являются: IP-адрес устройства; маска подсети IP; адрес IP-маршрутизатора по умолчанию (шлюза); серверы системы доменных имен DNS. IP-адрес является уникальным идентификатором почтового сервера на базе ОС Linux в IP-сети офиса. Маска подсети определяет размер IP-сети офиса. Это позволяет почтовому серверу правильно определять время пересылки IP-пакетов на маршрутизатор для дальнейшей их отправки удаленным узлам. Маршрутизатор обычно используется сервером электронной почты для передачи пакетов удаленным узлам. Последним параметром для нормальной работы почтового сервера на базе ОС Linux является настройка сервера системы доменных имен — DNS. Адресация в сетях IP основана на числовых адресах. Система доменных имен DNS сопоставляет IP-адреса с символьными именами хостов. Благодаря этому пользователи и программы работают с пространством имен хостов, а не с длинной последовательностью чисел, представляющей IP-адрес. Сервер DNS возвращает IP-адрес на заданное имя хоста. В следующем разделе описывается процесс установки и настройки сетевых адаптеров на почтовом сервере под управлением ОС Linux. Установка и конфигурирование сетевых адаптеровОперационной системой Linux поддерживается огромное количество различных сетевых адаптеров. Большинство дистрибутивов Linux при установке автоматически определяют установленный сетевой адаптер и соответствующим образом изменяет ядро. Если же сетевой адаптер устанавливается на систему с уже установленной ОС Linux, то придется сконфигурировать его в ядре вручную. Для установки и настройки сетевых адаптеров вручную в системе Linux применяется программа ifconfig. В некоторые дистрибутивы ОС Linux входит графическая оболочка X Window, с помощью которой установка параметров программы ifconfig несколько облегчается. В Red Hat и Mandrake Linux для настройки установленных сетевых адаптеров используется программа netcfg. В этом разделе будет рассмотрена работа программы ifconfig по обнаружению и настройке сетевых адаптеров при начальной загрузке, а также более подробно будет описана работа программы netcfg. Конфигурирование сетевых адаптеров при начальной загрузкеПосле того как сетевой адаптер был правильно настроен (вручную либо автоматически), сервер на базе ОС Linux может общаться с другими устройствами в офисной локальной сети. Однако имеется одна проблема: после перезагрузки сервера на Linux вся информация о сетевом устройстве теряется. Для внесения информации о сетевых устройствах в специальную таблицу в ядре применяется команда ifconfig. Эта таблица создается в ядре при каждой загрузке сервера на основе сценариев конфигурации. Программе ifconfig требуется запустить в процессе загрузки файл сценария, в котором задаются необходимые команды ifconfig для запуска сетевого адаптера. Во всех версиях ОС Linux имеются файлы сценариев, которые применяются при начальной загрузке для запуска различных программ. К сожалению, различные поставщики ОС Linux в своих дистрибутивах используют различные методы запуска для файлов сценариев. Так, в дистрибутивах Linux Mandrake, Caldera и Red Hat применяется метод init, присущий системам UNIX Sys V, который мы здесь и обсудим. Метод инициализации Sys V довольно сложен и состоит из набора файлов сценариев. Сам процесс инициализации разделен на уровни запуска. На каждом уровне запуска выполняется набор файлов сценариев для инициализации определенных устройств, соответствующих данному уровню запуска. На рисунке 2 дается обзор сценариев, используемых ОС Linux для загрузки конфигурационной информации об уровнях запуска в процессе начальной загрузки системы. Рисунок 2 - Процесс начальной загрузки в ОС Linux Каталог /etc/rc.d содержит сценарии, которые запускаются в соответствии с уровнем запуска init в системе. Как правило, сервер на базе Linux функционирует либо на 3-м уровне запуска (в режиме консоли), либо на 5-м уровне (в режиме X Window). На том и другом уровнях запуска используется один и тот же сценарий для запуска сетевых устройств — S10network, который находится в каталоге /etc/rc.d/rc3.d или в /etc/rc.d/rc5.d. Сценарий S10network запускает на сервере сетевые функции. Далее им используется еще один сценарий — ifup, который пытается запустить все возможные сетевые интерфейсы, сконфигурированные в процессе начальной загрузки. Сценарий ifup находится в каталоге /etc/sysconfig/network-scripts. Каждому сконфигурированному в ОС Linux сетевому интерфейсу соответствует свой файл в каталоге /etc/sysconfig/network-scripts. Устройству /dev/eth0 соответствует файл ifcfg-eth0. В листинге 1 показан пример файла, созданного в ОС Linux для сетевого устройства eth0. 1 DEVICE=ethO 2 IPADDR=192.168.1.1 3 NETMASK=255.255.255.8 4 NETWORK=192.168.1.0 5 BROADCAST=158.18.1.255 6 ONBOOT=yes 7 BOOTPROTO=none Листинг 1. Примерфайла /etc/sysconfig/network-scripts/ifcfg-eth0 (html, txt) В файле ifcfg-eth0 описываются переменные окружения, которые используются сценарием ifup для запуска сетевых интерфейсов. Строка в сценарии ifup, которая обращается к этим переменным выглядит примерно следующим образом: ifconfig ${DEVICE} ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST} Формат командной строки ifconfig в сценарии ifup в точности соответствует команде, вводимой вручную из командной строки. Если же вы вознамерились создать собственный сценарий для нового сетевого интерфейса, то он может и не быть столь сложным и изощренным, как тот, что генерируется в Red Hat Linux. Все, что вам нужно, — это вписать необходимые строки ifconfig для запуска сетевого интерфейса. Если имя устройства и его IP-адрес известны, то вам не придется использовать переменные окружения и отдельно файлы конфигурации. Достаточно лишь задать конфигурацию в одной строке файла сценария S10network. |