На некоторых виртуальных машинах Linux наблюдаются странные сетевые поведения (на основе облака, несколько провайдеров, в основном Ubuntu 14.04 и 16.04). У нас есть две отдельные сети со шлюзом Strongswan между ними.
Сайт A:
Сеть - 10.104.16.0/20
VPN-шлюз и маршрутизация настроены на главном маршрутизаторе (на виртуальных машинах не требуется conf)
Сайт B:
Сеть - 10.240.132.0/25
Strongswan gateway - 10.240.132.15
Маршрутизация настроена для каждой виртуальной машины в зависимости от необходимости (или нет) для связи с сайтом A
Таблица маршрутизации ядра на одной из виртуальных машин на сайте B, которые должны взаимодействовать с виртуальными машинами сайта A:
# route -vn
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.240.132.1 0.0.0.0 UG 0 0 0 eth0
10.104.16.0 10.240.132.15 255.255.240.0 UG 0 0 0 eth0
10.240.132.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
А теперь проблема ...
Когда все работает хорошо, виртуальная машина выполняет эхо-тестирование виртуальных машин на сайте A, и вот что выводит команда traceroute:
# traceroute 10.104.19.4
traceroute to 10.104.19.4 (10.104.19.4), 30 hops max, 60 byte packets
1 10.240.132.15 (10.240.132.15) 0.248 ms 0.228 ms 0.220 ms
2 * * *
3 10.104.19.4 (10.104.19.4) 15.048 ms 15.042 ms 15.028 ms
Тогда внезапно виртуальная машина не смогла пропинговать ресурсы сайта A, и вывод traceroute будет выглядеть так:
# traceroute 10.104.19.4
traceroute to 10.104.19.4 (10.104.19.4), 30 hops max, 60 byte packets
1 10.104.19.4 (10.104.19.4) 0.552 ms 0.567 ms 0.616 ms
2 * 10.104.19.4 (10.104.19.4) 0.659 ms 0.707 ms
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *^C
Это выглядит совершенно случайно, хотя. Когда это в конце концов произойдет, я удалю, а затем добавлю маршрут снова:
# route del -net 10.104.16.0 gw 10.240.132.15 netmask 255.255.240.0
# route add -net 10.104.16.0 gw 10.240.132.15 netmask 255.255.240.0
Конечно, это решает проблему на некоторое время, но это не длится долго ... Любая идея, что может пойти не так или что я делаю неправильно?
Спасибо, ребята;)