Linux за българи: Форуми

Linux секция за напреднали => Хардуерни и софтуерни проблеми => Темата е започната от: Astor в Dec 28, 2011, 22:52



Титла: Проблем с OpenVPN и eth bridge
Публикувано от: Astor в Dec 28, 2011, 22:52
Здравейте, опитвам се да направя следното:

Net:10.0.0.0/24-------(eth0:10.0.0.23)Linux OpenVPN(eth1)------10.10.0.0/24------Win OpenVPN Client

Т.е. да направя bridge м/у 10.0.0.0/24 и OpenVPN тунела (клиент от вън да е в LAN-а на локалната мрежа).
Ръководя се от тук: http://openvpn.net/index.php/open-source/documentation/miscellaneous/76-ethernet-bridging.html ($2).

Правя bridge м/у tap интерфейса и eth0 (на openvpn сървъра) - br0, след което вдигам openvpn тунела (всичко сработва), WinClient получава на неговия tap интерфейс адрес 10.0.0.50.
Но няма връзка м/у WinOpenVPN клиента и останалите от мрежата 10.0.0.0/24. Има само ping до OpenVPN сървъра (10.0.0.23).
br0 научава макадреси, но ping не минава :(
Цитат
bridge name   bridge id      STP enabled   interfaces
br0      8000.080027682d37   no      eth0
                     tap0

port no   mac addr      is local?   ageing timer
  1   00:1e:65:cf:27:5c   no        25.57  <<<< 10.0.0.2
  2   00:ff:fe:de:ed:cf   no       108.21 <<<< 10.0.0.50 (WinOpenVPN клиента)
  1   08:00:27:68:2d:37   yes         0.00 <<<< br0 mac
  1   54:e6:fc:d5:10:74   no         0.50 <<<< 10.0.0.1
  2   9a:19:e9:71:94:79   yes         0.00 <<<< tap0 mac
Arping минава!
Цитат
(host:10.0.0.2)# arping 10.0.0.50
ARPING 10.0.0.50
42 bytes from 00:ff:fe:de:ed:cf (10.0.0.50): index=0 time=1.988 msec
42 bytes from 00:ff:fe:de:ed:cf (10.0.0.50): index=1 time=1.329 msec
--- 10.0.0.50 statistics ---
2 packets transmitted, 2 packets received,   0% unanswered (0 extra)

Ето и interface-те на сървъра:
Цитат
br0       Link encap:Ethernet  HWaddr 08:00:27:68:2d:37 
          inet addr:10.0.0.23  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe68:2d37/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:788 errors:0 dropped:0 overruns:0 frame:0
          TX packets:687 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:51711 (50.4 KiB)  TX bytes:48964 (47.8 KiB)

eth0      Link encap:Ethernet  HWaddr 08:00:27:68:2d:37 
          inet6 addr: fe80::a00:27ff:fe68:2d37/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:922 errors:0 dropped:0 overruns:0 frame:0
          TX packets:784 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:66795 (65.2 KiB)  TX bytes:62940 (61.4 KiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:c9:95:c4 
          inet addr:10.10.0.1  Bcast:10.10.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fec9:95c4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:410 errors:0 dropped:0 overruns:0 frame:0
          TX packets:338 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:48203 (47.0 KiB)  TX bytes:36807 (35.9 KiB)

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:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:480 (480.0 B)  TX bytes:480 (480.0 B)

tap0      Link encap:Ethernet  HWaddr 9a:19:e9:71:94:79 
          inet6 addr: fe80::9819:e9ff:fe71:9479/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:61 errors:0 dropped:0 overruns:0 frame:0
          TX packets:121 errors:0 dropped:28 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:8122 (7.9 KiB)  TX bytes:8770 (8.5 KiB)

Гледах със снифер, arp заявките минават усшено, но после icmp пакетите не...само icmp request и няма отговор от отсреща.
ping м/у client-а (10.0.0.50) и сървъра (10.0.0.23) минава.
Вече не знам какво да тествам...и моля за помощ!
Благодаря предварително!


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: plamen_f в Dec 28, 2011, 23:24
Малко помощ:

1. Не ти трябва бридж;
2. Трябва ти добавяне на route до мрежата зад eth0 през сървърското IP на OVPN;
3. Най-простия начин :
Код:
route 10.0.0.0 255.255.255.0
добавено в client.conf;
4. Препотъчвам - използвай route още в конфига на сървъра;

Ако не се справиш питай - ще дам пример!


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: Astor в Dec 29, 2011, 11:59
Здравей plamen_f,
Това със статичния маршрут става, но аз искам vpn клиентите да са от същия LAN. Там хората са го написали, че трябва да работи, без да се налага push route и т.н...


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: laskov в Dec 29, 2011, 12:21
Дали не е свързано с липсата на IPv4 адреси на два от интерфейсите на сървъра ти?


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: Astor в Dec 29, 2011, 15:22
laskov, няма ип адреси на интерфейсите (tap0 и eth0) защото са част от br0, но за това има вдигнат ip на самия br0. Ако трябва да вдигна и на тях, от коя мрежа трябва да са?

Сега след като направих прост тест, се оказа, че нещо не мога да подкарам обикновен bridge.
Правя следното на Linux Sever-а (при спрян openvpn):

Net:10.0.0.0/24 ------ (eth0 Bridge eth1)------- client: 10.0.0.50

Цитат
ifconfig eth0 0.0.0.0 <<<< към 10.0.0./24
ifconfig eth1 0.0.0.0 <<<< към 10.0.0.50
ifconfig eth0 up
ifconfig eth1 up
brctl addbr br11
brctl addif br11 eth0
brctl addif br11 eth1
ifconfig br11 up

По този начин Linux-а би трябвало да става "прозрачен".
Само че връзка м/у хостовете от 10.0.0.0/24 до 10.0.0.50 няма, обратно също няма...това вече ме озадачи съвсем.


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: ray в Dec 29, 2011, 15:41
Здравейте,

А пуснат ли е FORWARD-s между интерфейсите, също така има ли защ.стена?
Румен


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: laskov в Dec 29, 2011, 15:55
Никога не съм правил бридж и не мога да помогна. OpenVPN ползвам с рутиране между различни мрежи.


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: plamen_f в Dec 29, 2011, 17:44
Така, сега сядам пред компютъра.

Като за начало:

http://openvpn.net/index.php/open-source/faq/77-server/287-is-ipv6-support-plannedin-the-works.html ($2)

Та въпрос - с коя версия си на OVPN.


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: Astor в Dec 29, 2011, 18:53
Здравейте,
на Server-a съм с OpenVPN 2.1.3 а при win client-a с 2.2.1
Може би трябва да обновя тази при сървъра.

А относно обикновения bridge, пробвах и със
Цитат
ifconfig eth0 promisc up
ifconfig eth1 promisc up
Но отново няма връзка м/у хостовете от двете страни на bridge-а.
А Румен питаше дали съм задал следното???:
Цитат
cat /proc/sys/net/ipv4/ip_forward
1
FORWARD-s м/у интерфейсите? Иначе пробвах и с iptables FORWARD ACCEPT правила, но то по подразбиране политиката е ACCEPT, няма други правила зададени.


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: plamen_f в Dec 29, 2011, 19:48
дай си конфигурационните файлове


Титла: Re: Проблем с OpenVPN и eth bridge
Публикувано от: Astor в Dec 31, 2011, 19:06
здравейте,
пробвах същата конфигурация на релано работещи машини (преди беше схема през virtualbox) и нещата тръгнаха без проблем. Най-вероятно е имало проблем с bridg-a на интерфейсите при virtualbox. Реално единия интерфейс от едната от машините беше bridge-нат с реалната физическа мрежа, отделно и аз симулирам още един bridge (м/у вътрешни мрежи).