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

Проблема маршрутизации OpenBSD

Я запускаю OpenBSD на сетевом оборудовании. Имеет 5 сетевых карт.

Я хочу предоставить разные IP-адреса в одной подсети для 3-х сетевых устройств. Например:

em0: 192.168.1.5 em1: 192.168.1.90 em2: 192.168.1.56

Я делаю необходимую конфигурацию с помощью ifconfig, все интерфейсы работают должным образом, когда все порты Ethernet подключены к коммутатору. Но что-то не так с маршрутизацией. Если я подключаюсь к 192.16.1.5 через любую службу (http, smtp и т. Д.), Трафик идет по ссылке №3. Если я отсоединю кабель от em2, я не смогу достичь ни одного IP-адреса, привязанного к устройству. Есть ли способ маршрутизировать трафик по разным ссылкам в этой конфигурации IP?

по какой причине вам нужно иметь 3 ips на 3 отдельных Nics? вы можете использовать netstat -rn для просмотра всех таблиц маршрутизации, но обычно это работает не так, как вы хотите.

Поддерживает ли ваш коммутатор LACP и т.п.? ЕСЛИ, чтобы вы могли создать группу LACP, поместить в нее все 3 интерфейса, а затем назначить 1 IP-адрес для ссылки, а другие IP-адреса в псевдонимах.

Вы хотите Маршрутизация на основе политик.

Я предполагаю, что у вас установлен gw по умолчанию для устройства em2. Таким образом, когда эта ссылка не работает, любой трафик, направленный на em0 / 1, по умолчанию будет по умолчанию на em2, который тогда будет недоступен.

Убедитесь, что трафик на em0 / 1 направляется обратно через каждое соответствующее устройство, и все должно быть в порядке.

У вас случай асимметричной маршрутизации. iproute 2 может вам помочь. Если вы действительно не можете использовать решение для связывания каналов с одним IP-адресом, прочтите это для получения дополнительной информации.

http://www.linuxjournal.com/article/7291

Если вам нужна большая пропускная способность / пропускная способность, чем может дать вам одна сетевая карта, есть несколько способов сделать это. Самыми простыми способами являются объединение сетевых адаптеров в порт-канал (LACP) или размещение каждого интерфейса в отдельной IP-подсети. Что они тебе дают?

--Port-channel - Pro: 1 виртуальная сетевая карта большой емкости Con: напрямую подключенное устройство должно поддерживать параметры конфигурации для Port-channel, и оно должно быть одного типа, так как существует несколько разных типов.

- Другая IP-подсеть - Pro: устройство с поддержкой порта-канала не требуется (недорогая, повсеместная). Недостаток: IP-маршрутизатор необходим для маршрутизации пакетов из одной подсети в другие.

Если вы выберете второй вариант, потому что у вас недорогой базовый коммутатор, устройства с интенсивным использованием должны быть размещены в разных подсетях, чтобы разделить трафик. Сложно с помощью недорогого коммутатора помочь вам добиться этого с уверенностью. Если у вас есть несколько недорогих коммутаторов, вы можете использовать по одному для каждой подсети и использовать устройство в качестве маршрутизатора.

Включена ли маршрутизация в OpenBSD (ip.forwarding = 1 в sysctl.conf) или на другом устройстве? Я не могу сказать по предоставленной информации.

Итак, к каким переключателям / устройствам вы подключаете свое устройство? Какие функции он поддерживает?

Если он поддерживает VLAN и базовую IP-маршрутизацию, то можно использовать подсети. Это означает, что вы можете настроить маршрутизацию на коммутаторе / маршрутизаторе, и вашему устройству не нужно выполнять эту работу. Вы настраиваете VLAN для каждой подсети, IP-адрес маршрутизатора для каждой подсети. на выключателеи поместите свой интерфейс на свое устройство в каждую подсеть.

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

Вы не говорите, зачем вы это делаете, но если вы делаете это из-за такого сценария, как наличие нескольких клиентов, использующих одни и те же диапазоны IP-адресов, вам нужно будет использовать идентификаторы таблиц маршрутизации, чтобы справиться с этим. man route для получения подробной информации о таблицах маршрутизации.