прямая связь двух машин + подключение через коммутатор

436
Bjørn Bouet Smith

Последние пару дней я пытался заставить работать настройку, подобную приведенной ниже.

У меня есть сервер Ubuntu 16.04 с двумя сетевыми картами, 1 1 Гбит, 1 10 Гбит, а Windows Machine Windows 10 с двумя сетевыми картами, 1 1 Гбит, 1 10 Гбит

Я могу пропинговать от машины Windows к адресам серверов 192.168.1.200, но не к 192.168.0.200. Машина Windows также может получить доступ к Интернету просто отлично.

с сервера я могу пинговать машину windows, т.е. 192.168.1.49. Я также могу пропинговать некоторые хосты в сети 192.168.0.0/24, но не шлюз по умолчанию. Сервер также не имеет подключения к Интернету.

Итак, мой вопрос: как мне заставить это работать, это кажется довольно простым - я хочу, чтобы две машины передавали весь трафик 192.168.1.0/24 напрямую через быструю ссылку 10Gbs, а все остальное должно проходить через шлюз по умолчанию.

Я пробовал все виды настройки маршрутизации на сервере, я пытался следовать руководству здесь: https://www.thomas-krenn.com/en/wiki/Two_Default_Gateways_on_One_System - но мои настройки немного отличаются, так как у меня нет шлюз по умолчанию в сети 192.168.1.0/24.

Сети 10 Гбит - это новое дополнение, до того как все было добавлено, все было замечательно - я добавил сетевые карты 10 Гбит, чтобы получить быстрое соединение с сервером, чтобы я мог подключить iscsi к быстрому соединению с низкой задержкой.

Надеюсь, у вас, яркие люди, есть хорошие идеи.

Спасибо Бьёрн

 Internet | | | | | | | -------------------- | | ------------| Router/Switch |----------- | | 192.168.0.1 | | | -------------------- | | | | | | | | | | | | | | | Network Card 1 (ens192) Network Card 1 (eth0) | | 192.168.0.200 (s) 192.168.0.29 (d) -------------------- --------------------- | | | | | Server 1 | | Windows client | | | | | -------------------- --------------------- 192.168.1.200 (s) 192.168.1.49 (s) | | Network Card 2 (ens161) Network Card 2 (eth1) | | | | | Direct 10GbE | -------------------------------------------  

/ и т.д. / сеть / интерфейсы

 # The loopback network interface auto lo iface lo inet loopback  auto ens192 iface ens192 inet static address 192.168.0.200 netmask 255.255.255.0 gateway 192.168.0.1 dns-nameservers 192.168.0.201 dns-domain smith.local dns-domain cloud.local   auto ens161 iface ens161 inet static address 192.168.1.200 netmask 255.255.255.0  # fast interface route post-up ip route add 192.168.1.0/24 dev ens161 src 192.168.1.200 table rt2 post-up ip route add default 192.168.1.49 dev ens161 table rt2  post-up ip rule add from 192.168.1.200/32 table rt2 post-up ip rule add to 192.168.1.200/32 table rt2 

маршрут -n

 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 ens192 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens192 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 ens161 

IP правило шоу

 0: from all lookup local 32764: from all to 192.168.1.200 lookup rt2 32765: from 192.168.1.200 lookup rt2 32766: from all lookup main 32767: from all lookup default 

таблица списка маршрутов ip rt2

192.168.1.0/24 dev ens161 scope link src 192.168.1.200 

Таблица списка маршрутов IP

 default via 192.168.0.1 dev ens192 onlink 192.168.0.0/24 dev ens192 proto kernel scope link src 192.168.0.200 192.168.1.0/24 dev ens161 proto kernel scope link src 192.168.1.200 
0
Вам не нужна _any_ маршрутизация для прямого соединения / локальной подсети - маршрутизация только для выхода из подсети. Attie 5 лет назад 2
Если вы физически отключаете старую сеть 192.168.0.0/24, можете ли вы общаться через новое прямое соединение 192.168.1.0/24? В Linux реализовано «[_weak host model_] (https://en.wikipedia.org/wiki/Host_model)», означающее, что вы можете получить ответ от его интерфейса 192.168.1.200 через физический интерфейс 102.168.0.200 ... Attie 5 лет назад 1
Обе машины уже могут обмениваться данными по сети 192.168.1.0/24, но не по старой сети, что является моей настоящей проблемой. Если я отсоединяю кабель от Windows PC, то есть от старой сети (192.168.0.0/24) - тогда я также могу общаться в новой сети Bjørn Bouet Smith 5 лет назад 0
Я использовал аналогичную настройку (хотя только с GigE) и не было проблем. Вам не нужен шлюз по умолчанию на любом из сетевых адаптеров, которые подключены напрямую, только на том, который подключен к маршрутизатору / коммутатору. Все, что находится в одной из подсетей 192.168.xx, должно автоматически использовать соответствующий NIC, а все остальное должно идти к шлюзу по умолчанию через NIC, который находится в той же подсети, что и он. 3D1T0R 5 лет назад 0
Если вы отключите кабель, который идет напрямую от одного компьютера к другому, все ли работает, как раньше? 3D1T0R 5 лет назад 0
Да. У меня есть два окна ping на моей машине, в то время как я пробую разные настройки на сервере Ubuntu. Когда я отключаю 10-гигабайтную ссылку, сеть 192.168.0.0/24 начинает отвечать, а другая, естественно, отключается. и наоборот, как только я подключаю его обратно, он перестает отвечать Bjørn Bouet Smith 5 лет назад 0
Я не уверен, если это имеет какое-либо значение. Сервер Ubuntu - это виртуальная машина на другом физическом компьютере (esxi) - обе сетевые карты подключены к одному виртуальному коммутатору на esxi (так как я не мог понять, как настроить сетевую карту для использования другого виртуального коммутатора) Bjørn Bouet Smith 5 лет назад 0
Это работает :-) Оказывается, я просто тупица :-) Мне удалось сделать еще один виртуальный коммутатор в esxi, поместить туда карту 10 ГБ и переместить виртуальную сетевую карту в этот коммутатор, и когда я снова запустил сервер, все просто заработало , Пусть это будет уроком для всех, разные физические сети должны быть на разных виртуальных коммутаторах в esxi. Bjørn Bouet Smith 5 лет назад 0
"_Сервер Ubuntu - это виртуальная машина_" / "_ обе сетевые карты подключены к тому же виртуальному коммутатору на esxi_" - да, это важно! попробуй описать проблему полностью :-) Attie 5 лет назад 0

1 ответ на вопрос

0
Bjørn Bouet Smith

Я больше поинтересовался, почему я не смог создать еще один виртуальный коммутатор, и обнаружил, что вы должны это сделать, поэтому мне удалось создать еще один виртуальный коммутатор в esxi, положить туда карту 10 ГБ и переместить виртуальную сетевую карту в этот коммутатор и когда я снова запустил сервер, все просто заработало.

Пусть это будет уроком для всех, разные физические сети должны быть на разных виртуальных коммутаторах в esxi.

Так что в действительности проблем не было вообще, это была проблема esxi, а не проблема linux. Linux отправлял пакеты правильно, но, по всей видимости, esxi их отбрасывал.

Похожие вопросы