Приветствую.

Появилось свободное время - готов продолжить перевод advanced-networking, но 
хотелось бы все же уточнить по поводу предыдущего куска про настройку мостов. 
Все ли там нормально (с точки зрения SGML оформления)? Я так понимаю, что 
что-то все таки не правильно - из-за чего кусок еще не включен в общий 
участок статьи?







====

Незаметил, что при отсылке первого сообщения строки поврапились под 78 
символов...
Вот корректный патч.

====

--- ./orig/chapter.sgml 2006-06-20 21:02:31.000000000 +0300
+++ ./work/chapter.sgml 2009-03-08 19:52:09.000000000 +0200
@@ -2,7 +2,7 @@
      The FreeBSD Russian Documentation Project
 
      $FreeBSD$
-     $FreeBSDru: 
frdp/doc/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml,v 1.123 
2006/06/20 18:02:31 marck Exp $
+     $FreeBSDru: 
frdp/doc/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml,v 1.124 
2006/06/20 18:02:31 marck Exp $
 
      Original revision: 1.382
 -->
@@ -1923,8 +1923,8 @@
     <sect1info>
       <authorgroup>
        <author>
-         <firstname>Steve</firstname>
-         <surname>Peterson</surname>
+       <firstname>Andrew</firstname>
+       <surname>Thompson</surname>
          <contrib>Текст создал </contrib>
        </author>
       </authorgroup>
@@ -1955,32 +1955,22 @@
     </sect2>
 
     <sect2>
-      <title>Ситуации, когда можно использовать мосты</title>
+      <title>Ситуации в которых оправданно использование мостов</title>
 
-      <para>На сегодняшний день есть две ситуации, когда можно использовать
+      <para>На сегодняшний день есть множество ситуаций, когда можно 
использовать
        мост.</para>
 
       <sect3>
-       <title>Большой трафик в сегменте</title>
-
-       <para>Первая ситуация возникает, когда ваша физическая сеть перегружена
-         трафиком, но по каким-то соображениям вы не хотите разделять сеть
-         на подсети и соединять их с помощью маршрутизатора.</para>
-
-       <para>Давайте рассмотрим в качестве примера газету, в которой
-         редакторский и производственный отделы находятся в одной и той же
-         подсети.  Пользователи в редакторском отделе все используют сервер
-         <hostid>A</hostid> для служб доступа к файлам, а пользователи
-         производственного отдела используют сервер <hostid>B</hostid>.  Для
-         объединения всех пользователей используется сеть Ethernet, а высокая
-         нагрузка на сеть замедляет работу.</para>
-
-       <para>Если пользователи редакторского отдела могут быть собраны в
-         одном сегменте сети, а пользователи производственного отдела в
-         другом, то два сетевых сегмента можно объединить мостом.  Только
-         сетевой трафик, предназначенный для интерфейсов с
-         <quote>другой</quote> стороны моста, будет посылаться в другую сеть,
-         тем самым снижая уровень нагрузки на каждый сегмент сети.</para>
+       <title>Соединение сетей</title>
+       
+       <para>Мосты используются в основном для объединения вместе двух
+         или более сетевых сегментов.  Есть много причин для использования
+         программного моста вместо решений на базе сетевого оборудования,
+         например ограниченность в линиях связи, желание использовать файервол
+         или объединение в отдельные сети интерфейсов виртуальных машин.  Мост
+         так же может объединить интерфейс беспроводной сети с проводной сетью,
+         и выступать в режиме точки доступа.
+       </para>
       </sect3>
 
       <sect3>
@@ -1991,7 +1981,7 @@
 
        <indexterm><primary>NAT</primary></indexterm>
 
-       <para>Второй распространённой ситуацией является необходимость в
+       <para>Распространённой ситуацией является необходимость в
          обеспечении функций сетевого экрана без трансляции
          сетевых адресов (NAT).</para>
 
@@ -2009,116 +1999,404 @@
          между маршрутизаторами DSL/ISDN без каких-либо проблем с
          IP-адресацией.</para>
       </sect3>
-    </sect2>
-
-    <sect2>
-      <title>Настройка моста</title>
 
       <sect3>
-       <title>Выбор сетевого адаптера</title>
+       <title>Сетевой сниффер</title>
+       
+       <para>С помощью моста можно объединить несколько сетевых сегментов и 
использовать
+         его для анализа Ethernet фреймов проходящих между сегментами.  Этого 
можно
+         добиться путем использования &man.bpf.4;/&man.tcpdump.1; на 
интерфейсах
+         моста, или же пересылкой копий всех проходящих фреймов через отдельный
+         интерфейс (span port).</para>
+      </sect3>
 
-       <para>Для работы моста требуются по крайней мере два сетевых адаптера.
-         К сожалению, не все сетевые адаптеры поддерживают
-         функции моста.  Прочтите страницу Справочника по &man.bridge.4; для
-         выяснения подробностей о поддерживаемых адаптерах.</para>
+      <sect3>
+       <title>Виртуальная частная сеть (VPN) на Уровне 2</title>
 
-       <para>Перед тем, как продолжить, сначала установите и протестируйте
-         два сетевых адаптера.</para>
+       <para>Две Ethernet сети могут быть объединены тоннелем поверх IP 
соединения
+         с помощью EtherIP моста, или на основе &man.tap.4; решения такого как 
OpenVPN.</para>
       </sect3>
 
       <sect3>
-       <title>Изменения в конфигурации ядра</title>
+       <title>Отказоустойчивость на Уровне 2</title>
+       <para>Сеть может состоять из устройств соединенных множественными 
линиями
+         передачи информации, и использовать Протокол Связующего Дерева
+         (Spanning Tree Protocol) для блокировки избыточных путей.  Для 
корректной
+         работы Ethernet сети необходимо, чтобы между двумя устройствами 
одновременно
+         существовал только один активный путь передачи информации.  Протокол 
Связующего
+         Дерева обнаруживает петли в сети и блокирует избыточные линии передачи
+         информации.  В случае повреждения одной из активных линий передачи, 
протокол
+         произведет пересчет структуры дерева связей и разблокирует неактивные 
линии
+         передачи чтобы восстановить соединение со всеми узлами в сети.</para>
+      </sect3>
+    </sect2>
 
-       <indexterm>
-         <primary>параметры ядра</primary>
+    <sect2>
+      <title>Настройка ядра</title>
 
-         <secondary>BRIDGE</secondary>
-       </indexterm>
+      <para>В этом разделе описывается настройка моста на основе 
&man.if.bridge.4;,
+         кроме того, для построения моста так же можно использовать
+         драйвер подсистемы netgraph &man.ng.bridge.4;.</para>
+
+      <para>Драйвер моста является модулем ядра и его загрузка произойдет
+         автоматически во время создания нового интерфейса моста через 
&man.ifconfig.8;.
+         Так же возможно встроить мост непосредственно
+         в ядро, добавив <literal>device if_bridge</literal> в файл
+         конфигурации Вашего ядра.</para>
+
+      <para>Фильтрация пакетов может быть задействована с использованием 
любого
+         брандмауэра работающего через инфраструктуру &man.pfil.9;.
+         Брандмауэр может быть загружен как модуль ядра или же встроен в 
ядро.</para>
+
+      <para>Мост может использоваться в качестве трафик-шейпера задействуя
+         подсистемы &man.altq.4; или &man.dummynet.4;.</para>
+    </sect2>
+
+    <sect2>
+      <title>Включение моста</title>
 
-       <para>Для включения поддержки функций сетевого моста в ядре, добавьте
-         строчку</para>
+      <para>Мост создается с использованием техники клонирования интерфейсов.  
Для
+         создания моста используйте &man.ifconfig.8;, если драйвер моста не был
+         включен в ядро, произойдет его автоматическая загрузка.</para>
+
+      <screen>&prompt.root; <userinput>ifconfig bridge create</userinput>
+bridge0
+&prompt.root; <userinput>ifconfig bridge0</userinput>
+bridge0: flags=8802&lt;BROADCAST,SIMPLEX,MULTICAST&gt; metric 0 mtu 1500
+        ether 96:3d:4b:f1:79:7a
+        id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
+        maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
+        root id 00:00:00:00:00:00 priority 0 ifcost 0 port 0</screen>
+
+      <para>Созданному интерфейсу моста автоматически назначен 
сгенерированный
+         случайным образом Ethernet адрес.  Параметры 
<literal>maxaddr</literal> и
+         <literal>timeout</literal> контролируют то, сколько MAC адресов будет 
хранится
+         в таблице перенаправления моста и то сколько секунд отводится на 
время 
жизни
+         записей с момента их занесения в таблицу до момента удаления.  
Остальные 
параметры
+         контролируют работу Протокола Связующего Дерева (Spanning Tree 
Protocol).</para>
+
+      <para>Добавьте к мосту сетевые интерфейсы которые будут в нем 
участвовать.
+         Для передачи пакетов через мост все интерфейсы-участники и сам мост 
должны
+         быть в состоянии работы (up):</para>
+
+      <screen>&prompt.root; <userinput>ifconfig bridge0 addm fxp0 addm fxp1 
up</userinput>
+&prompt.root; <userinput>ifconfig fxp0 up</userinput>
+&prompt.root; <userinput>ifconfig fxp1 up</userinput></screen>
+
+      <para>Теперь мост передает Ethernet фреймы между
+       <devicename>fxp0</devicename> и
+       <devicename>fxp1</devicename>.  Эквивалентная конфигурация 
+       в <filename>/etc/rc.conf</filename> для создания моста в процессе 
загрузки 
системы
+       выглядит так:</para>
+
+      <programlisting>cloned_interfaces="bridge0"
+ifconfig_bridge0="addm fxp0 addm fxp1 up"
+ifconfig_fxp0="up"
+ifconfig_fxp1="up"</programlisting>
+
+      <para>Если системе работающей в режиме моста необходимо назначить IP 
адрес,
+         то корректным будет настройка адреса непосредственно для интерфейса 
моста
+         нежели для какого-либо из интерфейсов-участников моста.  Адрес может 
быть
+         назначен как статически, так и динамически через DHCP:</para>
 
-       <programlisting>options BRIDGE</programlisting>
+      <screen>&prompt.root; <userinput>ifconfig bridge0 inet 
192.168.0.1/24</userinput></screen>
 
-       <para>в файл конфигурации вашего ядра, и перестройте ядро.</para>
-      </sect3>
+      <para>Интерфейсу моста так же можно назначать адреса IPv6.</para>
+    </sect2>
+    <sect2>
+      <title>Поддержка функций брандмауэра</title>
+      <indexterm><primary>брандмауэр</primary></indexterm>
+
+      <para>Когда фильтрация пакетов включена, трафик проходящий через мост
+         будет поступать в файервол трижды: при приеме через интерфейс входа, 
при
+         проходе через интерфейс моста, и при передаче через соответствующий
+         выходной интерфейс.  Любая из этих трех точек фильтрации может 
+         быть отключена.  Когда в процессе фильтрации важно учитывать 
направление
+         трафика, лучше всего задействовать файервол на интерфейсах-участниках 
моста,
+         чем непосредственно на самом интерфейсе моста.</para>
+
+      <para>Мост имеет несколько настроек для управления передачей не-IP и 
ARP
+         пакетов, а так же осуществления фильтрации на Канальном Уровне
+         с использованием IPFW. Для получения дополнительной информации
+         обращайтесь к руководству &man.if.bridge.4;.</para>
+    </sect2>
+
+    <sect2>
+      <title>Протокол Связующего Дерева</title>
+
+      <para>Драйвер моста включает в себя реализацию Протокола Быстрого 
Связующего Дерева
+         (Rapid Spanning Tree Protocol, RSTP он же 802.1w) имеющего обратную
+         совместимостью с устаревшим Протоколом Связующего Дерева (STP).
+         Протокол Связующего Дерева используется для нахождения и устранения
+         колец в топологии сети.  RSTP обеспечивает более быструю конвергенцию
+         по сравнению с STP.  Протокол обменивается информацией с соседними 
сетевыми
+         коммутаторами для обеспечения быстрого перехода в режим передачи 
трафика
+         без колец в путях передачи.</para>
+
+      <para>В данной таблице показана информация о поддерживаемых режимах 
работы:</para>
+
+      <informaltable frame="none" pgwide="1">
+       <tgroup cols="3">
+         <thead>
+           <row>
+             <entry>Версия ОС</entry>
+             <entry>Режимы работы STP</entry>
+             <entry>Режим по умолчанию</entry>
+           </row>
+         </thead>
+
+         <tbody>
+           <row>
+             <entry>&os; 5.4&mdash;&os; 6.2</entry>
+             <entry>STP</entry>
+             <entry>STP</entry>
+           </row>
+
+           <row>
+             <entry>&os; 6.3+</entry>
+             <entry>RSTP или STP</entry>
+             <entry>STP</entry>
+           </row>
+
+           <row>
+             <entry>&os; 7.0+</entry>
+             <entry>RSTP или STP</entry>
+             <entry>RSTP</entry>
+           </row>
+         </tbody>
+       </tgroup>
+      </informaltable>
+
+      <para>Протоколом Связующего Дерева может быть задействован на
+         интерфейсе-участнике моста используя команду <literal>stp</literal>.
+         У моста с 
+       <devicename>fxp0</devicename> и
+       <devicename>fxp1</devicename> как интерфейсами-участниками,
+       для чтобы задействовать работу STP используйте команды:</para>
+
+      <screen>&prompt.root; <userinput>ifconfig bridge0 stp fxp0 stp 
fxp1</userinput>
+bridge0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&gt; metric 0 
mtu 1500
+        ether d6:cf:d5:a0:94:6d
+        id 00:01:02:4b:d4:50 priority 32768 hellotime 2 fwddelay 15
+        maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
+        root id 00:01:02:4b:d4:50 priority 32768 ifcost 0 port 0
+        member: fxp0 
flags=1c7&lt;LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP&gt;
+                port 3 priority 128 path cost 200000 proto rstp
+                role designated state forwarding
+        member: fxp1 
flags=1c7&lt;LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP&gt;
+                port 4 priority 128 path cost 200000 proto rstp
+                role designated state forwarding</screen>
+
+      <para>Мост имеет spanning tree ID равное 
<literal>00:01:02:4b:d4:50</literal>
+         и приоритет равный <literal>32768</literal>.  Параметр <literal>root 
id</literal>
+         имеет такое же значение, это означает, что данный мост является для 
дерева 
+         корневым мостом.</para>
+
+      <para>Другой мост в сети так же использует Протоколом Связующего 
Дерева:</para>
+
+      <screen>bridge0: 
flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&gt; metric 0 mtu 1500
+        ether 96:3d:4b:f1:79:7a
+        id 00:13:d4:9a:06:7a priority 32768 hellotime 2 fwddelay 15
+        maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
+        root id 00:01:02:4b:d4:50 priority 32768 ifcost 400000 port 4
+        member: fxp0 
flags=1c7&lt;LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP&gt;
+                port 4 priority 128 path cost 200000 proto rstp
+                role root state forwarding
+        member: fxp1 
flags=1c7&lt;LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP&gt;
+                port 5 priority 128 path cost 200000 proto rstp
+                role designated state forwarding</screen>
+
+      <para>Строка <literal>root id 00:01:02:4b:d4:50 priority 32768
+         ifcost 400000 port 4</literal> показывает, что корневым мостом 
+         является <literal>00:01:02:4b:d4:50</literal>, стоимость пути до 
которого
+         равна <literal>400000</literal> от данного моста, путь к корневому 
мосту
+         проходит через <literal>port 4</literal> который является 
+         <devicename>fxp0</devicename>.</para>
+    </sect2>
+    
+    <sect2>
+      <title>Особое использование мостов</title>
 
       <sect3>
-       <title>Поддержка функций брандмауэра</title>
+       <title>Объединение потоков трафика</title>
 
-       <indexterm><primary>брандмауэр</primary></indexterm>
+       <para>Мост поддерживает работу в режиме мониторинга, в котором пакеты
+         отвергаются после обработки в &man.bpf.4; и не обрабатываются или
+         не отправляются дальше.  Этот режим работы может использоваться для
+         объединения входных потоков с двух или более интерфейсов в
+         один общий &man.bpf.4; поток.  Это полезно для проведения 
реконструкции
+         трафика сетевых устройств которые передают RX/TX сигналы через
+         несколько сетевых интерфейсов.</para>
 
-       <para>Если вы планируете использовать мост в качестве
-         брандмауэра, вам нужно также добавить опцию
-         <literal>IPFIREWALL</literal>.
-         Прочтите <xref linkend="firewalls">, содержащую общую
-         информацию о настройке моста в качестве брандмауэра.</para>
-
-       <para>Если вам необходимо обеспечить прохождение не-IP пакетов (таких,
-         как ARP) через мост, то имеется опция брандмауэра,
-         которую можно задать.  Это опция
-         <literal>IPFIREWALL_DEFAULT_TO_ACCEPT</literal>.  Заметьте, что при
-         этом правило, используемое брандмауэром по умолчанию, меняется
-         на разрешительное для всех пакетов.  Перед тем, как задавать эту
-         опцию, убедитесь, что вы понимаете работу вашего набора
-         правил.</para>
+       <para>Для чтения трафика входящего через четыре сетевых интерфейса
+         в качестве одного потока:</para>
+
+       <screen>&prompt.root; <userinput>ifconfig bridge0 addm fxp0 addm fxp1 
addm 
fxp2 addm fxp3 monitor up</userinput>
+&prompt.root; <userinput>tcpdump -i bridge0</userinput></screen>
       </sect3>
 
       <sect3>
-       <title>Поддержка функций ограничения пропускной способности</title>
+       <title>Порт Мониторинга</title>
+
+       <para>Копия каждого Ethernet фрейма полученного мостом будет
+         ретранслирована через указанный Порт Мониторинга.  Мост может
+         иметь неограниченное количество Портов мониторинга.  Если сетевой 
+         интерфейс настроен на работу в качестве Порта Мониторинга, то
+         он не может одновременно использоваться как обычный порт моста.
+         Данный режим работы наиболее полезен для пассивного слежения за
+         трафиком проходящим через мост с помощью машины подключенной
+         к одному из Портов Мониторинга.</para>
 
-       <para>Если вы хотите использовать мост в качестве машины,
-         ограничивающей пропускную способность, то добавьте в файл
-         конфигурации ядра опцию <literal>DUMMYNET</literal>.  Дополнительную
-         информацию можно почерпнуть из страницы Справочника по
-         &man.dummynet.4;.</para>
+       <para>Для передачи через интерфейс <devicename>fxp4</devicename> копий
+         всех проходящих пакетов:</para>
+
+       <screen>&prompt.root; <userinput>ifconfig bridge0 span 
fxp4</userinput></screen>
       </sect3>
-    </sect2>
 
-    <sect2>
-      <title>Включение функций моста</title>
+      <sect3>
+       <title>Приватные интерфейсы</title>
 
-      <para>Добавьте строку</para>
+       <para>Сетевой интерфейс работающий в режиме приватного порта
+         не передает никакого трафика на другие приватные интерфейсы.  Трафик
+         безоговорочно блокируется, таким образом никакие Ethernet пакеты,
+         включая ARP, не будут передаваться.  При желании проводить выборочную
+         фильтрацию трафика между интерфейсами моста, вместо использования 
приватных
+         интерфейсов необходимо использовать файервол.</para>
+      </sect3>
 
-      <programlisting>net.link.ether.bridge.enable=1</programlisting>
+      <sect3>
+       <title>Липкие интерфейсы</title>
 
-      <para>в файл <filename>/etc/sysctl.conf</filename> для включения 
функций
-       моста во время работы системы, и строку:</para>
+       <para>Если интерфейс-участник моста был помечен как "липкий", то в 
+         таком случае все адреса динамически изученные интерфейсом в процессе 
его
+         работы, будут помещены в кеш перенаправления в качестве статических.
+         Статические записи помещенные в кеш с липких интерфейсов никогда не
+         устаревают и не изменяются в кеше даже в том случае, если адрес был 
виден
+         уже на другом интерфейсе моста.  Это дает преимущество использования
+         статических записей в кеше перенаправления без необходимости 
производить
+         предварительное внесение записей в таблицу перенаправления.  Клиенты
+         чей адрес попал в кеш с липкого интерфейса больше не смогут 
перемещаться
+         между сегментами сети.</para>
+
+       <para>Другим примером использования липких адресов может служить
+         объединение моста с Виртуальными Частными Сетями (VLAN) для создания 
рутера
+         где сети клиентов изолированы друг от друга и не происходит 
бессмысленная 
трата
+         адресного пространства IP.  Представьте, что 
<hostidrole="Hostname">CustomerA</hostid>
+         находится в <literal>vlan100</literal>, а 
<hostidrole="hostname">CustomerB</hostid>
+         находится в <literal>vlan101</literal>.  Мост имеет адрес <hostid 
role="ipaddr">192.168.0.1</hostid>
+         и так же работает в качестве шлюза в интернет.</para>
+
+       <screen>&prompt.root; <userinput>ifconfig bridge0 addm vlan100 sticky 
vlan100 addm vlan101 sticky vlan101</userinput>
+&prompt.root; <userinput>ifconfig bridge0 inet 
192.168.0.1/24</userinput></screen>
+
+       <para>Оба клиента видят <hostid
+         role="ipaddr">192.168.0.1</hostid> как свой маршрутизатор по 
умолчанию, и 
так как
+         кеш записей перенаправления липкий, клиенты не смогут подделать MAC 
адреса 
друг
+         друга и перехватывать таким образом чужой трафик.</para>
+
+       <para>Обмен данными между VLAN может быть заблокирован путем 
использования 
+         частных интерфейсов (или же через файервол):</para>
+
+       <screen>&prompt.root; <userinput>ifconfig bridge0 private vlan100 
private 
vlan101</userinput></screen>
+
+       <para>Таким образом клиенты полностью изолированы друг от друга, в то 
же 
время полный
+         <hostid role="netmask">/24</hostid> адресный диапазон может быть 
распределен без
+         необходимости дробления на подсети.</para>
+      </sect3>
 
-      
<programlisting>net.link.ether.bridge.config=<replaceable>if1</replaceable>,<replaceable>if2</replaceable></programlisting>
+      <sect3>
+       <title>Лимит адресов</title>
 
-      <para>для включения функций моста для указанных интерфейсов (замените
-       <replaceable>if1</replaceable> и <replaceable>if2</replaceable> на
-       имена двух ваших сетевых интерфейсов).  Если вы хотите, чтобы
-       проходящие через мост пакеты фильтровались посредством &man.ipfw.8;,
-       вы должны также добавить строчку:</para>
+       <para>Количество записей об уникальных MAC адресах находящихся за 
каким-либо 
из
+         интерфейсов моста, может быть ограничено.  После достижения лимита 
записей,
+         пакеты отправляемые с неизвестных адресов будут удаляться.  Это будет 
происходить
+         до тех пор пока из кеша не будет удалена какая-либо запись по 
истечению 
срока или
+         же вручную.</para>
+
+       <para>В данном примере максимальное количество Ethernet устройств для 
клиента
+         <hostid role="Hostname">CustomerA</hostid> на интерфейсе 
<literal>vlan100</literal>
+         установлено в 10.</para>
 
-      <programlisting>net.link.ether.bridge.ipfw=1</programlisting>
+       <screen>&prompt.root; <userinput>ifconfig bridge0 ifmaxaddr vlan100 
10</userinput></screen>
+      </sect3>
 
-      <para>Для версий &os;, предшествующих &os;&nbsp;5.2-RELEASE, нужно
-       использовать следующие строки:</para>
+      <sect3>
+       <title>Мониторинг через SNMP</title>
 
-      <programlisting>net.link.ether.bridge=1
-net.link.ether.bridge_cfg=<replaceable>if1</replaceable>,<replaceable>if2</replaceable>
-net.link.ether.bridge_ipfw=1</programlisting>
-    </sect2>
+       <para>Мониторинг интерфейса моста и параметров STP можно производить 
через
+         службу (daemon) SNMP включенную в базовую систему &os;.  
Экспортируемые
+         мостом MIB соответствуют стандартам IETF, таким образом для сбора 
данных
+         может использоваться любой SNMP клиент или пакет мониторинга.</para>
+
+       <para>На машине где работает мост необходимо раскомментировать строку
+         <literal>begemotSnmpdModulePath."bridge" =
+         "/usr/lib/snmp_bridge.so"</literal> в файле
+         <filename>/etc/snmp.config</filename> и запустить службу
+         <application>bsnmpd</application>.  Может понадобиться изменить 
настройки,
+         такие как имена сообществ (community name) и права доступа.
+         За дополнительной информацией обратитесь к &man.bsnmpd.1; и
+         &man.snmp.bridge.3;.</para>
+
+       <para>В данном примере для опроса моста используется программное 
обеспечение
+         <application>Net-SNMP</application> (<filename
+         role="package">net-mgmt/net-snmp</filename>), так же можно 
использовать 
порт <filename
+         role="package">net-mgmt/bsnmptools</filename>.  На хосте где работает 
SNMP 
клиент добавьте
+         в файл <filename>$HOME/.snmp/snmp.conf</filename> следующие строки 
для 
импорта MIB
+         определений моста в <application>Net-SNMP</application>:</para>
+
+       <programlisting>mibdirs +/usr/share/snmp/mibs
+mibs +BRIDGE-MIB:RSTP-MIB:BEGEMOT-MIB:BEGEMOT-BRIDGE-MIB</programlisting>
+
+       <para>Для мониторинга единственного моста через IETF BRIDGE-MIB
+         (RFC4188) выполните</para>
+
+       <screen>&prompt.user; <userinput>snmpwalk -v 2c -c public 
bridge1.example.com mib-2.dot1dBridge</userinput>
+BRIDGE-MIB::dot1dBaseBridgeAddress.0 = STRING: 66:fb:9b:6e:5c:44
+BRIDGE-MIB::dot1dBaseNumPorts.0 = INTEGER: 1 ports
+BRIDGE-MIB::dot1dStpTimeSinceTopologyChange.0 = Timeticks: (189959) 
0:31:39.59 centi-seconds
+BRIDGE-MIB::dot1dStpTopChanges.0 = Counter32: 2
+BRIDGE-MIB::dot1dStpDesignatedRoot.0 = Hex-STRING: 80 00 00 01 02 4B D4 50
+...
+BRIDGE-MIB::dot1dStpPortState.3 = INTEGER: forwarding(5)
+BRIDGE-MIB::dot1dStpPortEnable.3 = INTEGER: enabled(1)
+BRIDGE-MIB::dot1dStpPortPathCost.3 = INTEGER: 200000
+BRIDGE-MIB::dot1dStpPortDesignatedRoot.3 = Hex-STRING: 80 00 00 01 02 4B D4 
50
+BRIDGE-MIB::dot1dStpPortDesignatedCost.3 = INTEGER: 0
+BRIDGE-MIB::dot1dStpPortDesignatedBridge.3 = Hex-STRING: 80 00 00 01 02 4B D4 
50
+BRIDGE-MIB::dot1dStpPortDesignatedPort.3 = Hex-STRING: 03 80
+BRIDGE-MIB::dot1dStpPortForwardTransitions.3 = Counter32: 1
+RSTP-MIB::dot1dStpVersion.0 = INTEGER: rstp(2)</screen>
+
+       <para>Параметр <literal>dot1dStpTopChanges.0</literal> имеет значение 
равное 
двум,
+         это означает, что STP топология моста менялась дважды вследствие 
генерации 
нового
+         связующего дерева, что в свою очередь могло произойти из-за сбоя 
какого-либо
+         соединения в сети или изменения связей.  Значение параметра 
<literal>dot1dStpTimeSinceTopologyChange.0</literal>
+         показывает, когда это случилось.</para>
+
+       <para>Для мониторинга множества интерфейсов моста Вы можете 
использовать 
частную BEGEMOT-BRIDGE-MIB:</para>
+
+       <screen>&prompt.user; <userinput>snmpwalk -v 2c -c public 
bridge1.example.com</userinput>
+enterprises.fokus.begemot.begemotBridge
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseName."bridge0" = STRING: bridge0
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseName."bridge2" = STRING: bridge2
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseAddress."bridge0" = STRING: 
e:ce:3b:5a:9e:13
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseAddress."bridge2" = STRING: 
12:5e:4d:74:d:fc
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseNumPorts."bridge0" = INTEGER: 1
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseNumPorts."bridge2" = INTEGER: 1
+...
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTimeSinceTopologyChange."bridge0" = 
Timeticks: (116927) 0:19:29.27 centi-seconds
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTimeSinceTopologyChange."bridge2" = 
Timeticks: (82773) 0:13:47.73 centi-seconds
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTopChanges."bridge0" = Counter32: 1
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTopChanges."bridge2" = Counter32: 1
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpDesignatedRoot."bridge0" = Hex-STRING: 80 
00 00 40 95 30 5E 31
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpDesignatedRoot."bridge2" = Hex-STRING: 80 
00 00 50 8B B8 C6 A9</screen>
 
-    <sect2>
-      <title>Дополнительные замечания</title>
+       <para>Для того чтобы поменять через поддерево 
<literal>mib-2.dot1dBridge</literal> интерфейс 
+         моста за которым будет происходить мониторинг, выполните:</para>
 
-      <para>Если вы хотите осуществлять удалённый доступ на мост через
-       &man.ssh.1; из сети, то корректно назначить одному из сетевых
-       адаптеров IP-адрес.  Общепринято, что назначение адреса обоим сетевым
-       адаптерам является не самой хорошей идеей.</para>
-
-      <para>Если в вашей сети присутствует несколько мостов, не должно быть
-       более одного маршрута между любыми двумя рабочими станциями.  С
-       технической точки зрения это означает отсутствие поддержки протокола
-       spanning tree.</para>
-
-      <para>Сетевой мост может увеличить задержки в замерах командой
-       &man.ping.8;, особенно для трафика между двумя разными
-       сегментами.</para>
+       <screen>&prompt.user; <userinput>snmpset -v 2c -c private 
bridge1.example.com</userinput>
+BEGEMOT-BRIDGE-MIB::begemotBridgeDefaultBridgeIf.0 s bridge2</screen>
+      </sect3>
     </sect2>
   </sect1>
 

Ответить