Linux mini-HOWTO

         

Мини-HOWTO: Мосты Ethernet


Christopher Cole
cole@coledd.com


Перевод: Станислав Рогин, ASPLinux

В этом документе описывается процесс настройки ethernet-моста. Что такое ethernet-мост? Ethernet-мост - это устройство, контролирующее пакеты данных, передаваемых в подсети, существующее для уменьшения нагрузки на сеть. Мост обычно устанавливается между двумя отдельными группами компьютеров, которые часто общаются внутри группы, но значительно реже между группами. Хороший пример использования моста - группа Макинтошей и группа Unix-машин. Обе этих группы достаточно плотно общаются между собой, перегружая сеть, и, в результате, этого мешают другим машинам передавать данные. Мост должен быть помещен между этими двумя группами. Задачей моста будет следующее: определять местонахождение получателя каждого пакета данных, чтобы отфильтровывать пакеты, которые не должны попадать в противоположный от отправителя сегмент ethernet. Результатом этого будет более быстрая и незагруженная сеть с меньшим количеством столкновений пакетов.



Общие проблемы


Вопрос

Я получаю сообщение

ioctl(SIOCGIFBR) failed: Package not installed Ошибка ioctl(SIOCGIFBR): Пакет не установлен

Что это означает?

Ответ

В ваше ядро не встроена поддержка мостов. Установите ядро версии 2.0 или новее, и пересоберите его со включенной опцией Ethernet-МОСТ (BRIDGING).

Вопрос

Машины в одном сегменте не видят другой сегмент даже при помощи ping!

Ответ

Включили ли вы мост командой ``brcfg -ena''? (brcfg должен вывести сообщение ``bridging is ENABLED'')

Установили ли вы интерфейсы в режим "promisc"? (используйте команду ``ifconfig''. Флаг ``PROMISC'' должен быть установлен на всех интерфейсах.)

Если вы используете адаптеры, поддерживающие разные типы соединений (кабели), убедитесь в том, что выбран правильный. Возможно вам придется использовать программу настройки, поставляемую вместе с картой.

Вопрос



У меня не работают команды telnet/ftp с машины с мостом! Почему?

Ответ

Это происходит потому, что ни один интерфейс на мосте не имеет IP-адреса. Мост должен быть прозрачен для сети.

Вопрос

Как нужно настраивать маршрутизацию в мосте?

Ответ

Никак! Все маршрутизация автоматически настраивается ядром. Чтобы узнать ethernet-адреса, обрабатываемые мостом, используйте программу brcfg в режиме отладки:

brcfg -deb

Вопрос

Мост вроде бы работает, но почему "traceroute" не показывает мост, как часть пути соединения?

Ответ

"Traceroute" не должен показывать мост, как часть пути соединения, из-за специфической сути самого моста. Мост не должен быть виден сети.

Вопрос

Нужно ли включать опцию IP_FORWARD при сборке ядра?

Ответ

Нет. Код моста в ядре работает на уровне транспорта пакетов. IP_FORWARD предназначен для шлюзов, в которых каждому интерфейсу назначается IP-адрес.

Вопрос

Почему физические ethernet-адреса интерфейсов идентичны (так показывает программа ``brcfg'')? Не должны ли они различаться?

Ответ

Нет. Каждый интерфейс на мосте получает одинаковый адрес от кода управления мостом в ядре.

Вопрос

Опция "Ethernet-мосты (Bridging)" не появляется при конфигурировании ядра. Как же мне ее включить?

Ответ


В процессе конфигурирования ядра ответьте "Да" (Y) на вопрос "Запрашивать установку экспериментальных и/или не полностью готовых частей кода/драйверов" (Prompt for development and/or incomplete code/drivers (CONFIG_EXPERIMENTAL) [Y/n/?]".



Вопрос

Большое количество хабов (4 и больше), соединенных последовательно один за другим, вызывают задержки в сети ethernet. Какой эффект произведет мост на сеть, в котором используется несколько хабов?

Ответ

Мост аннулирует эффект нескольких хабов. Мост обрабатывает пакеты по-другому, не так как хаб, поэтому не может вызвать проблем с задержками.



Вопрос

Может ли мост работать между 10- и 100-мегабитным сегментами? Замедлит ли подобная конфигурация трафик на быстром сегменте?

Ответ

Да, мост может соединить 10- и 100-мегабитные сегменты. Так как сетевая карта на быстрой части сети поддерживает 100 Мбит, TCP занимается всем остальным. Пакеты, идущие с хоста в 100-мегабитной части сети на хост, находящийся в 10-мегабитной части, идут, конечно, со скоростью 10 мегабит. На трафик, идущий внутри 100 мегабитной части сети (включая трафик через мост из 100Мб в 100Мб сегмент) медленная сеть влияния не оказывает.