Linux mini-HOWTO

       

Настройка драйвера сетевой карты


Вы можете пропустить этот раздел, если обе ваших карты удачно распознаны ядром. В противном случае, эта секция для вас.

Так, значит одна из ваших карт не распознана ядром. На самом деле в этом нет ничего страшного. Что вам надо сделать, так это дать ядру немного более подробную информацию о том, как обнаружить ваши карты. В этом вопросе существует много хитростей и тонкостей, и я не собираюсь описывать их все. Запомните, если с этим возникнут трудности, то обращайтесь к "Ethernet HOWTO". Вот несколько обобщенных советов:

  • У вас сетевая карта на шине PCI. Скорее всего причина в том, что несмотря на то, что у вас такая новая и хорошая карта, драйверов к ней в ядре до сих пор нет. Много интересного вы узнаете, прочитав о своей сетевой карте (и других устройствах) в каталоге /proc/pci, записывая их производителей и модели.

  • У вас сетевая карта на шине ISA.

    Видимо, вам придется узнать адрес и IRQ, на которых работает карта. У вас ведь есть документация, не так ли? Если нет, то, наверное, вам стоит в поисках документации посетить web-сайт производителя карты (или чипа на ней: примечание переводчика). Или же у вас должна быть DOS-дискета - загрузите DOS и поищите на ней программу настройки, которая и укажет либо настроит необходимые адрес и IRQ.

  • У вас ISA PnP сетевая карта. Вам придется настроить эту карту -- как это сделать, подробно описано в "Plug'n'Play HOWTO". К счастью, когда вы настроите карту, вы будете точно знать адрес порта и IRQ сетевой карты.

Теперь, когда вы знаете производителя и модель сетевой карты eth0 и eth1, вы можете перейти к разделу "Совместимость" документа "Ethernet HOWTO" и найти в нем свою карту. Запишите название рекомендуемого драйвера и любую информацию о дополнительных параметрах, которые вам могут понадобиться.

Теперь наступило время редактировать конфигурационный файл! Мы будем править файл /etc/conf.modules. Откройте этот файл любым текстовым редактором. В этом файле может существовать много различных вариантов настроек и их комбинаций, поэтому я приведу здесь пример, основанный на моем шлюзе. У меня PCI 10/100Мбит-карта на чипе VIA Rhine, и обычная 10Мб ISA NE2000-совместимая карта. Я использую 100Мб для внутренней сети и 10Мб для внешнего соединения. Мой файл /etc/conf.modules выглядит примерно так:

alias parport_lowlevel parport_pc alias eth0 ne options ne io=0x300 irq=10 alias eth1 via-rhine


В нем проделывается примерно следующее:



  • Первая строчка указывает, что мой параллельный порт предназначен для печати. У вас, наверно, тоже есть такая строчка. Оставьте ее без изменений.



  • Вторая строчка (alias eth0 ne) указывает ядру использовать драйвер "ne" для устройства eth0.



  • В третьей строчке(options ne io=0x300 irq=10) написано, какой порт и IRQ использовать драйверу "ne" для работы с ISA-картой. Если у вас тоже ISA-карта, то вам тоже придется использовать эту директиву. Просто подставьте имя драйвера, соответствующий порт и номер IRQ.



  • В четвертой строке (alias eth1 via-rhine) указано использовать для устройства eth1 драйвер "via-rhine". Моя карта eth1 установлена на шине PCI, поэтому я не указываю номер порта или IRQ: шина PCI настраивает карту автоматически.



Вам обязательно надо убедиться в наличии строчек в файле conf.modules для обеих карт, а также строчек, задающих опции ISA-карт. Эти строчки уже могут присутствовать в файле conf.modules, если вы задавали их параметры в процессе инсталляции системы.

Когда вы закончите редактировать conf.modules, попробуйте снова запустить команды ifconfig eth0 и ifconfig eth1. Вы можете снова получить на экране различные предупреждения или ошибки, если перепутали адреса портов ввода-вывода или IRQ.

Две одинаковых сетевых карты

Итак, мои дорогие умники - купили две одинаковые сетевые карты для Linux-шлюза и не можете заставить их работать вместе? Не волнуйтесь - их работа зависит лишь от написания правильных опций в файле /etc/conf.modules. В этом примере я использовал придуманные адреса портов и номера IRQ, и предположил, что вы купили пару NE2000-совместимых карт (что очень распространено). Ваш файл /etc/conf.modules должен выглядеть примерно так:

alias eth0 ne alias eth1 ne options ne io=0x330,0x360 irq=7,9

Опции адреса порта и номера IRQ задаются в одной строке, и каждое первое число соответствует eth0, а второе, соответственно - eth1.


Содержание раздела