CodingBox Q&A Ask question

Memasang SFP di port 24-28 DGS-1210-28 dengan OpenWrt tidak mengubah apa pun, copper tetap pegang link

Asked Active Viewed 96 AI translation from English
3

Switch homelab: D-Link DGS-1210-28 revisi F1 yang saya flash dengan OpenWrt supaya tidak usah berjuang lagi dengan web UI bawaannya. Semuanya jalan normal kecuali empat port terakhir, yang merupakan port combo copper/fiber.

  • Switch: D-Link DGS-1210-28 rev F1
  • Firmware: OpenWrt 21.02.0-rc3 (r16172-2aba3e9784)
  • Port 24-28: combo RJ45/SFP di belakang PHY RTL8214FC (sisanya ada di RTL8218B/RTL8218D)
  • Modul: optik 1G generik yang link normal di switch lain

Apa pun yang saya pasang di cage, port-nya tetap berperilaku seperti port RJ45 biasa. Sisi copper tetap terpilih dan sisi fiber tidak pernah naik:

# ethtool lan28
        Supported ports: [ TP MII FIBRE ]
        Port: MII
        Link detected: yes

Boot log memang menunjukkan port-port ini terikat ke driver PHY combo RTL8214FC, dan driver itu seharusnya sudah tahu soal SFP, jadi dari sisi hardware terlihat benar.

Sudah dicoba:

  • lepas-pasang ulang modulnya, lalu coba modul kedua
  • cabut kabel copper dari port sepenuhnya, siapa tahu ini soal prioritas - port tetap di copper
  • pindahkan modulnya ke switch lain, di situ link normal

Dengan firmware vendor terpasang, switch ini dulu otomatis mengubah port ke fiber begitu modul dipasang. Apakah ada cara memilih medium di build ini, atau port combo-nya memang belum bisa dipakai?

Comments 3

Accepted answer

Tidak ada yang rusak, cuma memang tidak ada automatic medium selection di target realtek ini. RTL8214FC itu PHY combo dengan separuh copper dan separuh fiber, dan di firmware ini dia tetap di sisi MII/copper sampai ada yang bilang sebaliknya. Memasang modul tidak berarti apa-apa buat driver, karena memang belum ada yang mengimplementasikan switchover-nya.

Kamu pilih medium-nya sendiri dari userspace:

ethtool -s lan28 port fibre

Setelah itu cage-nya jadi medium aktif di port itu dan optiknya naik. Untuk mengembalikan port ke sisi RJ45:

ethtool -s lan28 port tp

Call yang sama untuk tiap port combo lainnya, satu per satu.

Yang kamu ingat dari firmware bawaan itu auto-select terbatas: dia lihat kedua sisi dan copper menang setiap kali keduanya punya link. Makanya ini terasa seperti regresi, padahal bukan - fungsinya memang belum pernah ditulis untuk target ini.

Dua catatan. Ini CLI saja, tidak muncul di LuCI, dan orang-orang sudah lama minta itu. Dan tidak ada apa pun di build ini yang bisa memilihkan medium untuk kamu, jadi kalau kamu mau fiber setiap boot, pastikan call itu benar-benar jalan.

7 South KoreanetrunnerKR Show original (English) AI translation

Itu dia, terima kasih. Satu call dan port-nya langsung pindah:

# ethtool -s lan28 port fibre
# ethtool lan28 | grep Port:
        Port: FIBRE

Optiknya langsung naik dan sisi RJ45 diam. Saya lakukan hal yang sama untuk tiga port combo lainnya dan taruh keempat call-nya di startup script, karena seperti katamu tidak ada yang mengingat pilihannya.

Sedikit menjengkelkan kalau toggle per-port harus hidup di shell script, tapi port-nya sekarang bisa dipakai, dan itu yang saya butuhkan.

4 VietnamtxhawkVN Show original (English) AI translation

Perlu diketahui sebelum kamu membangun monitoring di atas port-port itu: link state di sisi SFP board-board ini tidak selalu bisa dipercaya. Di DGS-1210-10P, device tree-nya sama sekali tidak punya sfp node, jadi kernel tidak pernah dapat module-present atau loss-of-signal dan MAC melaporkan carrier permanen - ip link mencetak <BROADCAST,MULTICAST,UP,LOWER_UP> untuk lan9 dengan cage kosong, dan itu tetap up meski GLC-T-CO copper SFP terpasang tanpa patch cord sama sekali. DGS-1210-10MP tidak berperilaku begitu, karena DTS-nya sudah punya node-node itu.

Perbaikannya di situ adalah perubahan device tree yang dicontoh dari 10MP dan dari Zyxel GS1900-10HP: satu bus i2c-gpio per cage, satu sfp node per cage dengan los-gpio, mod-def0-gpio, dan tx-disable-gpio, sfp = <&sfp0> dirujuk dari port-nya, phy-mode = "1000base-x" dan managed = "in-band-status". Dengan itu semua terpasang, cage-nya di-probe lewat I2C dan carrier-nya akhirnya benar-benar mengikuti sinyal optik yang sebenarnya.

Di image bawaan dari periode itu perilakunya masih bertahan, jadi kalau ada sesuatu punya kamu yang mengawasi carrier di port combo atau SFP, pastikan itu benar-benar drop waktu kamu cabut fiber-nya.

3 South Korealinkadmin79KR Show original (English) AI translation
Log in to comment. Log in