У меня есть домашняя сеть с 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 набор.