Как направить трафик приложения в конкретный сетевой интерфейс?
Имеется приложение под Windows, которое проверяет работоспособность нескольких удаленных web-сервисов в интернете. Стоит задача проверять их работоспособность через нескольких интернет-провайдеров, которые подключены в комп через несколько сетевых карт. Уточнение: необходимо проверять через каждого провайдера все сервисы. И делать это желательно одновременно, т.е., вариант поочередного включения сетевых интерфейсов и запуска программы - это самый крайний случай.
На данный момент задача решена с помощью виртуальных машин, к каждой из которых привязана одна сетевая карта, а в ВМ уже запускается приложение. Минусы: теряется часть ресурсов на поддержание ВМ, трудно объяснить процесс обслуживания персоналу.
Возможно ли каким-то образом направить трафик приложения в конкретный сетевой интерфейс без использования ВМ? Умеет ли такое Docker? Я просто не сталкивался ещё с ним. Возможно ли такое сделать с помощью стороннего софта или средствами ОС?
"в лоб" перед каждым запуском приложения менять маршрут по-умолчанию.
В Linux то, что Вы хотите, называется advanced routing / policy based routing, в Win, на сколько мне известно, встроенного решения нет.
Может быть Вам помог бы ISA/TMG. Но я не уверен.