2

Я использую старый компьютер в качестве домашнего сервера / брандмауэра, используя дистрибутив на основе Linux (Mandriva). Первоначально у него было два сетевых адаптера: eth0 - адаптер материнской платы, а eth1 - сетевая карта PCI 10/100. eth0 был подключен к внутреннему коммутатору, к которому подключены другие устройства, а eth1 был подключен к маршрутизатору интернет-приставки.

С течением времени и появлением новых применений я добавил две гигабитные сетевые карты PCI (DLink DGE-528T), которые, таким образом, стали eth2 и eth3 , используемые для той же функциональности, что и карта, которую они заменяют. То есть eth2 подключен к внутреннему коммутатору, а eth3 подключен к маршрутизатору.

Все работало нормально до тех пор, пока несколько недель назад я не заметил, что потерял соединение с eth3 и, глядя на саму карту, кабель больше не будет «щелкать» при подключении к штекеру. Как выяснилось, были некоторые злоупотребления в кабелях, которые погнули разъем RJ45 и сделали его ненадежным.

Итак, я решил заменить eth3 новой гигабитной картой (TP-LINK TG-3269), которая, кажется, не имеет такого хрупкого разъема. Таким образом, эта карта называется eth4 и eth3 была полностью удалена с сервера.

Тем не менее, я не могу заставить эту новую карту работать с маршрутизатором, светодиоды сзади никогда не включаются при подключении к ней. И, конечно же, ifplugd и ethtool указывают, что связь не установлена. В качестве временного обходного пути я снова использую eth1 так что сервер все еще продолжает выполнять свое предназначение, хотя и в более раннем режиме.

Я думал, что карта была "тостом", но я попробовал несколько вещей и получил некоторые странные результаты, подытоженные здесь:

  • Подключите eth4 к внутреннему коммутатору: светодиоды включены, соединение установлено на 1000 Мб
  • Подключите eth4 к eth0: светодиоды включены, соединение установлено на 100 МБ
  • Подключите eth2 к маршрутизатору: светодиоды включены, соединение установлено на 1000Mb

Таким образом, кажется, что маршрутизатор не хочет общаться с моей картой eth4 по причине, которую я не могу объяснить.

Посмотрев на различные потоки, несколько похожие на мою проблему, я обнаружил инструмент mii-diag и сначала запустил его без кабеля, а затем с подключенным кабелем маршрутизатора. Вот результаты:

[obones@server ~]$ sudo mii-diag eth4
Basic registers of MII PHY #32:  1000 7949 001c c913 0de1 0000 0004 2001.
 Basic mode control register 0x1000: Auto-negotiation enabled.
 Basic mode status register 0x7949 ... 7949.
   Link status: not established.
   End of basic transceiver information.

[obones@server ~]$ sudo mii-diag eth4
Basic registers of MII PHY #32:  1000 7949 001c c913 0de1 c5e1 000f 2001.
 The autonegotiated capability is 01e0.
The autonegotiated media type is 100baseTx-FD.
 Basic mode control register 0x1000: Auto-negotiation enabled.
 Basic mode status register 0x7949 ... 7949.
   Link status: not established.
 Your link partner advertised c5e1: Flow-control 100baseTx-FD 100baseTx 10baseT-FD 10baseT, w/ 802.3X flow control.
   End of basic transceiver information.

Я знаю, что mii-diag не знает гигабит, но мне кажется интересным то, что во втором случае он обнаруживает, что существует партнер по связи, и, тем не менее, ссылка не установлена.

Что может быть причиной этого? Что я должен попробовать дальше?


По мере необходимости, вот несколько дополнительных деталей.

Маршрутизатор определенно способен гигабитно, и он работал на этой скорости с eth3 до выхода из строя разъема. При подключении к eth2 он работал также на гигабитной скорости.

dmesg -T | grep eth4 ничего не выводит

Вот вывод из lspci:

00:0a.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet [10ec:8169] (rev 10)
    Subsystem: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet [10ec:8169]
00:0b.0 Ethernet controller [0200]: D-Link System Inc DGE-528T Gigabit Ethernet Adapter [1186:4300] (rev 10)
    Subsystem: D-Link System Inc DGE-528T Gigabit Ethernet Adapter [1186:4300]
00:0d.0 Ethernet controller [0200]: Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 [8086:1229] (rev 08)
00:13.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ [10ec:8139] (rev 10)

И тот, что от lshw:

  *-network:0
       description: Ethernet interface
       product: RTL-8169 Gigabit Ethernet
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: a
       bus info: pci@0000:00:0a.0
       logical name: eth4
       version: 10
       serial: 14:cc:20:05:38:22
       size: 10MB/s
       capacity: 1GB/s
       width: 32 bits
       clock: 66MHz
       capabilities: pm bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half latency=64 link=no maxlatency=64 mingnt=32 multicast=yes port=MII speed=10MB/s
       resources: irq:18 ioport:a000(size=256) memory:f7109000-f71090ff memory:c0180000-c019ffff(prefetchable)
  *-network:1
       description: Ethernet interface
       product: DGE-528T Gigabit Ethernet Adapter
       vendor: D-Link System Inc
       physical id: b
       bus info: pci@0000:00:0b.0
       logical name: eth2
       version: 10
       serial: 1c:7e:e5:26:54:a0
       size: 1GB/s
       capacity: 1GB/s
       width: 32 bits
       clock: 66MHz
       capabilities: pm bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full ip=10.10.10.254 latency=64 link=yes maxlatency=64 mingnt=32 multicast=yes port=MII speed=1GB/s
       resources: irq:19 ioport:a400(size=256) memory:f710b000-f710b0ff memory:c01a0000-c01bffff(prefetchable)
  *-network:2
       description: Ethernet interface
       product: 82557/8/9/0/1 Ethernet Pro 100
       vendor: Intel Corporation
       physical id: d
       bus info: pci@0000:00:0d.0
       logical name: eth1
       version: 08
       serial: 00:90:27:ca:ba:e8
       size: 100MB/s
       capacity: 100MB/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e100 driverversion=3.5.24-k2-NAPI duplex=full firmware=N/A ip=192.168.1.253 latency=64 link=yes maxlatency=56 mingnt=8 multicast=yes port=MII speed=100MB/s
       resources: irq:17 memory:f710a000-f710afff ioport:ac00(size=64) memory:f7000000-f70fffff memory:c0000000-c00fffff(prefetchable)
  *-network:3
       description: Ethernet interface
       product: RTL-8139/8139C/8139C+
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 13
       bus info: pci@0000:00:13.0
       logical name: eth0
       version: 10
       serial: 00:14:85:c0:ea:2b
       size: 10MB/s
       capacity: 100MB/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=8139too driverversion=0.9.28 duplex=half ip=10.10.10.250 latency=64 link=no maxlatency=64 mingnt=32 multicast=yes port=MII speed=10MB/s
       resources: irq:18 ioport:e000(size=256) memory:f710d000-f710d0ff

Считаете ли вы, что форсирование карты eth4 на гигабит без автонегации решает эту проблему? Если я прав, команда будет такой:

ethtool -s eth4 duplex full speed 1000 autoneg off

Я попробую сегодня вечером, но почему это не работает с самого начала?

1 ответ1

0

Ну, теперь я знаю, почему eth4 не установит связь, и она пришла ко мне после того, как я немного поковырялся с кабелями. Следует знать, что даже если он дома, я использую патч-бар для отправки различных соединений. Это означает, что сервер подключается к маршрутизатору по следующей схеме:

server <--> cable <--> plug <--> wall <--> plug <--> patch bay <--> plug <--> router

В своем первоначальном сообщении я сказал, что eth2 будет подключаться к маршрутизатору в 1G, и это было правильно в то время.

Но я попытался снова на этой неделе, и это больше не происходило, что сразу заставило меня понять, что первоначальные проблемы с eth3 были после некоторого злоупотребления кабелем. И, конечно же, использование другого разъема на стене для подключения к отсеку патча позволило eth4 правильно подключиться на 1G к маршрутизатору.

Итак, в конце концов, это связано с аппаратным обеспечением, а не с тем аппаратным обеспечением, на которое я рассчитывал.

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

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