Маршрут устройства Linux без трансляции
У меня есть следующие настройки:
- Пространство имен сети,
ns1 - Пара виртуальных интерфейсов,
ns_ext1а такжеns_int1,ns_extсуществует в глобальном пространстве имен, иns_int1существует вns1, - Устройство GRE,
gre1, который существует вns1, - Ни одному из этих устройств не назначены IP-адреса.
- Таблица маршрутизации в
ns1как следует10.0.2.0/24 -> gre10.0.0.0/0 -> ns_int1
- Таблица маршрутизации в глобальном пространстве имен включает в себя:
10.0.2.0/24 -> ns_ext1
Когда я пытаюсь пинговать 10.0.2.1 из глобального пространства имен, который является IP-адресом, который существует на другом конце туннеля GRE, я получаю странное поведение. Трафик направляется на ns_ext1, Однако в ns1, ns_int1 не передает этот трафик gre1, как указано в таблице маршрутизации. Вместо этого это ARP'ing для 10.0.2.1, Я подозреваю, что, указав устройство ns_ext как следующий прыжок для 10.0.2.0/24 подсеть в глобальной таблице маршрутизации, я заставил ядро думать, что подсеть напрямую связана с ns_ext1, Есть ли способ, которым я могу заставить его просто пересылать через этот интерфейс вместо ARP?