1

Я только что приобрел беспроводной маршрутизатор D-Link DIR-652 и теперь хочу подключить компьютер Shuttle XS25GT V2 с помощью 1-метрового кабеля Ethernet Cat 5e. Shuttle работает под управлением Ubuntu 12.10 и имеет карту Ethernet JMC250.

Когда я подключаю сетевой кабель, Shuttle не обнаруживает соединение и, следовательно, не может связаться с сетью. Выходные данные ethtool точно такие же, как если бы сетевой кабель не был подключен:

root@shuttle:~# ethtool p33p1
Settings for p33p1:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Speed: 10Mb/s
        Duplex: Half
        Port: MII
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pg
        Wake-on: g
        Current message level: 0x000020c6 (8390)
                               probe link rx_err tx_err hw
        Link detected: no

Это не меняется при использовании другого сетевого кабеля (1м, 3м, 15м). Странно, когда я подключаю другой компьютер к маршрутизатору с помощью того же сетевого кабеля, все работает нормально, а когда я подключаю Shuttle к другому маршрутизатору (другой модели) с помощью того же сетевого кабеля, он также работает.

Я обнаружил, что отключение автосогласования решает проблему. После запуска ethtool -s p33p1 autoneg off speed 100 duplex full , это выводится:

root@shuttle:~# ethtool p33p1
Settings for p33p1:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  Not reported
        Advertised pause frame use: No
        Advertised auto-negotiation: No
        Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: off
        Supports Wake-on: pg
        Wake-on: g
        Current message level: 0x000020c6 (8390)
                               probe link rx_err tx_err hw
        Link detected: yes

Однако для Gigabit Ethernet требуется автоматическое согласование, поэтому это будет работать только с пониженной скоростью.

Я подозреваю, что функциональность маршрутизатора «Зеленый Ethernet» может не определять подключение кабеля и, следовательно, не включать питание порта Ethernet. Похоже, что нет способа отключить Green Ethernet в меню конфигурации маршрутизатора.

У кого-нибудь есть идеи, как можно решить эту проблему? Я пытался вручную указать сетевой карте, что нужно договориться о соединении, используя ethtool -r , но ничего не сделал.

2 ответа2

1

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

Я еще не читал руководство, поэтому не могу рассказать вам, как это сделать, но посмотрите, можете ли вы отключить Зеленую сеть для одного порта, к которому подключен ваш Shuttle (и оставить автосогласование включенным), и посмотреть что просходит.

Другая мысль состоит в том, чтобы заставить ваш Shuttle каким-то образом принудительно заставить пакет данных (например, вручную выполнить ping до 127.0.0.1), чтобы представить какую-то электрическую активность на порту.

Прочитав сайт D-Link, Green Ethernet, по-видимому, в основном занимается маркетингом. Я говорю в основном потому, что есть потенциал для экономии энергии, но некоторые из упомянутых ими функций уже используются в других технологиях. Таким образом, возможно, "отключение порта для экономии энергии" является хорошей идеей в теории, но я думаю, что оно делает некоторые неверные предположения о том, как работают некоторые другие устройства, и является скорее болезненным, чем практическим.

GL

0

Это то, что я узнал, и как я решил проблему на данный момент.

Прежде всего, я наткнулся на многочисленные сообщения об одной и той же проблеме в Интернете, например, этот. Кажется, что большинство людей решили проблему путем обновления драйвера jme. Я нашел новые версии драйвера JME на ftp://driver.jmicron.com.tw/Ethernet/Linux/ и http://bbs.cooldavid.org/git/?p=jme.git;a=summary. Новейший драйвер из репозитория Git (bp-1.0.8.9-noasd) ничего не меняет в моей проблеме.

Версия bp-1.0.8.5 с веб-сайта JMicron (как ни странно, версии 1.0.8.3 - 1.0.8.5 недоступны в репозитории Git) предоставляет обходной путь для этой проблемы, который делает его немного менее раздражающим: он такой же, как 1.0. 8.4 (он даже был загружен в тот же день), за исключением того, что он добавляет параметр модуля delay_time , который заставляет сетевую карту автоматически снижаться до 100 Мбит / с после того, как она не может подключиться в течение нескольких секунд (по умолчанию 11). При этом работает обнаружение ссылок, так что это помогает мне запускать ethtool вручную, но скорость соединения составляет всего 100 Мбит / с.

Я избавился от маршрутизатора D-Link DIR-652 и вместо этого купил TP-Link TL-WDR3600 . С этим у меня изначально была точно такая же проблема. Затем я установил прошивку DD-WRT , и проблема внезапно исчезла.

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