Это способ, которым многие из нас устанавливают маршрут на окнах:
route add 10.10.0.0 mask 255.255.0.0 10.77.77.1 if 58 -p
В командной строке 58 указывается индекс интерфейса (IF), и большую часть времени его значение является постоянным для конкретной сетевой интерфейсной карты. Таким образом, можно создать командный файл CMD для автоматизации удаления и повторной настройки всех маршрутов, которые ей нужны.
Однако в моем случае у меня есть сетевой адаптер Gigabit Ethernet с двумя портами USB 3.0, и его IF меняются каждый раз, когда я подключаюсь к USB-порту моего ноутбука. Что я делаю, просто открываю оболочку cmd, получаю текущие идентификаторы интерфейса, давая печать маршрута, затем открываю командный файл CMD с помощью текстового редактора и изменяю все старые значения IF (ex: 58), сохраняю и закрываю и, наконец, запускаю CMD командный файл на оболочке.
Если есть способ установить маршрут только, зная MAC-адрес, не зависящий от IF - тогда проблема решена :) Решением может быть простая однострочная команда CMD (установить маршрут по MAC) или, может быть, сначала получить IF по MAC и установить маршрут по IF (установить маршрут по IF из MAC).
Любая помощь высоко ценится!