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

В этой статье описаны проблемы с подключением, возникающие при использовании нескольких шлюзов по умолчанию в параметрах конфигурации TCP/IP.

Применимо к: Windows 2000
Исходный номер базы знаний: 159168

Сводка

Если в параметрах конфигурации TCP/IP на компьютере Windows NT используется несколько шлюзов по умолчанию, подключение к компьютерам в удаленных сетях может быть потеряно. На компьютерах с несколькими адресами, подключенных к несвязанным сетям, статические маршруты могут быть добавлены в таблицу маршрутизации для подключения к удаленным сетям.

Дополнительная информация

Windows NT компьютеры можно настроить с несколькими шлюзами по умолчанию. При обнаружении неработающих шлюзов tcp он может направить IP-адрес для переключения шлюзов по умолчанию на следующий шлюз в списке резервных копий. Это может произойти при наличии нескольких шлюзов, настроенных для одного сетевого адаптера, или при указании разных адресов шлюза по умолчанию на разных сетевых картах на многосетевых компьютерах. Переключение активируется, если TCP пытается половину tcpMaxDataRetransmissions отправить пакет через текущий шлюз по умолчанию.

После переключения весь IP-трафик, исходящий от любого сетевого адаптера на этом компьютере, предназначенного для удаленных сетей, будет отправляться в выбранный шлюз. В несвязанных сетях это может привести к потере подключения и последующему завершению активных сеансов с компьютерами в удаленных сетях, подключенных через первый шлюз. Это связано с тем, что выбранный в данный момент шлюз может не знать о других маршрутах, управляемых первым шлюзом, если эти маршрутизаторы не обмениваются сведениями о маршрутизации друг с другом.

Если коммутируемый шлюз недоступен или неактивен в сети, он теряет подключение ко всем удаленным сайтам. На этом этапе при подключении к этому компьютеру из удаленной сети не будет получен положительный ответ. Аналогичным образом любая исходящая связь с удаленным узлом с этого компьютера приведет к ошибке время ожидания запроса. Это поведение является конструктивным и соответствует спецификациям TCP/IP.

На следующих иллюстрациях описаны ситуации, в которых используется несколько шлюзов.

Рассмотрим компьютер с двумя сетевыми картами Netcard1 и Netcard2, а также следующими IP-адресами и шлюзами по умолчанию:

Netcard1:
IP-адрес: 11.100.1.1
Маска: 255.255.0.0
Шлюз по умолчанию: 11.100.0.1 11.100.0.2

Netcard2:
IP-адрес: 11.200.1.1
Маска: 255.255.0.0
Шлюз по умолчанию: 11.200.0.1

Если вы хотите отправить Telnet на рабочую станцию с IP-адресом 130.20.20.100, ip-датаграммы будут направляться через шлюз 11.100.0.1. Если 11.100.0.1 обнаруживается как недоступный, IP-адрес переключается на второй шлюз 11.100.0.2. При сбое этого шлюза используйте 11.200.0.1 и т. д. Это относится только к трафику TCP, и переключение шлюзов происходит на основе механизма, описанного выше. Сетевой трафик службы сеансов Telnet, FTP и NetBIOS использует TCP для сетевого взаимодействия.

Также учтите, где две сети, подключенные к Netcard1 и Netcard2, не связаны (то есть не связаны друг с другом через любой другой маршрутизатор). Если есть сеть (скажем, 22.101.x.x), доступная только через Netcard2, ip-датаграммы для этой сети по-прежнему будут маршрутизироваться через 11.100.0.1, так как это основной шлюз по умолчанию. Чтобы маршрутизировать IP-датаграммы, предназначенные для сети 22.101.x.x.x-11.200.0.1, статический маршрут необходимо добавить в таблицу маршрутизации с помощью программы ROUTE. Чтобы добавить маршрут, введите следующую команду:

route add 22.101.0.0 MASK 255.255.0.0 11.200.0.1  

Другим возможным решением для приведенного выше сценария является выполнение многопротокольной маршрутизации на компьютере с несколькими адресами Windows NT, чтобы он смог обмениваться сведениями о маршрутизации с другими маршрутизаторами в сети с протоколом маршрутизации. Маршрутизация по нескольким протоколам доступна в Windows NT 3.51 с пакетом обновления 2 (SP2) или более поздней версии.