URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 72021
[ Назад ]

Исходное сообщение
"Debian. Передача пакетов между VLAN-ами"

Отправлено Bujhm , 07-Фев-07 19:24 
Доброго времни суток.... Помогите с проблемкой:

На порту eth0 Debian-а настроил 2 VLAN-а для подсетей 10.10.10.10/28 и 20.20.20.20/28.
Порт eth0 смотрит в тракнковый порт свича (каталист) к которой подключены 2 роутера (Роутер А - 10.10.10.1/28 и Роутер В- 20.20.20.1/28)  каждый на своей подсети 10-й и 20-й соответствено).

Настройка в etc/network/interfaces :

auto lo eth0.10 eth0.20
iface lo inet loopback

iface eth0.20 inet static
        address 20.20.20.2
        netmask 255.255.255.240
        broadcast 20.20.20.15
        gateway 20.20.20.1
        up route add default 20.20.20.1

iface eth0.10 inet static
        address 10.10.10.2
        netmask 255.255.255.240
        broadcast 10.10.10.15
        gateway 10.10.10.1
        

Проверка работоспособности сети:
1. Пинги c Роутера А в 10-ю подсеть работают.(ping 10.10.10.2)
2. Пинги c Роутера В в 20-ю подсеть работают.(ping 20.20.20.2)
3. Пинги c Debian-a в сторону обоих роутеров работают.
4!!!! Пинги c Роутера А в 20-ю подсеть и с Роутера В в 10-ю не работают...
:(

Проверка tcpdump-ом:
tcpdump -i eth0.10 icmp
tcpdump -i eth0.20 icmp
показала что в четвертом случае пакеты поступают на соответвующий виртуальный интерфейс но не уходят ни по одному из них... почему не могу понять...

Проверил таблицу маршрутизации (route), никаких аномалий не вижу.:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.10.10.0      *               255.255.255.240 U     0      0        0 eth0.10
20.20.20.0      *               255.255.255.240 U     0      0        0 eth0.20
default         20.20.20.1      0.0.0.0         UG    0      0        0 eth0.20

Что может быть?? Кто нибудь может проврить это на Free, ASP и прочих ?


Содержание

Сообщения в этом обсуждении
"Debian. Передача пакетов между VLAN-ами"
Отправлено bass , 08-Фев-07 06:37 
>Доброго времни суток.... Помогите с проблемкой:
>
>На порту eth0 Debian-а настроил 2 VLAN-а для подсетей 10.10.10.10/28 и 20.20.20.20/28.
>
>Порт eth0 смотрит в тракнковый порт свича (каталист) к которой подключены 2
>роутера (Роутер А - 10.10.10.1/28 и Роутер В- 20.20.20.1/28)  каждый
>на своей подсети 10-й и 20-й соответствено).
>
>Настройка в etc/network/interfaces :
>
>auto lo eth0.10 eth0.20
>iface lo inet loopback
>
>iface eth0.20 inet static
>        address 20.20.20.2
>        netmask 255.255.255.240
>        broadcast 20.20.20.15
>        gateway 20.20.20.1
>        up route add default
>20.20.20.1
>
>iface eth0.10 inet static
>        address 10.10.10.2
>        netmask 255.255.255.240
>        broadcast 10.10.10.15
>        gateway 10.10.10.1

странные у вас vlan-ы :)

итак по порядку:
каталист не роутер, он не умеет управлять vlan-ами. Кто у вас управляет ими? Судя по поставленному вопросу вы хотите чтоб управлял deb.

тогда нужно заводить именно vlan-ы
apt-get install vlan
/etc/network/interfaces

iface vlan2 inet static                                                                                                
        address 10.10.10.2                                                                                            
        netmask 255.255.255.240                                                                                          
        vlan_raw_device eth0
iface vlan3 inet static                                                                                                
        address 20.20.20.2                                                                                            
        netmask 255.255.255.240                                                                                          
        vlan_raw_device eth0

в каталисте надеюсь vlan-ы настроены.
далее интерфейсами vlanX управляете как хотите.
вам конкретно нужно разрешить форвард между ними
iptales -A FORWARD -i vlan2 -o vlan3 -j ACCEPT
iptales -A FORWARD -o vlan2 -i vlan3 -j ACCEPT


>
>
>Проверка работоспособности сети:
>1. Пинги c Роутера А в 10-ю подсеть работают.(ping 10.10.10.2)
>2. Пинги c Роутера В в 20-ю подсеть работают.(ping 20.20.20.2)
>3. Пинги c Debian-a в сторону обоих роутеров работают.
>4!!!! Пинги c Роутера А в 20-ю подсеть и с Роутера В
>в 10-ю не работают...
>:(
>
>Проверка tcpdump-ом:
>tcpdump -i eth0.10 icmp
>tcpdump -i eth0.20 icmp
>показала что в четвертом случае пакеты поступают на соответвующий виртуальный интерфейс но
>не уходят ни по одному из них... почему не могу понять...
>
>
>Проверил таблицу маршрутизации (route), никаких аномалий не вижу.:
>
>Kernel IP routing table
>Destination     Gateway      
>  Genmask        
>Flags Metric Ref    Use Iface
>10.10.10.0      *      
>         255.255.255.240 U
>    0      0
>       0 eth0.10
>20.20.20.0      *      
>         255.255.255.240 U
>    0      0
>       0 eth0.20
>default         20.20.20.1  
>   0.0.0.0        
> UG    0      
>0        0 eth0.20
>
>Что может быть?? Кто нибудь может проврить это на Free, ASP и
>прочих ?


Теперь самое интересное, так нужны ли вам vlan-ы?


"Debian. Передача пакетов между VLAN-ами"
Отправлено Bujhm , 09-Фев-07 16:13 
>странные у вас vlan-ы :)
>

Vlan-ы можно назвать 4-мя разными способами (см man vlan-interfaces):

        iface eth0.1 inet static
            address 192.168.1.1
            netmask 255.255.255.0

        iface vlan1 inet static
            vlan-raw-device eth0
            address 192.168.1.1
            netmask 255.255.255.0

        iface eth0.0001 inet static
            address 192.168.1.1
            netmask 255.255.255.0

        iface vlan0001 inet static
            vlan-raw-device eth0
            address 192.168.1.1
            netmask 255.255.255.0

Я выбрал первый попавшийся способ обозначения имен....

>итак по порядку:
>каталист не роутер, он не умеет управлять vlan-ами. Кто у вас управляет
>ими? Судя по поставленному вопросу вы хотите чтоб управлял deb.

что значит управлять vlan-ами???? м.б. управлять маршрутизацией?


>
>тогда нужно заводить именно vlan-ы
>apt-get install vlan
>/etc/network/interfaces

Естственно это было сделано... Иначе бы не работало :)

>
>iface vlan2 inet static
>        address 10.10.10.2
>        netmask 255.255.255.240
>        vlan_raw_device eth0
>iface vlan3 inet static
>        address 20.20.20.2
>        netmask 255.255.255.240
>        vlan_raw_device eth0

И такой вариант я тоже попробовал....

>в каталисте надеюсь vlan-ы настроены.

Да.

>далее интерфейсами vlanX управляете как хотите.
>вам конкретно нужно разрешить форвард между ними
>iptales -A FORWARD -i vlan2 -o vlan3 -j ACCEPT
>iptales -A FORWARD -o vlan2 -i vlan3 -j ACCEPT

Вот этих комманд я не знал. Набрал (для обоих вариантов конфигурации
interfaces). Бесполезно.
Внутри дебиана пакты между vlan-ами не хотят проходить..

Скажите, а у Вас между vlan-ами в дебиан трафик проходит?

>
>
>Теперь самое интересное, так нужны ли вам vlan-ы?

:\



"Debian. Передача пакетов между VLAN-ами"
Отправлено Oyyo , 09-Фев-07 17:04 
>>странные у вас vlan-ы :)
>Vlan-ы можно назвать 4-мя разными способами (см man vlan-interfaces):
>        iface eth0.1 inet static
address 192.168.1.1
>netmask 255.255.255.0
>
>        iface vlan1 inet static
>vlan-raw-device eth0
>            
>address 192.168.1.1
>            
>netmask 255.255.255.0
>
>        iface eth0.0001 inet static
>
>            
>address 192.168.1.1
>            
>netmask 255.255.255.0
>
>        iface vlan0001 inet static
>
>            
>vlan-raw-device eth0
>            
>address 192.168.1.1
>            
>netmask 255.255.255.0
>
>Я выбрал первый попавшийся способ обозначения имен....
>
>>итак по порядку:
>>каталист не роутер, он не умеет управлять vlan-ами. Кто у вас управляет
>>ими? Судя по поставленному вопросу вы хотите чтоб управлял deb.
>
>что значит управлять vlan-ами???? м.б. управлять маршрутизацией?
>
>
>>
>>тогда нужно заводить именно vlan-ы
>>apt-get install vlan
>>/etc/network/interfaces
>
>Естственно это было сделано... Иначе бы не работало :)
>
>>
>>iface vlan2 inet static
>>        address 10.10.10.2
>>        netmask 255.255.255.240
>>        vlan_raw_device eth0
>>iface vlan3 inet static
>>        address 20.20.20.2
>>        netmask 255.255.255.240
>>        vlan_raw_device eth0
>
>И такой вариант я тоже попробовал....
>
>>в каталисте надеюсь vlan-ы настроены.
>
>Да.
>
>>далее интерфейсами vlanX управляете как хотите.
>>вам конкретно нужно разрешить форвард между ними
>>iptales -A FORWARD -i vlan2 -o vlan3 -j ACCEPT
>>iptales -A FORWARD -o vlan2 -i vlan3 -j ACCEPT
>
>Вот этих комманд я не знал. Набрал (для обоих вариантов конфигурации
>interfaces). Бесполезно.
>Внутри дебиана пакты между vlan-ами не хотят проходить..
>
>Скажите, а у Вас между vlan-ами в дебиан трафик проходит
>>Теперь самое интересное, так нужны ли вам vlan-ы?
>

ориентируюсь на те настройки которые были в первом посте

>face eth0.20 inet static
>        address 20.20.20.2
>        netmask 255.255.255.240
>        broadcast 20.20.20.15
>        gateway 20.20.20.1
>        up route add default 20.20.20.1

gateway - эта опция здесь не нужна, так же и в eth0.10
up route add default - эта тоже не нужна

у всех клиентов подсети 20.20.20.0 шлюз по умолчанию должен быть 20.20.20.2
так же для подсети 10.10.10.0 - шлюз 10.10.10.2
если на машине дебиан не запушен фаервол или политика для цепочки FORWARD
назначена ACCEPT то вам нужно разрешить форвардинг
echo 1 >/proc/sys/net/ipv4/ip_forward

если политика всё запрещено (DROP), то разрешите форвард
между интерфейсами eth0.10 и eth0.20

iptales -A FORWARD -j ACCEPT
это самое простое, форвардинг разрешать в любом случае
echo 1 >/proc/sys/net/ipv4/ip_forward


"Debian. Передача пакетов между VLAN-ами"
Отправлено Bujhm , 09-Фев-07 17:23 
>gateway - эта опция здесь не нужна, так же и в eth0.10
>
>up route add default - эта тоже не нужна
>
>у всех клиентов подсети 20.20.20.0 шлюз по умолчанию должен быть 20.20.20.2
>так же для подсети 10.10.10.0 - шлюз 10.10.10.2
>если на машине дебиан не запушен фаервол или политика для цепочки FORWARD
>
>назначена ACCEPT то вам нужно разрешить форвардинг
>echo 1 >/proc/sys/net/ipv4/ip_forward
>
>если политика всё запрещено (DROP), то разрешите форвард
>между интерфейсами eth0.10 и eth0.20
>
>iptales -A FORWARD -j ACCEPT
>это самое простое, форвардинг разрешать в любом случае
>echo 1 >/proc/sys/net/ipv4/ip_forward

ща попробую и это ...
но только я  только что добился необходимого мне FORWARD-инга следующим образом:
/etc/network/options

ip_forward=yes
spoofprotect=no
syncookies=no

При этом iptables не трогал. И к стати именно после spoofprotect=no все заработало.
Чем это объяснить?  У Вас эти опции как прописаны?


"Debian. Передача пакетов между VLAN-ами"
Отправлено Oyyo , 09-Фев-07 17:41 
>ща попробую и это ...
>но только я  только что добился необходимого мне FORWARD-инга следующим образом:
>
>/etc/network/options
>
>ip_forward=yes
>spoofprotect=no
>syncookies=no
>
>При этом iptables не трогал. И к стати именно после spoofprotect=no все
>заработало.
>Чем это объяснить?  У Вас эти опции как прописаны?

что "все заработало"?



"Debian. Передача пакетов между VLAN-ами"
Отправлено Bujhm , 09-Фев-07 18:10 
>>ща попробую и это ...
>>но только я  только что добился необходимого мне FORWARD-инга следующим образом:
>>
>>/etc/network/options
>>
>>ip_forward=yes
>>spoofprotect=no
>>syncookies=no
>>
>>При этом iptables не трогал. И к стати именно после spoofprotect=no все
>>заработало.
>>Чем это объяснить?  У Вас эти опции как прописаны?
>
>что "все заработало"?

угу....  с моей первоначальной конфигурацией...
поменял только 2 опции в файле /etc/network/options
было
ip_forward=no
spoofprotect=yes
а я поставил
ip_forward=yes
spoofprotect=no

Теперь надо понять на что и как влияет этот spoofprotect....
У Вас какие значения там стоят?
  



"Debian. Передача пакетов между VLAN-ами"
Отправлено Oyyo , 09-Фев-07 18:26 
>поменял только 2 опции в файле /etc/network/options
> было
>ip_forward=no
>spoofprotect=yes
> а я поставил
>ip_forward=yes
>spoofprotect=no
>
>Теперь надо понять на что и как влияет этот spoofprotect....
>У Вас какие значения там стоят?
>

я к сожалению Debian не юзал, видимо
ip_forward=yes - какраз разрешает форвардинг
spoofprotect=no - не грузит iptables, вернее устанавливает во всех
цепочках политику всё разрешено


"Debian. Передача пакетов между VLAN-ами"
Отправлено Bujhm , 09-Фев-07 19:11 
>я к сожалению Debian не юзал, видимо
>ip_forward=yes - какраз разрешает форвардинг
>spoofprotect=no - не грузит iptables, вернее устанавливает во всех
>цепочках политику всё разрешено

понятненько.... я ждал что у ктото есть практический опыт поднятия виланов на дэбиане...
я проделывал тоже самое и на фре и на асп  - везде все примерно одинаково но вот в мелочах очень сильно отличается....
К стати в инэте я не нашел ни одного ПОЛНОГО примера поднятия виланов в дэбиане так чтобы они поднимались после загрузки и так как это предусмотрено в самой ОС....
Потрахался недельку но таки нашел ....  Теперь еще и с Forward-ином пришлось разбираться...

Вот здесь чтото похожее по теме есть
http://www.opennet.me/openforum/vsluhforumID3/1163.html

ну все равно спасибо за ответы... косвенно, через них я и нашел выход... выход ли? :)



"Debian. Передача пакетов между VLAN-ами"
Отправлено Игорь , 21-Май-10 11:51 
раскоментируйте net.ipv4.ip_forward=1 в /etc/sysctl.conf