5

У меня есть компьютер (Windows XP), подключенный к двум сетевым интерфейсам, эти два интерфейса подключены к разным сетям, и они настроены на получение конфигурации DHCP, что означает, что оба они предоставят компьютеру шлюз по умолчанию.
Компьютер иногда ведет себя корректно и отправляет пакеты на нужные интерфейсы, иногда нет.
Есть ли логическое объяснение тому, как компьютеры ведут себя в таких ситуациях?
Есть ли верный способ сохранить эти оба интерфейса настроенными так и вести себя правильно?

4 ответа4

7

Если Windows имеет несколько интерфейсов, подключенных к нескольким сетям, использующим DHCP, она устанавливает шлюзы по умолчанию для всех этих интерфейсов.

По умолчанию Windows устанавливает одинаковую метрику шлюзов по умолчанию, что фактически приводит к случайному выбору шлюза по умолчанию.

Если вы хотите, чтобы Windows всегда выбирала определенный шлюз, вы можете изменить метрики интерфейса для конфигурации интерфейсов, которые вы не хотите использовать:

  1. Перейдите в свойства вашего сетевого адаптера
  2. Выберите интернет-протокол v4.
  3. Нажмите кнопку «Дополнительно» на вкладке «Общие».
  4. Снимите флажок Automatic metric .
  5. Введите число больше 10 в поле Interface metric .

Автоматическая метрика по умолчанию для интерфейсов - 10. Чем ниже показатель, тем выше предпочтение его использования. Таким образом, вы должны ввести показатель выше 10 для интерфейсов, которые вы не хотите использовать.

РЕДАКТИРОВАТЬ: Эти инструкции для Windows 7, XP может отличаться. Вы не должны использовать XP в любом случае.

2
  1. Ваш компьютер не будет применять конфигурацию DHCP одновременно с DHCP-серверами.
  2. Компьютер Windows может иметь два шлюза по умолчанию. Вы не можете установить второй шлюз по умолчанию в GUI, но вы можете добавить его в командной строке с помощью команды route . В этом случае Windows будет использовать путь с более низким значением метрики.

Вы можете проверить, есть ли у вас два шлюза по умолчанию с командой route print . Шлюз по умолчанию там, где и сетевой адрес, и маска сети назначены 0.0.0.0

0

Он либо использует первый шлюз по умолчанию, который решает использовать, иногда случайным образом и со странными результатами, либо теряет возможность подключения вообще.

В Windows это полная неправильная конфигурация и вызывает много горя.

Вы запускаете сценарий, используя route delete для удаления шлюзов по умолчанию (0.0.0.0) из всех, кроме желаемого интерфейса, который будет передавать трафик в неизвестные подсети.

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

0

Для маршрутов, отличных от шлюза по умолчанию, вы должны быть очень привязаны к сети. IE добавляет постоянный маршрут для конкретной подсети, которую вы пытаетесь подключить через этот интерфейс.

так что если вы делаете печать маршрута, и у вас есть постоянные маршруты, которые читаются как

0.0.0.0 0.0.0.0 192.168.1.1 по умолчанию 0.0.0.0 0.0.0.0 10.0.0.1 по умолчанию

тогда вы бы изменили это, чтобы быть больше похожим

0.0.0.0 0.0.0.0 192.168.1.1 по умолчанию 10.0.0.0 255.255.255.0 10.0.0.1 3 10.0.1.0 255.255.255.0 10.0.0.1 3

и т. д.

шлюз по умолчанию должен быть ограничен подключением, которое вы используете для своего интернета на большинстве компьютеров, но примените его, однако вам нужно, чтобы оно работало.

С другой стороны, есть способы заставить Windows вести себя должным образом с RIP, но я не использую RIP ни в одной из моих сетей, поэтому я не тот, кто объясняет, как он работает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .