LINUX.ORG.RU
ФорумAdmin

Openwrt и vlan routing

 ,


0

1

Добрый день. С подсказками отсюда получил следующую конфигурацию:

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd1c:c264:ca8f::/48'

config interface 'lan'
        option type 'bridge'
        option ifname 'eth0.1'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option ifname 'eth0.2'
        option proto 'dhcp'

config device 'wan_eth0_2_dev'
        option name 'eth0.2'
        option macaddr '64:70:02:67:61:13'

config interface 'wan6'
        option ifname 'eth0.2'
        option proto 'dhcpv6'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option vid '1'
        option ports '0t 3 4 5'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '0t 1'
        option vid '2'

config interface 'RT'
        option ifname 'eth0.2'
        option proto 'pppoe'
        option password '*'
        option ipv6 'auto'
        option username '*'

config switch_vlan
        option device 'switch0'
        option vlan '3'
        option vid '3'
        option ports '0t 2t'

config switch_vlan
        option device 'switch0'
        option vlan '4'
        option vid '4'
        option ports '0t 2t'

config switch_vlan
        option device 'switch0'
        option vlan '5'
        option vid '5'
        option ports '0t 2t'

config switch_vlan
        option device 'switch0'
        option vlan '6'
        option ports '0t 2t'
        option vid '6'

config interface 'Guests'
        option proto 'static'
        option ipaddr '192.168.3.1'
        option netmask '255.255.255.0'
        option ifname 'eth0.3'
        option type 'bridge'

config interface 'VLAN4'
        option ifname 'eth0.4'
        option proto 'static'
        option ipaddr '192.168.4.1'
        option netmask '255.255.255.0'

Теперь не получается настроить маршрутизацию между VLAN. Мне нужно чтобы трафик между ‘lan’ и ‘VLAN4’ свободно гулял в обе стороны, а адресация оставалась у каждого своей. У ‘lan’ - 192.168.1.0, у ‘VLAN4’ - 192.168.4.0. Вроде понятно, что нужно добавить маршруты и настроить firewall. Но не получается это сделать в openwrt. Подскажите пример, кому не трудно. Заранее спасибо. :-)

для начала - что указано у клиентов с разных подсетей в качестве шлюза по умолчанию? если там НЕ устройство с OpenWRT - надо разбираться с этим в первую очередь.

Pinkbyte ★★★★★ ()
Ответ на: комментарий от mr_dedic

каким зонам файрвола принадлежат данные подсети на openwrt? точнее даже не так - какие зоны есть и как они настроены?

Pinkbyte ★★★★★ ()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от mr_dedic

если между vlan-ами не надо ограничивать трафик - лучше поместить их в одну зону. После этого убедиться что конфиг сохранился и на всякий случай - перезагрузить роутер.

Если и это не поможет(и если при этом клиенты из vlan-ов могут достучаться до роутера) - надо смотреть полную конфигурацию uci и полученные правила iptables

Pinkbyte ★★★★★ ()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

Если я на оба интерфейса вешаю одну и ту же зону ‘lan’ - это не помогает. Так понимаю необходимо ещё и правильный маршрут прописать? Вопрос какой? :-)

mr_dedic ()
Ответ на: комментарий от mr_dedic

Если я на оба интерфейса вешаю одну и ту же зону ‘lan’ - это не помогает. Так понимаю необходимо ещё и правильный маршрут прописать? Вопрос какой? :-)

Если маршруты по умолчанию прописаны как ты говорил - никаких дополнительных маршрутов не нужно.

Показывай выхлоп iptables-save с роутера

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Pinkbyte

выхлоп большой получился. поэтому внешней ссылкой.

в общем какая-то лажа. интерфейсы LAN и VLAN4 находятся в одной зоне firewall (LAN), но в разных VLAN ID 1 и 4 соответственно:

  1. с виртуальной машины в сети VLAN4 пинг до 192.168.1.1 проходит.

  2. с виртуальной машины в сети VLAN4 пинг до узла 192.168.1.2 не проходит, smb не работает.

  3. с узла в сети LAN пинг до 192.168.4.1 проходит.

  4. с узла в сети LAN пинг до 192.168.4.2 проходит, но smb не работает.

на всех узлах firewall выключен полностью. на гипервизоре тоже.

mr_dedic ()
Ответ на: комментарий от mr_dedic

с правилами поидее всё окей:

-A zone_lan_dest_ACCEPT -o br-lan -m comment --comment "!fw3" -j ACCEPT
-A zone_lan_dest_ACCEPT -o eth0.4 -m comment --comment "!fw3" -j ACCEPT
-A FORWARD -i br-lan -m comment --comment "!fw3" -j zone_lan_forward
-A FORWARD -i eth0.4 -m comment --comment "!fw3" -j zone_lan_forward
-A FORWARD -i eth0.2 -m comment --comment "!fw3" -j zone_wan_forward

eth0.2 я так понимаю это wan-интерфейс, а br-lan - это упомянутый тобой vlan1.

версия openwrt какая?

на гипервизоре тоже.

стоп-стоп-стоп, где в этой схеме гипервизор?

Pinkbyte ★★★★★ ()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

eth0.2 я так понимаю это wan-интерфейс, а br-lan - это упомянутый тобой vlan1.

верно.

стоп-стоп-стоп, где в этой схеме гипервизор?

роутер отдельная железка на tp-link. гипервизор отдельная машина с hyper-v. у гипервизора два интерфейса - управление в lan и отдельный интерфейс для тегированного трафика.

собственно задачу с конфигом я уже решил. все работает. теперь не могу заставить ходить трафик между нужными vlan. например: между 1 и 4.

mr_dedic ()
Последнее исправление: mr_dedic (всего исправлений: 1)
Ответ на: комментарий от mr_dedic

окей, ну тогда давай всё же попробуем исключить файрвол на OpenWRT. Ставь на роутер tcpdump, вешай его слушать icmp трафик на br-lan и eth0.4 и пробуй пинговать с клиентов.

Pinkbyte ★★★★★ ()
Ответ на: комментарий от mr_dedic

вручную-то можно на время:

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F

Но это всё - до первой же перезагрузки роутера.

Pinkbyte ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.