Как очистить таблицу маршрутов в окнах? - программирование
Подтвердить что ты не робот

Как очистить таблицу маршрутов в окнах?

Я пытаюсь написать программу, которая время от времени изменяет шлюз сети по умолчанию. Но кажется, что в каждой таблице есть кеши на таблице маршрутов, поэтому я не могу точно контролировать поведение сети. Могу ли я просто очистить таблицу маршрутов до этого процесса?

Например, если я сначала выполнил файл Iexplore.exe, а затем изменил шлюз по умолчанию на корейский vpn, IE по-прежнему пошел на шлюз по умолчанию amercia. Но если я сначала изменю шлюз по умолчанию, а затем запустим файл Iexplore.exe, он отправился в Корею.

Итак, как я могу очистить кеш таблицы маршрутов? Спасибо.

4b9b3361

Ответ 1

Из командной строки при запуске admin:

netsh interface ip delete destinationcache

Работает на Win7.

Ответ 2

маршрут -f вызывает урон. Поэтому нам нужно либо отключить правильные части таблицы маршрутизации, либо выяснить, как их перестроить.

Ответ 3

Вы можете открыть командную строку и выполнить

route print

и просмотрите текущую таблицу маршрутизации.

Вы можете изменить его

route add    d.d.d.d mask m.m.m.m g.g.g.g 
route delete d.d.d.d mask m.m.m.m g.g.g.g 
route change d.d.d.d mask m.m.m.m g.g.g.g

они, похоже, работают

Я запускаю ping d.d.d.d -t, изменяя маршрут, и он изменяется. (мой тест включал маршрутизацию на мертвый маршрут, и пинг остановился)

Ответ 4

В Microsoft Windows вы можете выполнить команду route -f, чтобы удалить текущий шлюз, проверьте маршрут /? для более продвинутого варианта, например, добавить/удалить и т.д. а также может написать пакет для добавления маршрута в определенное время, но если вам нужно удалить кеш IP, то у вас есть возможность использовать команду arp.