Глава 2
Настройка сетевых средств TCP/IP
Несмотря на то что ядро является главным компонентом системы Linux и помимо выполнения прочих задач контролирует процесс обмена данными по сети, настройка системы для работы в сети не исчерпывается конфигурированием ядра. В данной главе рассматриваются вопросы, имеющие непосредственное отношение к организации сетевого взаимодействия: использование статических IP-адресов, а также применение протоколов DHCP (Dynamic Host Configuration Protocol — протокол динамической настройки узла) и PPP (Point-to-Point Protocol). Протокол DHCP позволяет организовать автоматическое выделение IP-адресов, а протокол PPP обеспечивает соединение по коммутируемой линии. При использовании статических IP-адресов приходится устанавливать конфигурацию соответствующих компонентов системы вручную. Существует большое количество инструментальных средств, упрощающих как автоматическую, так и ручную установку конфигурации системы. Если вы собираетесь выполнять работы по администрированию системы, вам следует ознакомиться с этими инструментами. Однако, перед тем как приступать к обсуждению вопросов, связанных с настройкой системы, необходимо рассмотреть процесс загрузки сетевых драйверов.
Загрузка сетевых драйверов
Первым шагом в настройке сетевых устройств является загрузка соответствующих драйверов. Как было сказано в главе 1, драйверы подготавливаются к работе одним из двух способов: драйвер может быть непосредственно включен в состав ядра Linux либо скомпилирован в виде отдельного модуля. В первом случае загрузка сетевого драйвера не вызывает затруднений. Драйверам некоторых сетевых карт приходится передавать параметры, используя для этого опции загрузки. Если вы применяете LILO, параметры передаются посредством опции append, содержащейся в файле /etc/lilo.conf
. Например, приведенная ниже строка сообщает ядру о том, что устройство eth0
(первая сетевая карта) подключено через порт с номером 0x240.
append="ether=0,0,0x240,eth0"
После ключевого слова append
можно указать несколько значений, поместив их в кавычки и разделив пробелами. Указание порта для конкретного устройства чаще всего используется в системах, содержащих несколько сетевых интерфейсов; в данном примере логическое устройство явным образом связывается с конкретным физическим устройством. В большинстве случаев передавать параметры драйверам, встроенным в ядро, нет необходимости. Драйвер выявляет сетевую карту и обеспечивает доступ к ней без вмешательства администратора.
Если драйвер скомпилирован как отдельный модуль, параметры передаются ему посредством файла /etc/modules.conf
(в некоторых системах этот файл имеет имя /etc/conf.modules
). Например, данный файл может содержать следующие строки:
alias eth0 ne options ne io=0x240
Приведенные выше две строки сообщают системе о том, что для устройства eth0
, подключенного через порт ввода-вывода 0x240, должен использоваться драйвер, содержащийся в модуле ne
. В большинстве случаев в подобном указании нет необходимости. Оно нужно в основном тогда, когда в системе присутствует несколько сетевых интерфейсов. Инструментальные средства настройки, содержащиеся в составе многих дистрибутивных пакетов, позволяют автоматизировать этот процесс. Вам достаточно выбрать из списка модель сетевой карты и драйвер, после чего требуемые записи будут автоматически включены в файл /etc/modules.conf
.
Если вы включили требуемую запись в файл /etc/modules.conf
, то при попытке активизировать сетевой интерфейс система Linux автоматически загрузит сетевой драйвер. Если по каким-либо причинам вы хотите сделать это вручную, воспользуйтесь командой insmod
.
# insmod ne
В результате выполнения этой команды модуль ne
будет загружен и готов к использованию. Если средства автозагрузки модулей работают ненадежно, вам, возможно, придется включить указанную выше команду в файл /etc/rc.d/rc.local
или /etc/rc.d/boot.local
.
В некоторых случаях передача данных происходит с помощью протоколов PPP, SLIP или PLIP, а компьютеры соединяются через последовательные или параллельные порты. При этом приходится отдельно загружать драйвер, предназначенный для управления устройством, и драйвер, поддерживающий протокол обмена данными. Такие драйверы подготавливаются так же, как и драйверы сетевых карт: они либо встраиваются непосредственно в ядро, либо компилируются в виде отдельных модулей. В некоторых случаях требуются дополнительные драйверы. Например, для использования модема, подключенного через интерфейс USB, требуются два или три драйвера.
Читать дальше