Как я могу заставить эти статические маршруты IPv4 работать?

Я очень новичок в сети linux и пытаюсь настроить следующую топологию для некоторых виртуальных машин на тестовом стенде. (Обратите внимание: я должен настроить виртуальные машины именно таким образом для моих целей тестирования. Я не могу обманывать и помещать их в переключатели. Все они должны быть в разных сетях).

Node1     Node2     Node3     Node4
eth[x]<-->eth[x]    eth[x]<-->eth[x]
          eth[y]<-->eth[y]

В настоящее время я пытаюсь заставить Node4 поговорить с Node2 через Node3, но неудачно. Может кто-нибудь сказать мне, что я ошибаюсь и как его исправить?

IP-адрес Node1:

eth2 - 10.1.3.2/24

IP-адреса Node2

eth3 - 10.1.1.2/24
eth4 - 10.1.3.3/24

IP-адреса узла Node3

eth1 - 10.1.2.2/24
eth3 - 10.1.1.3/24

IP-адрес узла Node4

eth4 - 10.1.2.3/24

(Маршруты, от «ip route») Маршрут для Node1:

10.1.3.0/24 dev eth2  proto kernel  scope link  src 10.1.3.2

Маршрут для узла 2:

10.1.1.0/24 dev eth3  proto kernel  scope link  src 10.1.1.2 
10.1.3.0/24 dev eth4  proto kernel  scope link  src 10.1.3.3 

Маршрут для Node3, после добавления через:

10.1.1.0/24 dev eth3  scope link  src 10.1.1.3 
10.1.2.0/24 dev eth1  scope link  src 10.1.2.2 
10.1.3.0/24 via 10.1.1.2 dev eth3

Маршрут для узла 4:

10.1.2.0/24 dev eth4  proto kernel  scope link  src 10.1.2.3 

При этой настройке узел Node3 может пинговать адрес узла Node2 в 10.1.3.3, но Node4 не может выполнить пинг по этому адресу. Что мне нужно сделать, чтобы Node4 мог выполнить ping 10.1.3.3? Кроме того, как я могу получить Node4, чтобы иметь возможность общаться до Node1?

3 голоса | спросил user20291 4 32015vEurope/Moscow11bEurope/MoscowWed, 04 Nov 2015 04:00:38 +0300 2015, 04:00:38

2 ответа


5

Шаг первый, включите IP Forwarding на узле2 и узле3 (или узлы будут «хостами», а не «маршрутизаторами»)

Все узлы должны знать, что не связано с :

Node1

ip route add 10.1.1.0/24 via 10.1.3.3
ip route add 10.1.2.0/24 via 10.1.3.3

Node2

ip route add 10.1.2.0/24 via 10.1.1.3

node3

ip route add 10.1.3.0/24 via 10.1.1.2

Node4

ip route add 10.1.3.0/24 via 10.1.2.2
ip route add 10.1.1.0/24 via 10.1.2.2

(Это было бы намного проще, если бы все было на одном снимке.)

ответил Ricky Beam 4 32015vEurope/Moscow11bEurope/MoscowWed, 04 Nov 2015 04:17:45 +0300 2015, 04:17:45
0

Node4 не имеет маршрутов к префиксам, отличным от своих. Как Node4 знает, куда отправлять трафик для Node2 10.1.3.3 адрес?

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

То, что должны иметь конечные узлы, - это маршрут по умолчанию 0.0.0.0/0, указывающий на их единственный интерфейс. Это разваливается, если у них более одного интерфейса. Два средних узла будут нуждаться в маршрутах к префиксам, к которым у них нет прямого контакта, и это не должно выполняться с помощью маршрутов по умолчанию.

Представьте себе сеть со многими маршрутизаторами, где вы пытаетесь идти в ногу с такими вещами. Вы можете понять, почему были созданы протоколы маршрутизации. Статическая маршрутизация имеет свои применения, но попытка полностью запустить сеть, используя, является рецептом для безумного.

ответил Ron Maupin 4 32015vEurope/Moscow11bEurope/MoscowWed, 04 Nov 2015 04:14:38 +0300 2015, 04:14:38

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132