На днях нужно было воспользоваться статической маршрутизацией на компьютере под Windows 7 с двумя сетевыми картами.

Первая сетевая карта получает IP настройки (IP адрес, шлюз по умолчанию, днс  и пр.) от DHCP сервера.

На второй сетевой карте IP задан вручную и шлюз по умолчанию не указан.

Мне необходимо было прописать на определенную сеть маршрут через вторую карту.

Однако, когда я прописал новый маршрут командой: «route add …», пакеты отправляемые в сеть назначения всё равно шли через основной шлюз (получаемый по DHCP), через первую сетевую карту, а не через вторую.

Посмотрев таблицу маршрутизации, командой «route print«, оказалось, что метрика у маршрута по умолчанию (основной шлюз) стоит меньше, чем у моего статического маршрута. Следовательно пакеты отправлялись на основной шлюз через первый интерфейс.

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

Оказывается по умолчанию в Windows 7 (в XP и Vista не проверял, не знаю) метрика интерфейса назначается автоматически, и к указанной явно метрике, при создании маршрута (командой  «route add …») прибавляется это автоматическое число.

 

Что бы отключить автоматическое назначение метрики на интерфейсе, и задать своё значение, нужно:

— Зайти в свойства сетевого подключения (интерфейс на котором нужно отключить автоматическое назначение метрики)

Свойства сетевого подключения

— На вкладке «Сеть» выбрать «Протокол Интернета 4 (TCP/IPv4)» и нажать на кнопку «Свойства»

свойства ipv4

— В появившемся окне нажать кнопку «Дополнительно…»

Дополнительные свойства ipv4

 — Во вкладке «Параметры IP» снять галочку с «Автоматическое назначение метрики». А в поле «Метрика интерфейса» ввести своё число (например 2), тогда к заданной метрике в команде «route add…» прибавится только двойка.

Отключить автоматическое назначение метрики

 

После выполнения вышеописанных действий, станет возможным задать статический маршрут с метрикой ниже метрики основного шлюза (у меня метрика на основном шлюзе равна 10).

 

4 комментария: Windows 7 и метрика маршрутов

  • Yanis говорит:

    Спасибо! то что нужно!

  • Алексей говорит:

    Вы должны были явно указать интерфейс при создании маршрута, а не извращаться с метриками. Как-то вот так route -p add 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 1 if 0x20003

  • Артём говорит:

    ОГРОМНЕЙШЕЕ СПАСИБИЩЕ!!!
    Реально помогло когда всё сделал так как написано!!!

  • Aleksandr говорит:

    Увы, оперирование крыжиками в Windows 7 бесполезно в случае PPP соединений, например, если вы настраиваете VPN посредством L2TP. При этом винда тасует интерфейсы как хоет и присваивает эзернетовским интерфейсам гигатские метрики. Так что правильнее и надежнее делать ув написал Алексей — прописать маршрут в таблицу маршрутизации

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *