Вопрос или проблема
Чтобы мне было легче объяснить, я добавил вышеуказанный график.
Следует более подробное объяснение моей проблемы:
- У меня есть 2 виртуальные сети, VNet1 и VNet2, которые соединены между собой. Связь между ними проверена и протестирована (в 2 направлениях).
- У меня есть VPN-туннель, который соединяет VNet2 с удаленной сетью, используя шлюз VPN (S2S). Связь между VNet2 и удаленной сетью проверена и протестирована.
- Нет связи от VNet1 к удаленной сети.
Связь от VNet1 к удаленной сети не работает с оригинальной/стандартной конфигурацией. На данный момент я попробовал:
- Вручную добавил маршрут для удаленной сети в таблице маршрутов для VNet1.
- Создал таблицу маршрутов для VNet2 и добавил маршрут для VNet1.
- Экспериментировал со всеми возможными опциями для “типа следующего перехода”.
- Установил параметры пирания для VNet1, чтобы “Разрешить ‘VNet1’ использовать удаленный шлюз или маршрутизатор ‘VNet2′” в “включено”.
Ничего из вышеперечисленного не сработало. У меня по-прежнему нет доступа к удаленной сети из VNet1.
Чтобы ухудшить ситуацию, нижеупомянутая база знаний, по-моему, подразумевает, что при установке всего как я сделал, связь должна быть без дополнительной настройки:
https://learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-peering-gateway-transit
Заранее спасибо всем, кто уделит время на помощь.
Ответ или решение
Решение проблемы маршрутизации между пирами VNet и VPN
Введение
Ваша проблема с отсутствием подключения между VNet1 и удаленной сетью через VNet2 представляет собой распространённый сценарий при настройке виртуальных сетей в Azure. ПроведениеBaseline-анализа конфигурации сетей и понимание принципов маршрутизации поможет выявить возможные причины отсутствия соединения.
1. Подробный анализ конфигурации
Вы описали следующую архитектуру:
- VNet1 и VNet2: два виртуальных сетевых сегмента, которые правильно пираются, обеспечивая двустороннюю связь.
- VPN-шлюз в VNet2: предоставляющий подключение к удаленной сети, с успешной проверкой соединения с этой сетью.
- Отсутствие соединения: VNet1 не может обращаться к удаленной сети.
Судя по вашему описанию, все устройства и эксперименты, которые вы провели, касаются настройки маршрутов и параметров пиринга.
2. Основные шаги для устранения проблемы
Чтобы решить вашу задачу, рассмотрим несколько ключевых аспектов настройки:
2.1 Проверка маршрутизации
-
Маршрута для Remote Network в VNet1: Убедитесь, что вы добавили правильный маршрут в таблицу маршрутизации VNet1, указывая в качестве следующего узла виртуальный сетевой шлюз VNet2. Это необходимо для того, чтобы трафик из VNet1 мог направляться в VNet2 и далее в удаленную сеть.
-
Настройка маршрутной таблицы для VNet2: Убедитесь, что маршрут в таблице маршрутизации VNet2 настроен так, чтобы принимать трафик от VNet1 и направлять его к VPN-шлюзу.
2.2 Настройки пиринга
- Настройка пиринга VNet1 и VNet2: Вы правильно настроили опцию "Разрешить VNet1 использовать удаленный шлюз VNet2". Однако ещё раз проверьте, включены ли все настройки и параметры пиринга, такие как "Использование подменных маршрутов".
2.3 Убедитесь в настройках безопасности
- Элементы безопасности: Параметры сетевых групп безопасности (NSG) в каждой из сетей могут блокировать трафик. Проверьте, чтобы правила безопасности позволяли трафик между VNet1 и VNet2, а также к удаленной сети.
3. Запрос потока трафика
Чтобы наглядно увидеть, где происходит сбой на уровне маршрутизации:
- Используйте Azure Network Watcher, чтобы проследить маршрут и диагностику. Это позволит вам увидеть, поступает ли трафик из VNet1 в VNet2 и правильно ли он направляется к удаленному VPN.
4. Заключение
Не забывайте проверять ссылки и документы, такие как указанные вами статьи из Knowledge Base, чтобы убедиться в корректности всех настроек. Если после выполнения всех вышеперечисленных шагов проблема все еще не решена, возможно, стоит обратиться в техническую поддержку Azure для более глубокого анализа и диагностики.
Проблемы маршрутизации могут быть достаточно сложными, но, следуя этим рекомендациям, вы должны быть в состоянии наладить связь между VNet1 и удаленной сетью через VNet2.