The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Объединение нескольких участков сети в общую посредством bri..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Объединение нескольких участков сети в общую посредством bri..."  
Сообщение от gring email(ok) on 17-Сен-08, 14:22 
Доброе время суток.

Решил наконец объеденить разрозненые участи локалки в одну общую сеть через публичный internet.

Сделал на базе CentoS 5.2 + openvpn + bridge

На данный момент есть 3 разроненных сети ( центральный офис + 2 удаленных офиса)
В процессе объединения напоролся на грабли

1) В центральном офисе пришлось в комп добавить сетевую карту, т.к. на одну и ту же карту вроде как нельзя вешать более 1 моста, как это можно обойти? Мне предстоит еще 3 сегмента добавить - столько сетевых карт в комп не воткнуть. Поможет ли тут vlan ?

Объединение 2-х локалок прошло на ура, но как только стал добавлять еще одну - столкнулся с непонятными  проблемами.
Сам бридж поднялся, удаленные сегменты прекрасно видят центральный офис, НО при этом перестал работать internet в сегменте 3

Схема сети


Центральный офис

br0 192.168.0.250/255.255.255.0 (бридж на 1-й удаленный офис, + этот интерфейс является шлюзом для серых ip для доступа в инет)
br1 0.0.0.0 ( бридж на второй уждаленный офис)
eth0 0.0.0.0 ( реальный интерфес смотрящий в локалку)
eth1 real_ip ( интерфейс смотрящий в инет)
eth2 ( второй реальный интерфес смотрящий в локалку, для поднятия втрого бриджа)
tap0 ( Openvpn до первого удаленного офиса)
tap1 ( Openvpn до второго удаленного офиса)


Удаленный офис N1
br0       Link encap:Ethernet  HWaddr 00:30:4F:5D:14:14
          inet addr:192.168.0.170  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::230:4fff:fe5d:1414/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:398307 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1406987 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:55475727 (52.9 MiB)  TX bytes:955581315 (911.3 MiB)

eth0      Link encap:Ethernet  HWaddr 00:1E:58:9C:49:CE
          inet addr:xx.220.56.yyy  Bcast:xx.220.56.yyy  Mask:255.255.255.252
          inet6 addr: fe80::21e:58ff:fe9c:49ce/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3390467 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2975075 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2003895191 (1.8 GiB)  TX bytes:868662895 (828.4 MiB)
          Interrupt:11 Base address:0xe000

eth1      Link encap:Ethernet  HWaddr 00:30:4F:5D:14:14
          inet6 addr: fe80::230:4fff:fe5d:1414/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:2733018 errors:1 dropped:0 overruns:0 frame:0
          TX packets:3289234 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:762758862 (727.4 MiB)  TX bytes:1944224911 (1.8 GiB)
          Interrupt:10 Base address:0xc000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:45 errors:0 dropped:0 overruns:0 frame:0
          TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2560 (2.5 KiB)  TX bytes:2560 (2.5 KiB)

tap0      Link encap:Ethernet  HWaddr 2A:6B:61:8F:93:FB
          inet6 addr: fe80::286b:61ff:fe8f:93fb/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:1130725 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2176063 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:207005539 (197.4 MiB)  TX bytes:574647973 (548.0 MiB)

удаленный офис N2

br0       Link encap:Ethernet  HWaddr 00:1E:8C:9C:C2:12
          inet addr:192.168.0.190  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::21e:8cff:fe9c:c212/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:66092 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8451 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:8391122 (8.0 MiB)  TX bytes:578326 (564.7 KiB)

eth0      Link encap:Ethernet  HWaddr 00:E0:4C:A5:0D:6D
          inet addr:xxx.220.57.asd  Bcast:xxx.220.57.asd  Mask:255.255.255.252
          inet6 addr: fe80::2e0:4cff:fea5:d6d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1052463 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1015635 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:367278824 (350.2 MiB)  TX bytes:175912993 (167.7 MiB)
          Interrupt:11 Base address:0xec00

eth1      Link encap:Ethernet  HWaddr 00:1E:8C:9C:C2:12
          inet6 addr: fe80::21e:8cff:fe9c:c212/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:927372 errors:0 dropped:0 overruns:0 frame:0
          TX packets:966856 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:131371574 (125.2 MiB)  TX bytes:325619037 (310.5 MiB)
          Interrupt:201 Base address:0xc000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:800 (800.0 b)  TX bytes:800 (800.0 b)

tap0      Link encap:Ethernet  HWaddr 4A:4D:D0:30:A3:04
          inet6 addr: fe80::484d:d0ff:fe30:a304/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:964226 errors:0 dropped:0 overruns:0 frame:0
          TX packets:927594 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:320253677 (305.4 MiB)  TX bytes:130447926 (124.4 MiB)


Странно то что юзеры из второго офиса пингуют шлюз в центральном офисе, но при этом инет им не доступен. В том числе и через прокси и без прокси.
Такое ощущение что я что то упустил, но не пойму где. Ведь в первом уделанном офисе все работает нормально!
Конфигурации практически одинаковые. а ведудт себя по разному ...

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Объединение нескольких участков сети"  
Сообщение от Andrey Mitrofanov on 17-Сен-08, 15:43 
>1) В центральном офисе пришлось в комп добавить сетевую карту, т.к. на
>одну и ту же карту вроде как нельзя вешать более 1
>моста, как это можно обойти?

Это как?? Не путаете с добавлением в один мост более 1 (более 2?) интерфейсов?

>Центральный офис
>
>br0 192.168.0.250/255.255.255.0 (бридж на 1-й удаленный офис, + этот интерфейс является шлюзом
>для серых ip для доступа в инет)
>br1 0.0.0.0 ( бридж на второй уждаленный офис)
>eth0 0.0.0.0 ( реальный интерфес смотрящий в локалку)
>eth2 ( второй реальный интерфес смотрящий в локалку, для поднятия втрого бриджа)
>tap0 ( Openvpn до первого удаленного офиса)
>tap1 ( Openvpn до второго удаленного офиса)

То есть, когда в br0 были eth0+tap0, tap1 в него же, br0, не добавлялся?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Объединение нескольких участков сети"  
Сообщение от gring email(ok) on 18-Сен-08, 00:09 
>>1) В центральном офисе пришлось в комп добавить сетевую карту, т.к. на
>>одну и ту же карту вроде как нельзя вешать более 1
>>моста, как это можно обойти?
>
>Это как?? Не путаете с добавлением в один мост более 1 (более
>2?) интерфейсов?
>

Вот тут читал
http://xgu.ru/wiki/Linux_Bridge
" Нельзя добавить устройство в несколько бриджей одновременно"
Я понял что на одно и то же eth нельзя добавлять в разные бриджи.


>[оверквотинг удален]
>>br0 192.168.0.250/255.255.255.0 (бридж на 1-й удаленный офис, + этот интерфейс является шлюзом
>>для серых ip для доступа в инет)
>>br1 0.0.0.0 ( бридж на второй уждаленный офис)
>>eth0 0.0.0.0 ( реальный интерфес смотрящий в локалку)
>>eth2 ( второй реальный интерфес смотрящий в локалку, для поднятия втрого бриджа)
>>tap0 ( Openvpn до первого удаленного офиса)
>>tap1 ( Openvpn до второго удаленного офиса)
>
>То есть, когда в br0 были eth0+tap0, tap1 в него же, br0,
>не добавлялся?

НА этапе когда были br0 = eth0+tap0 добавляю tap1 и хочу сделать tap1 + eth0 ---- система говорит что eth0 уже участвует в bridge и так делать низзя...
если попробовать tap1 + br0 ---- система говорит что так тоже низзя. В итоге пришлось вставить сетевую карту :-(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Прозри и иди!"  
Сообщение от Andrey Mitrofanov on 18-Сен-08, 08:57 
>НА этапе когда были br0 = eth0+tap0 добавляю tap1 и хочу сделать
>tap1 + eth0 ---- система говорит что eth0 уже участвует в
>bridge и так делать низзя...

{
_Интерфейсы_ добавляются в _мост_, не наоборот!

Если у тебя br0 = eth0+tap0, добавляй _в_ него ещё tap1.
eth0, как тебе и написали, в брижже уже есть.

} ПОВТОРЯТЬ ПОКА ( !прозрение_наступило() );

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Прозри и иди!"  
Сообщение от gring email(??) on 18-Сен-08, 11:09 
>[оверквотинг удален]
>>tap1 + eth0 ---- система говорит что eth0 уже участвует в
>>bridge и так делать низзя...
>
>{
>_Интерфейсы_ добавляются в _мост_, не наоборот!
>
>Если у тебя br0 = eth0+tap0, добавляй _в_ него ещё tap1.
>eth0, как тебе и написали, в брижже уже есть.
>
>} ПОВТОРЯТЬ ПОКА ( !прозрение_наступило() );

Щас попробую прозреть

br0 поднимаю так

LOCAL_IF="eth0"
        REMOTE_IF="tap0"
        BRIDGE_IF="br0"
        BRIDGE_IP="192.168.0.250"
        BRIDGE_MASK="255.255.255.0"
        BRIDGE_BROADCAST="192.168.0.255"
        CONFIG="/etc/openvpn/openvpn.config"

        # Запускаем OpenVPN в режиме демона
      openvpn --config $CONFIG --daemon

        # Выключаем мост (если он включен)
        ifconfig $BRIDGE_IF down
        # Удаляем мост (убираем мусор за предыдущим запуском скрипта)
        brctl delbr $BRIDGE_IF
        # Добавляем новый мост
        brctl addbr $BRIDGE_IF
        # Включаем в мост интерфейсы
        brctl addif $BRIDGE_IF $LOCAL_IF
        brctl addif $BRIDGE_IF $REMOTE_IF

        # Убираем адреса с интерфейсов, входящих в мост и поднимаем их
        ifconfig $LOCAL_IF 0.0.0.0 promisc up
        ifconfig $REMOTE_IF 0.0.0.0 promisc up

        # Назначаем мосту адрес, если это необходимо - например вместо адреса на интерфейсе локалки.
        ifconfig $BRIDGE_IF $BRIDGE_IP netmask $BRIDGE_MASK broadcast $BRIDGE_BROADCAST
        # Включаем мост
        ifconfig $BRIDGE_IF up

        ifconfig $LOCAL_IF 0.0.0.0 promisc up


Как в него теперь добавить еще и tap1 ?
Кто теперь будет выступать за LOCAL_IF ?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Прозри и иди!"  
Сообщение от gring email(??) on 18-Сен-08, 11:21 
>[оверквотинг удален]
>$BRIDGE_MASK broadcast $BRIDGE_BROADCAST
>        # Включаем мост
>        ifconfig $BRIDGE_IF up
>
>        ifconfig $LOCAL_IF 0.0.0.0 promisc
>up
>
>
>Как в него теперь добавить еще и tap1 ?
>Кто теперь будет выступать за LOCAL_IF ?

Вроде понял
К bro нужно сделать так

brctl addif br0  eth0
brctl addif br0 tap0
brctl addif br0 tap1


при этом
brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.001485de7a93       no              tap1
                                                        tap0
                                                        eth0


Я правильно Вас понял?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Прозри и иди!"  
Сообщение от gring email(??) on 18-Сен-08, 11:46 

>[оверквотинг удален]
>          
>          
>tap0
>            
>          
>          
>          
>          
>eth0
>

Заработало !!!
Все оказалось проще чем думал.
Спасибо что наставили на путь истинный :-)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "c"  
Сообщение от Andrey Mitrofanov on 18-Сен-08, 12:16 
>Спасибо что наставили на путь истинный :-)

Наш брат прозрел! Ну, и аллилуюшки. d|-)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "чуда не случилось..."  
Сообщение от Andrey Mitrofanov on 18-Сен-08, 12:13 
>Как в него теперь добавить еще и tap1 ?

brctl addif br0 tap1

>Кто теперь будет выступать за LOCAL_IF ?

?

Не надо удалять/опускать/поднимать бридж. При каждом установлении соединения, видимо??

При загрузке системы - поднять мост.
При поднятии eth0, добавить его eth0 в мост.
Для $tap_if == tap0, tap1, ... {
При поднятии $tap_if, делать(*) brctl addif br0 $tap_if
При опускании $tap_if, делать(*) brctl delif br0 $tap_if
}

(*) Да, _одну_ команду, а не заумный скрипт.

Просветление не наступило? Нет - перечитывать выше про то, кто на ком стоит....

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру