Поведение довольно запутанное. История о моем адаптере Ethernet на моем ретро-компьютерном ноутбуке ASUS (модель 2011 года). В настоящее время на нем установлены Windows 7 и Windows XP на двух жестких дисках соответственно. Проблемный адаптер Ethernet — RTL8168 (PCI, VEN_10EC, DEV_8168). В моем Windows 7 он отображается как «Realtek PCIe GbE Family Controller». Обратите внимание, что название указывает на то, что это адаптер Gigabit Ethernet, и он им на самом деле является, когда работает правильно (отмечено какПоведение АилиНормальное поведение).
Он вошел в какое-то ненормальное/неисправное состояние, в котором Ethernet был едва пригоден для использования - обнаружено два разных шаблона поведения, см. подробности ниже. Я использовал тот же метод, чтобы вывести его из такого состояния, что я называю "смягчением", поскольку это не похоже на нормальное решение.
В состоянии неисправности проблема сохраняется даже после перезагрузки в другую ОС. Похоже, что на сетевом адаптере есть некоторая энергонезависимая память, которая сохранила неверную конфигурацию.
Цель
- Если кто-нибудь может объяснить, почему это могло произойти.
- Найдите лучший способ либо полностью исправить ситуацию, чтобы она не повторилась, либо исправить ее более элегантно, когда она уже произошла.
Как возникла проблема?
Ранее я установил драйвер Ethernet, скачанный с сайта ASUS для этого ноутбука для Windows 7, версии 7.038.0113.2011. Он работал некорректно. «Работает некорректно» в контексте этого поста означает, что сетевой адаптерпо-видимому, случайноведет себя ОДНИМ из следующих способов:
- Поведение Б:Он показывает "сетевой кабель отключен", когда кабель подключен, и он не показывает это сообщение, а вместо этого пытается подключиться, когда кабель на самом деле отключен. Другими словами, статус "кабель подключен/отключен" меняется на противоположный. Конечно, таким образом я не могу подключиться к своей локальной сети. Мой светодиод коммутатора Gbps горит желтым (обычно это означает, что он не на скорости Gbps) для этого ноутбука, когда это происходит.
- Поведение С:Он правильно определяет кабель, но не может работать на скорости 1,0 Гбит/с; подключение к локальной сети Windows 7 показывает скорость 100 Мбит/с.. Мой светодиод переключателя Gbps горит желтым для этого ноутбука (это означает, что скорость не Gbps). Соединение также нестабильно и часто прерывается без причины на несколько секунд при передаче непрерывных данных, таких как большой файл, скопированный по SMB.
Затем я установил версию драйвера 7.118.0511.2018, скачанную с какого-то неофициального сайта архива драйверов Realtek (realtek.cz). Это волшебным образом решило проблему и вернуло его в нормальное состояние, а мой коммутатор Gbps загорелся зеленым светодиодом для этого ноутбука.
Смягчение, которое я нашел
Недавно я решил сделать двойную загрузку на своем старом ноутбуке с Windows XP. Я установил Windows XP, и, по-видимому, в нем не хватало многих драйверов, включая драйвер адаптера Ethernet, поскольку Windows XP была выпущена в 2001 году. При поиске драйверов я несколько раз переключался между Windows 7 и Windows XP, и с его адаптером Ethernet никогда не возникало никаких проблем (все еще в нормальном состоянии).
После установки найденных мной драйверов, включая драйвер сетевого адаптера Realtek версии 5.830.1204.2014, адаптер Ethernet в Windows XP показывает поведение B. Еще более неприятно то, что после перезагрузки в Windows 7 он все еще находится в поведении B в Windows 7.
После многочисленных попыток исправить проблему программными и аппаратными средствами я нашел следующее решение, которое гарантированно работает:
- Загрузите Windows 7.
- Запустите
setup.exe
, который идет с драйвером Windows 7 7.038.0113.2011, и запустите "repair". Он заменит драйвер (откатит его) на версию 7.038.0113.2011. В этот момент мой светодиодный индикатор коммутатора для этого ноутбука загорается зеленым, и он, кажется, начинает работать, а подключение к локальной сети Windows 7 показывает скорость 1,0 Гбит/с. Не перезагружаясь (он также не просит перезагрузки), сразу выполните следующий шаг. - Запустите
setup.exe
, который идет с драйвером Windows 7 7.118.0511.2018, и запустите "repair". Он заменит драйвер (обновит) на версию 7.118.0511.2018. В данный момент мой светодиодный индикатор коммутатора все еще горит зеленым для этого ноутбука, а подключение к локальной сети Windows 7 показывает скорость 1,0 Гбит/с. Сейчас он работает в обычном режиме. - Я могу перезагрузиться в Windows XP и обратно в Windows 7 по своему желанию, и обе системы могут показывать скорость локальной сети 1,0 Гбит/с, также протестированную в обычном режиме.
Что я пробовал, но не сработало
Что я пробовал делать в Поведении B или Поведении C, но не сработало:
- Просто перезагрузитесь в Windows 7 или Windows XP.
- Выключите питание ноутбука и включите его снова.
- В Windows 7 вручную удалите адаптер Ethernet из диспетчера устройств и запустите сканирование, чтобы снова обнаружить его.
- В Windows 7 вручную удалите адаптер Ethernet и установите флажок «удалить драйвер» в диспетчере устройств, а затем вручную установите драйвер 7.118.0511.2018.
Что еще я сделал, что привело его в неисправное состояние?
Что может разделить нормальное поведение на поведение B или поведение C:
- Перезагрузитесь в портативную USB-систему Linux с именем Porteus, чтобы выполнить операции, не имеющие никакого отношения к сети; затем перезагрузитесь обратно в Windows 7.
Мое предположение
Не уверен, имеет ли это смысл: сетевой адаптер (встроенный в материнскую плату ноутбука) может иметь некоторую энергонезависимую память, которая записывается, когда операционная система устанавливает драйвер для адаптера. Это произошло в Porteus, вероятно, потому, что такой портативный Linux всегда находит и настраивает оборудование при запуске.
Другой контекст
- Этот Ethernet-адаптер прекрасно работал в Windows 10 со встроенным драйвером Windows 10.
- Никогда не тестировал его ни в одной ОС Linux.