Доступ к веб-серверу на виртуальной машине с машины в другой подсети

Доступ к веб-серверу на виртуальной машине с машины в другой подсети

Я не могу получить доступ к веб-приложению, работающему на виртуальной машине, размещенной KVM, с машины в другой подсети.

Итак, я хотел бы получить доступ с машины 192.168.1.2 (вверху справа в зеленом круге) к веб-приложению, работающему на виртуальной машине 192.168.10.1 (внизу посередине в красном круге)

Я добавил статический маршрут на маршрутизаторе Netgear, чтобы все запросы к 192.168.10.0/24 перенаправлялись на хост-компьютер 192.168.1.1.

Сама хост-машина имеет статический маршрут для пересылки запросов на 192.168.10.0/24 через интерфейс моста vmbr1.

  • Telnet-соединение с портом 80 с адреса 192.168.1.2 завершилось неудачей, но было успешно завершено с хост-компьютера 192.168.1.1.
  • Вызов ping к виртуальной машине работает с машины 192.168.1.2 к виртуальной машине
  • Трассировка маршрута не удалась, но если добавить опцию -I, трассировка тоже заработает.

Заранее спасибо за вашу помощь или любую подсказку.

PS: Уточняю, что даже если брандмауэр отключен, он все равно не работает.

iptables-L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 

traceroute от физической машины 192.168.1.2 до виртуальной машины 192.168.10.1 => KO

traceroute to 192.168.10.1 (192.168.10.1), 30 hops max, 60 byte packets
 1  192.168.1.254 (192.168.1.254)  2.390 ms  3.004 ms  3.436 ms
 2  * * *
 3  * * *
 ...
 30  * * *

traceroute от виртуальной машины 192.168.1.2 до физической машины 192.168.10.1 => OK

traceroute to 192.168.1.2 (192.168.1.2), 30 hops max, 60 byte packets
 1  192.168.10.254 (192.168.10.254)  0.846 ms  0.648 ms  0.519 ms
 2  192.168.1.2 (192.168.1.2)  5.447 ms  5.277 ms  4.977 ms

Пинг с машины 192.168.1.2 на виртуальную машину 192.168.10.1:

ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
From 192.168.1.254: icmp_seq=1 Redirect Host(New nexthop: 192.168.1.1)
From 192.168.1.254 icmp_seq=1 Redirect Host64 bytes from 192.168.10.1: icmp_seq=1 ttl=63 time=2.77 ms
From 192.168.1.254: icmp_seq=2 Redirect Host(New nexthop: 192.168.1.1)
From 192.168.1.254 icmp_seq=2 Redirect Host64 bytes from 192.168.10.1: icmp_seq=2 ttl=63 time=2.56 ms

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

ip маршрут показать

default via 192.168.1.254 dev eth0 
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1 
192.168.10.0/24 dev vmbr10  proto kernel  scope link  src 192.168.10.254 
192.168.20.0/24 dev vmbr20  proto kernel  scope link  src 192.168.20.254 

Сетевая диаграмма

РЕДАКТИРОВАТЬ

Когда я подключаю машину 192.168.1.2 (исходную машину) напрямую к маршрутизатору с помощью кабеля RJ45, все работает. До этого 192.168.1.2 был подключен к маршрутизатору по Wi-Fi. Поэтому я думаю, что проблема в этом маршрутизаторе, который не применяет статический маршрут к машине, подключенной по Wi-Fi. Я не знаю, почему, но это странно :S

решение1

Проблема в том, что вы используете маршрутизатор с 2 интерфейсами в одной подсети 192.168.1.0/24.

Машина 192.168.1.2 отправляет пакеты на свой шлюз по умолчанию, я предполагаю, что это 192.162.1.254, то есть маршрутизатор.

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

Вам необходимо запустить маршрутизатор как мост или коммутатор, т.е. никакие маршруты не нужны, поскольку KVM 192.168.1.1 и клиент 192.168.1.2 находятся в одной подсети, им не нужен протокол маршрутизации для взаимодействия.

Кроме того, это означает, что правильным шлюзом по умолчанию для клиента 192.168.1.2 должен быть KVM 192.168.1.1.

Еще кое-что: вам нужно подтвердить, используете ли вы правильный шлюз по умолчанию для KVM, действительно ли это маршрутизатор? Предоставляет ли маршрутизатор KVM или клиенту доступ к другим подсетям, чем те, которые изображены здесь?

Связанный контент