Linux
Шрифт:
Обычно в небольших локальных сетях выделяется один компьютер, который и выполняет роль маршрутизатора между локальной сетью и Интернетом, а также – счетчика трафика, брандмауэра, ограничителя скорости Web-сервера и т. п. Почти все, что необходимо для создания такой многопрофильной системы мы уже описывали выше, поэтому в этой главе остановимся только на тех проблемах, которые еще не рассматривались.
Начальные установки
Как правило во всех современных дистрибутивах Linux ядро собрано так, что работает как маршрутизатор пакетов между разными сетями и поддерживает механизм
Однако не будет лишним убедиться перед началом настройки системы, что в ядре вашей операционной системы присутствуют следующие необходимые для построения маршрутизатора элементы (функции):
• Networking support (поддержка сетевых свойств);
• TCP/IP networking (поддержка TCP/IP);
• IP forwarding/gatewaying (поддержка IP-маршрутизации);
• IP multicasting (поддержка специфических свойств IP-протокола);
• IP firewalling (поддержка брадмауэров);
• IP accounting (поддержка управления IP);
• Network device support (поддержка сетевых устройств).
Помимо этого, ядро операционной системы должно уметь работать с сетевыми картами, установленными на вашем компьютере, и поддерживать протокол РРР (Point-to-Point Protocol).
Само собой, следует правильно настроить сетевое оборудование, IP-адреса и т. п.
Связь с провайдером
Для подключения локальной сети к Интернету при помощи модема обычно используют два варианта. Первый из них предназначен для тех, кто платит за трафик, а второй используется теми, кто оплачивает проведенное в Интернете время.
В первом случае выход в Интернет осуществляется при помощи стандартного для Linux набора программ – pppd, chat и, возможно, еще нескольких скриптов. Происходит это следующим образом – вначале маршрутизатор дозванивается до провайдера и устанавливает с ним связь по протоколу РРР или по протоколу SLIP, который сейчас используется крайне редко. После установления соединения полученным каналом может пользоваться любой компьютер в вашей локальной сети (при соответствующей настройке). Канал удерживается до тех пор, пока не выключится ваш маршрутизатор или администратор явным образом не разорвет соединение.
Второй вариант – модификация первого, в англоязычной литературе он носит название dial on demand (звонок по требованию). Для его организации дополнительно используется программа diald, с помощью которой можно организовать работу таким образом, что если в течение заранее обусловленного времени не происходит обмена данными между локальной сетью и Интернетом, то diald разрывает соединение. При первой же попытке пользователя подключиться к Интернету diald снова дозванивается и устанавливает связь.
Поскольку второй вариант более сложный – будем рассматривать его как основной для организации нашего маршрутизатора.
Схема организации подключения локальной сети
Ниже приведены требования, которым должно удовлетворять подключение локальной сети к Интернету.
• Возможность доступа в Интернет – модем, телефонный номер и подключение к провайдеру.
• Набор программ для организации связи – pppd, chat и diald.
• Средство для управления брандмауэром – утилиты ipchains
или iptables.• Средство для ограничения трафика (если необходимо).
• Программное обеспечения для организации proxy-сервера.
• Программное обеспечение для учета и просмотра статистики.
Теперь, когда цели и средства известны, можно приступать к настройке программ.
Организация связи по коммутируемому соединению
Старейший вариант соединения с провайдером, и, к сожалению, наиболее распространенный в нашей стране. По сравнению с организацией связи по выделенному каналу представляет собой схему более сложную, поэтому рассмотрим ее первой.
Настройка программ
Будем считать, что на компьютере, который будет выходить в Интернет, правильно настроены сетевые параметры, и вы убедились в работоспособности локальной сети. Следующий шаг – добиться устойчивой связи с провайдером на вашем компьютере-маршрутизаторе.
Настройка связи с провайдером
Настроим подсистему дозвона и соединения с провайдером. Для удобства разобьем работу на два этапа:
1. Настройка РРР-соединения.
2. Установка и конфигурирование демона дозвона по требованию (diald).
Настройку модемного соединения мы здесь рассматривать не будем, поскольку это достаточно простая задача, и очень подробно рассмотрена в работе одного из отечественных патриархов Linux – В. Водолазкого "Установка РРР-соединения в Linux".
Почему мы используем протокол РРР? Основные преимущества протокола РРР по сравнению с протоколом SLIP состоят в следующем:
• назначение IP-адресов в РРР реализуется с помощью демона pppd, что значительно упрощает процесс конфигурирования при использовании динамических IP-адресов;
• коррекция ошибок, возникающих при передаче данных, осуществляется между компьютером провайдера и клиента, а не между удаленным компьютером, откуда берутся данные, и потребителем, как в протоколе SLIP.
Для организации связи между провайдером и клиентом необходимо получить данные, представленные в табл. 30.1.
Таблица 30.1. Необходимые данные для настройки модемного соединения
Процесс установления связи между вами и провайдером состоит из следующих этапов:
• соединения с компьютером провайдера с помощью модема;
• регистрации пользователя в удаленной системе;
• установки РРР-соединения.
Для решения этих задач в Linux используется небольшой набор скриптов, каждый из которых выполняет какую-то небольшую функцию. А поскольку это набор скриптов – никто не мешает на их базе определить именно те действия, которые необходимы вам при установлении или обрыве РРР-соединения.
Размещение скриптов зависит от настройки и предпочтений вашего дистрибутива. В современных версиях дистрибутива Red Hat используется два места – каталоги /etc/ррр и /etc/sysconfig/network-scripts. Наименования скриптов так же могут быть произвольными и очень часто зависят от предпочтений сборщика дистрибутива или системного администратора.