
Перерыл форумы, но не смог найти ту же проблему, поэтому вот вопрос:
Моя операционная система — Windows XP. В ней 2 сетевых адаптера.
1-й: IP -> 10.54.88.55, Подсеть -> 255.255.255.0, Шлюз по умолчанию -> 10.54.88.1
2-й: IP -> 10.54.88.151, Подсеть -> 255.255.252.0, Шлюз по умолчанию -> 10.54.88.90
Адаптеры подключены к физически разным сетям. Первый адаптер успешно взаимодействует с устройствами в своей сети. Однако второй не может связаться. Когда я отключаю кабель Ethernet от первого адаптера, второй начинает общаться. После повторного подключения первый начинает общаться, а второй останавливается.
Первое, что я попробовал, это дать более высокий приоритет второму адаптеру, но это ничего не изменило. Первый адаптер общался, второй — нет.
Когда я добавил 255.255.255.0 в список масок подсети второго адаптера, он начал обмениваться данными, но первый адаптер остановился.
Затем я попробовал изменить определения в таблице маршрутизации. Я добавил запись маршрута с помощью этой команды:
"маршрут добавить 10.54.88.92 маска 255.255.255.255 10.54.88.151 метрика 1 если 0x3"
Это не работало, пока оба адаптера были подключены. После отключения кабеля Ethernet от первого адаптера и повторного запуска команды все заработало. Оба адаптера успешно взаимодействовали с соответствующими сетями.
Я сделал запись статической с помощью опции "-p" и перезапустил машину. После перезапуска ситуация вернулась к началу. Первый адаптер взаимодействовал, а второй - нет.
Есть кое-что, что я должен упомянуть. Когда я распечатал таблицу маршрутизации, интерфейс второго адаптера иногда был 0x3, иногда 0x20003. Это может быть подсказкой о проблеме.
Я знаю, что самое простое решение — изменить IP-зону одной из сетей, но, к сожалению, сейчас это не вариант. Я ищу решение, которое можно применить через настройки Windows. Если это невозможно, то мой последний вариант — использовать брандмауэр для второй сети.
Я полный новичок в сетевых технологиях, поэтому мог упустить что-то очевидное. Есть идеи?
решение1
Я уже немного устал, так что перепроверьте это еще раз, но: Я читаю это как:
Сетевой адаптер №1:
Сеть: 10.54.88.0 - 10.54.88.255 (256 IP-адресов).
Из этих 256 два используются для сети (10.54.88.0) и для вещания (10.54.88.255).
Один из них используется шлюзом по умолчанию (10.54.88.1).
Один из них находится в вашем сетевом адаптере (10.54.88.55).
Теперь перейдем ко второй конфигурации:
Использует эту сетевую маску: 255.255.252.0
Побитно эта сетевая маска равна 11111111.11111111.11111100.00000000
Как вы можете видеть по трем нулям в конце, вы можете иметь до 1024 IP-адресов. (2 10 ) и
диапазон сети будет от 10.54.88.0 до 10.54.91.255.
Маршрут add -host был бы более конкретным, и, насколько я понимаю, более конкретный маршрут должен иметь приоритет.
[Изменить] Эх, только route add
в Windows. route add -host
или -net
в остальном мире).
Я оставлю это здесь на несколько часов, чтобы вы могли прочитать, хотя после исправлений это больше не будет хорошим ответом, и я намерен его удалить.
решение2
Шлюзы действительно могут быть привязаны к определенным сетевым картам. Я могу настроить две отдельные сети у себя дома и подключить один компьютер к обеим (как в ситуации автора вопроса), если я вручную настрою конфигурацию сети, каждая сетевая карта должна иметь шлюз по умолчанию, специфичный для сети, к которой подключена сетевая карта.
Так, например:
Сеть 1: 192.168.0.x Шлюз по умолчанию обычно будет 192.168.0.1 подсеть 255.255.255.0 Сеть 2: 192.168.137.x Шлюз по умолчанию обычно будет 192.168.137.1 подсеть 255.255.255.0
глядя на вашу конфигурацию, возможно, что Windows что-то путает. 10.54.88.x (забудьте на мгновение о подсети)
Две сетевые карты, использующие одни и те же первые 3 октета (xxx) IP-адресов IP-сети, идентичны, но каждая сетевая карта настроена с разным шлюзом по умолчанию.
Если вы пытаетесь заставить одну сеть видеть и общаться с другой, объедините их все вместе, удалите второй шлюз (или отключите его DHCP-сервер) и сделайте так, чтобы первый шлюз назначал все IP-адреса через свой протокол DHCP. Если вы отключите только протокол DHCP второго шлюзового устройства, убедитесь, что вы подключаете его к своей основной сети через сетевой порт, а НЕ через его интернет-порт. Все подсети должны быть идентичны в этой конфигурации.
Я приведу пример, используя собственную настройку сети.
Маршрутизатор 1: IP-адрес: 192.168.1.1 Маска подсети: 255.255.255.0 Сетевой шлюз: Да DHCP включен: Да Обслуживание Интернета: Да (обслуживается интернет-портом шлюза) DHCP-адреса: 192.168.1.5-200 (допустимо 195 устройств)
Маршрутизатор 2: IP-адрес: 192.168.1.2 Маска подсети: 255.255.255.0 Сетевой шлюз: нет DHCP включен: нет Обслуживание Интернета: нет (подключено к первому маршрутизатору через стандартный сетевой порт от маршрутизатора 1 к стандартному сетевому порту на маршрутизаторе 2) DHCP-адреса: N/A
Любое устройство, подключенное к любому маршрутизатору в этой конфигурации, может видеть любые другие устройства, которые должны быть видимыми. Все устройства могут получать интернет от основного шлюза.
ПРИМЕЧАНИЕ: Если вы просто пытаетесь использовать компьютер, чтобы разрешить второй сети иметь интернет, вы можете использовать общий доступ к подключению к Интернету. Все сетевые устройства смогут видеть этот компьютер, но устройства из сети 1 не смогут видеть или делиться с устройствами в сети 2.