Ini adalah proyek Firmware Kustom Eksperimental Q3K (CFW) untuk modem Draytek Vigor 167 VDSL -nya.
Sebelum kita melangkah lebih jauh, beberapa hal harus dinyatakan:
Firmware khusus didasarkan pada firmware versi 5.0.1 dari modem Draytek Vigor 167 VDSL, dengan modifikasi berikut:
Anda akan membutuhkan Nix atau Nixos.
$ # Build everything. This will take a bit on first run, as a bunch of
$ # toolchains for MIPS must be built...
$ export NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM=1
$ nix-build -A cfw
/nix/store/v7ihha3j4j2swz3ildaylz9vqaqrl78r-vraytek-custom-518f426f
$ # Note: your hash will differ, as it's based on the Git revision of this
$ # repository at build time.
$ ls /nix/store/v7ihha3j4j2swz3ildaylz9vqaqrl78r-vraytek-custom-518f426f
v167_cfw518f426f.all
$ # Note: your firmware name will differ, as it contains the Git revision
$ # of this repository at build time.
Setelah Anda memiliki file firmware seperti v167_cfw518f426f.all
, itu dapat diunggah ke antarmuka web di bawah pemeliharaan sistem -> firmware.
Setelah menginstal dan me -reboot ke firmware baru, Anda harus dapat SSH sebagai admin ke modem, menggunakan kata sandi yang sama seperti untuk panel web.
$ ssh [email protected]
[email protected]'s password:
_ __ ______ __ ___ _
| | / /______ ___ _/_ __/__ / /__ / _ (_)__ ____ ____
| |/ / __/ _ `/ // // / / -_) '_/ / // / / _ `/ _ / __/
|___/_/ _,_/_, //_/ __/_/_ /____/_/_, /___/_/
/___/ CFW, git rev 518f426f /___/
# uname -a
Linux draytek 3.18.21 #4 SMP Fri May 7 16:22:06 CST 2021 mips unknown
Untuk otentikasi kunci publik, tambahkan tombol admin ssh di panel web, dalam pemeliharaan sistem -> akun -> kunci publik ssh. Anda harus memasukkan kata sandi Anda saat ini dan kata sandi baru dua kali (bisa sama dengan kata sandi yang ada) di samping kunci publik SSH untuk menyimpannya. Ini karena bagaimana perilaku formulir kata sandi diimplementasikan di antarmuka web.
Saat ini, hanya firmware khusus 'model' yang dibangun oleh repositori ini, yang didefinisikan di default.nix. Tepi di sekitar file ini (terutama 'skrip') untuk menambahkan modifikasi Anda sendiri. Itu harus didokumentasikan dengan cukup baik untuk memahami apa yang sedang terjadi dan mengapa.
Di masa depan, dimungkinkan untuk mengimpor repositori ini ke derivasi NIX lain dan memperpanjangnya (ini sudah bisa agak dilakukan dengan menggunakan MakecustomFirmware Lib.nix, tetapi itu berarti Anda harus mengimplementasikan semua modifikasi dasar sesuai default.nix).
Repositori ini hanya berisi kode sumber yang dilisensikan di bawah lisensi open source (lisensi MIT, lihat Menyalin). Ini tidak membuat perangkat lunak Build Artifacts Open Source yang dihasilkan.
Firmware Draytek asli adalah perangkat lunak berpemilik yang tidak didistribusikan di bawah lisensi open source. Saya tidak memiliki hak untuk mendistribusikan ulang, dan mungkin Anda juga tidak. Firmware khusus yang dibangun oleh kode di repositori ini berasal dari firmware asli itu. Untuk lebih jelasnya, repositori ini tidak berisi firmware asli maupun kustom, hanya kode yang pada gilirannya, saat dijalankan, membangun firmware khusus.
Selain itu, firmware Draytek asli yang tampaknya berisi kode karya yang dikompilasi yang awalnya dilisensikan di bawah lisensi copyleft seperti GPL, dan tidak ada kode sumber korespondensi yang tersedia pada saat penulisan. Ini berarti bahwa mendistribusikan kembali firmware mungkin melanggar tidak hanya pada hak -hak kode Draytek yang berpemilik, tetapi penulis dari apa yang tampaknya merupakan kode yang didistribusikan kembali berdasarkan lisensi copyleft ini.
Secara keseluruhan, firmwares khusus adalah area abu -abu yang hukum, dan Anda harus melakukan riset sendiri tentang bagaimana ini menjadi perhatian Anda, pengguna potensial dari apa pun yang dibangun oleh basis kode ini.
Mempertimbangkan hal di atas, tidak ada build biner dari firmware khusus yang akan disediakan . Anda harus membangun semuanya sendiri, dan melakukan riset hukum Anda sendiri tentang apakah apa pun yang Anda lakukan bahkan legal.
Modem berjalan pada Econet EN751627 SOC (2 core / 4 utas), memiliki sedikit lebih dari 100m RAM yang tersedia untuk Linux dan 128MB flash (dibagi menjadi satu set partisi primer / sekunder).
Spekulasi di bawah ini:
Drayos 5 didasarkan pada Linux 3.18.21. Tampaknya telah dibahas dari BSP buildroot yang mungkin juga telah digunakan dalam bangunan Drayos sebelumnya? Sulit untuk diceritakan.
Firmware berisi banyak referensi ke 'TC3162' tetapi tampaknya itu adalah ikan haring merah, apa yang tampak seperti SOC ADSL mandiri dari Trendchip yang sekarang telah menjadi antarmuka Userland standar untuk beberapa kelas gateway rumah DSL? Tampaknya muncul di berbagai vendor dari berbagai kelas modem DSL selama bertahun -tahun proyek publik acak. Orang -orang telah menulis parser untuk cat /proc/tc3162/adsl_stats
untuk sementara waktu sekarang. Sejumlah modul kernel (yang tidak ada sumber ...) berinteraksi dengan dan mengimplementasikan dunia TC3162 yang misterius ini, termasuk apa yang tampaknya menjadi driver Ethernet/Switch utama ( eth.ko
). Switch chip / Mac sendiri mungkin MT7530.
Penelitian lebih lanjut harus dilakukan pada tumpukan driver/firmware yang sebenarnya yang terlibat untuk membuat pendapat yang berpendidikan tentang apakah sesuatu seperti OpenWRT dapat diangkut ke perangkat ini. Memiliki root shell yang andal membantu :).