Cabo de rede conectado não é detectado (possivelmente relacionado a ethernet verde?)

1

Acabei de comprar um Roteador sem fio D-Link DIR-652 , e agora quero conectar um computador Shuttle XS25GT V2 usando um cabo ethernet Cat 5e de 1 metro. O Shuttle é executado no Ubuntu 12.10 e possui uma placa Ethernet JMC250.

Quando eu conecto o cabo de rede, o Shuttle não detecta a conexão e, portanto, não consegue se comunicar com a rede. A saída de ethtool é exatamente igual a se nenhum cabo de rede foi conectado:

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

Isso não muda usando um cabo de rede diferente (1m, 3m, 15m). Estranhamente, quando eu conecto um computador diferente ao roteador usando o mesmo cabo de rede, tudo funciona bem, e quando eu conecto o Shuttle a um roteador diferente (de um modelo diferente) usando o mesmo cabo de rede, ele também funciona. >

Descobri que desativar a negociação automática resolve o problema. Depois de executar ethtool -s p33p1 autoneg off speed 100 duplex full , esta é a saída:

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

No entanto, o Gigabit ethernet requer negociação automática, portanto, isso só funcionará com velocidade reduzida.

Eu suspeito que a funcionalidade “Green Ethernet” do roteador pode não detectar a conexão do cabo e, portanto, não ligar a energia da porta ethernet. Parece não haver nenhuma maneira de desativar a Ethernet Verde no menu de configuração do roteador.

Alguém tem uma ideia de como eu poderia corrigir esse problema? Tentei informar manualmente a placa de rede para negociar uma conexão usando ethtool -r , mas isso não fez nada.

    
por cdauth 15.01.2013 / 20:56

2 respostas

0

Isso é o que descobri e como resolvi o problema por enquanto.

Primeiro de tudo, eu vi vários relatórios sobre o mesmo problema na internet, este instância. A maioria das pessoas parece ter resolvido o problema atualizando o driver jme. Eu encontrei versões mais recentes do driver JME em ftp://driver.jmicron.com.tw/Ethernet/Linux/ e link . O mais novo driver do repositório Git (bp-1.0.8.9-noasd) não muda nada sobre o meu problema.

A versão bp-1.0.8.5 do site JMicron (estranhamente, as versões 1.0.8.3 a 1.0.8.5 não estão disponíveis no repositório Git) fornece uma solução para o problema que o torna um pouco menos irritante: é o mesmo como 1.0.8.4 (foi até carregado no mesmo dia), exceto que adiciona o parâmetro do módulo delay_time , o que faz com que a placa de rede caia automaticamente para 100 MBit / s depois de não conseguir conectar por vários segundos (por padrão 11 ). Com isso, a detecção de link funciona, portanto, ele me poupa executando ethtool manualmente, mas a conexão é de apenas 100 MBit / s.

Eu me livrei do roteador D-Link DIR-652 e comprei um TP -Link TL-WDR3600 em vez disso. Com isso, inicialmente tive exatamente o mesmo problema. Em seguida, instalei o firmware DD-WRT e, de repente, o problema desapareceu.

    
por 28.01.2013 / 00:16
1

Estou disposto a apostar que o seu roteador está aguardando para saber que tipo de link o que está conectado a ele será executado para ligar a porta e ver que o seu Shuttle está esperando para saber a velocidade que deve run at continuará aguardando porque a porta está desligada!

Ainda não li o manual, por isso não posso informá-lo como fazê-lo, mas veja se você pode desativar o Green Networking para a porta à qual o seu Shuttle está conectado (e deixar a autonegociação no ) e veja o que acontece.

O outro pensamento é fazer com que o seu Shuttle force um pacote de dados de alguma forma (ping manual para 127.0.0.1, por exemplo) para apresentar algum tipo de atividade elétrica na porta.

Após ler o site da D-Link, a Green Ethernet parece ser principalmente marketing. Eu digo principalmente porque há potencial para economizar energia, mas algumas das características mencionadas já são usadas em outras tecnologias. Então, talvez o "desligar o porto para economizar energia" seja uma boa ideia em teoria, mas acho que faz algumas suposições ruins sobre como alguns outros dispositivos funcionam e é mais uma dor do que prática.

GL

    
por 15.01.2013 / 21:46