Назад | Перейти на главную страницу

Мост Linux VLAN

У меня есть домашняя сеть с VLAN, одна для LAN, одна для WLAN и одна для Интернета. Я хотел бы использовать мост, чтобы вместо настройки этих же VLAN на каждую машину у них был собственный идентификатор VLAN и мосты были LAN, WLAN и Интернет.

Я пробовал, но по какой-то причине keep-alive / ttl, похоже, не работает, потому что сеансы SSH и т. Д. Внезапно отключаются.

У нас есть такая же установка, работающая на рабочем месте более 4 лет с более чем 100 клиентами, но это нестандартное оборудование брандмауэра / маршрутизатора, поэтому доступ к нему невозможен. Я знаю, что он работает под управлением Linux.

Так что же в настройках сети по умолчанию Debian / Ubuntu неправильно или это просто проблема с драйвером NIC / аппаратным обеспечением? Я безуспешно пытался испортить настройки ttl и т. Д. Плохие вещи происходят в мосте, потому что текущая настройка только для VLAN работает нормально.

интерфейсы:

 auto lo
 iface lo inet loopback

 # The primary network interface
 allow-hotplug eth0
 allow-hotplug eth1

 iface eth0 inet static
 iface eth1 inet static

 auto vlan111
 auto vlan222
 auto vlan333
 auto vlan444
 auto br0
 auto br1
 auto br2

 # LAN
 iface vlan111 inet static
         vlan_raw_device eth0

 # WLAN
 iface vlan222 inet static
         vlan_raw_device eth0

 # ADSL Modem
 iface vlan333 inet static
         vlan_raw_device eth1

 # Internet
 iface vlan444 inet static
         vlan_raw_device eth0

 # LAN bridge
 iface br0 inet static
         address 192.168.0.1
         netmask 255.255.255.0
         bridge_ports eth0.111
         bridge_stp on

 # Internet bridge
 iface br1 inet static
         address x.x.x.x
         netmask x.x.x.x
         gateway x.x.x.x
         bridge_ports eth1.333 eth0.444
         bridge_stp on
         post-up iptables -t nat -A POSTROUTING -o br1 -j MASQUERADE
         pre-down iptables -t nat -D POSTROUTING -o br1 -j MASQUERADE

 # WLAN bridge
 iface br2 inet static
         address 192.168.1.1
         netmask 255.255.255.0
         bridge_ports eth0.222
         bridge_stp on

Sysctl:

net.ipv4.conf.default.forwarding=1

Для vlan мы используем следующий метод:

auto eth0.6
        iface eth0.6 inet static
        address 192.168.6.13
        netmask 255.255.255.0
        broadcast 192.168.6.255
        pre-up vconfig add eth0 6
        post-down vconfig rem eth0.6

Случай vlan на мостовом интерфейсе не сильно отличается:

auto br0
iface br0 inet static
        address 192.168.0.11
        netmask 255.255.255.0
        broadcast 192.168.0.255
        bridge_stp on
        bridge_ports eth0 eth1
        bridge_bridgeprio 60000

auto br0.6
iface br0.6 inet static
        address 192.168.6.11
        netmask 255.255.255.0
        broadcast 192.168.6.255
        gateway 192.168.6.1
        pre-up vconfig add br0 6
        post-down vconfig rem br0.6

Однако, глядя на вашу настройку, вы, кажется, пытаетесь установить мост между двумя разными vlan на разных интерфейсах. Я действительно думаю, что вы хотите использовать маршрутизацию между своими сетями.

Ваш коммутатор понимает сети VLAN? Вероятно, вы захотите настроить коммутатор так, чтобы правильные порты были настроены как нетегированные в правой VLAN для машины, подключенной к этому порту.

Я не думаю, что мост VLAN - хорошая идея. VLANS в основном разбивают коммутатор (или несколько коммутаторов) на несколько виртуальных сегментов. Соединяя две сети VLAN, вы снова объединяете их разбитые широковещательные домены, фактически возвращая их в один сегмент. Итак, зачем тогда вообще использовать VLAN?

Как предлагали многие, вам нужна маршрутизация между различными подсетями в ваших VLAN.

Можно ли просто подключить третью сетевую карту и иметь 3 разных интерфейса, выполняющих маршрутизацию / маскировку?

Если ваш интернет-провайдер не предоставляет вам дома тегированное соединение vlan, я сомневаюсь, что есть много смысла в том, чтобы сделать его VLAN.

А иначе можете показать свою таблицу маршрутизации? Чтобы трафик проходил между ними, вам потребуются маршруты для каждой VLAN.

Вы комбинируете синтаксис в этом файле.

Мое первое предложение - убедиться, что у вас установлен ifupdown-scripts-zg2 для правильной поддержки vlan, затем переключитесь на более разумное именование ethX.VLAN и не забудьте добавить строки auto ethX.VLAN, чтобы они запускались при загрузке.

Проблема «SSH отключается через некоторое время» звучит как мой старый враг, rp_filter.

http://www.tolaris.com/2009/07/13/disables-reverse-path-filtering-in-complex-networks/

Попробуй это:

net.ipv4.conf.lo.rp_filter = 0 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.default.rp_filter = 0

Установите то же самое вручную для любого интерфейса, у которого еще есть 1 набор.