Keresés

Hirdetés

Új hozzászólás Aktív témák

  • vargalex

    Topikgazda

    válasz woodworm #295 üzenetére

    Elkezdtem nézegetni a firmware felrakásának módját. Nekem úgy tűnik, hogy OpenWrt/LEDE alól valóban csak annyi, ami a mellékelt readme.txt-ben is áll. Persze ehhez olyan firmware-t kell build-elni, amiben írható a defaults partíció (ugyanis alapból read-only).
    Egyébként a flash-ban elfoglalt helye valóban egyezik a padavan-ban definiált Factory partícióval.

    Padavan (forrás DD-Wrt fórum):

    Jan 1 00:00:05 kernel: Creating 7 MTD partitions on "raspi":
    Jan 1 00:00:05 kernel: 0x000000000000-0x000000030000 : "Bootloader"
    Jan 1 00:00:05 kernel: 0x000000030000-0x000000040000 : "Config"
    Jan 1 00:00:05 kernel: 0x000000040000-0x000000050000 : "Factory"
    Jan 1 00:00:05 kernel: 0x000000050000-0x000000182bf0 : "Kernel"
    Jan 1 00:00:05 kernel: 0x000000182bf0-0x000000fc0000 : "RootFS"
    Jan 1 00:00:05 kernel: 0x000000fc0000-0x000001000000 : "Storage"
    Jan 1 00:00:05 kernel: 0x000000050000-0x000000fc0000 : "Firmware_Stub"

    LEDE:

    [ 2.630000] Creating 6 MTD partitions on "spi32766.0":
    [ 2.640000] 0x000000000000-0x000000030000 : "u-boot"
    [ 2.650000] 0x000000030000-0x000000034000 : "u-boot-env"
    [ 2.660000] 0x000000034000-0x000000038000 : "radio"
    [ 2.670000] 0x000000038000-0x000000040000 : "factory"
    [ 2.680000] 0x000000040000-0x000000050000 : "defaults"
    [ 2.690000] 0x000000050000-0x000001000000 : "firmware"
    [ 2.740000] 2 seama-fw partitions found on MTD device firmware
    [ 2.750000] 0x000000050040-0x0000001d0000 : "kernel"
    [ 2.760000] 0x0000001d0000-0x000001000000 : "rootfs"
    [ 2.770000] mtd: device 7 (rootfs) set to be root filesystem
    [ 2.780000] 1 squashfs-split partitions found on MTD device rootfs
    [ 2.800000] 0x0000005d0000-0x000001000000 : "rootfs_data"

    Úgyhogy, ha valaki ki szeretné próbálni, szívesen közzéteszem azt a LEDE build-et, amiben engedélyezem a defaults partíció írását is.

    Egyébként kíváncsi lennék a használt padavan forrásra, illetve a partíció előállításának módjára is. Igazán megoszthatta volna emberünk...

    Alex

  • vargalex

    Topikgazda

    válasz woodworm #346 üzenetére

    Szia!

    Ez az eredeti build, de folyamatosan ezt tapasztalom a webes felületen. Nekem routerként megy, neked csak AP-ként, ha jól sejtem. Más különbséget nem látok.
    2,4 GHz-en csatlakozva nálam a TRate az 300M, úgyhogy ahhoz mérten különösen jó az eredmény.
    Samba-nál biztos, hogy az USB2 a korlát. Én egy USB3-as házban lévő notebook HDD-vel próbáltam.
    LEDE-ből majd build-elek egy általánosat, mert ezt kifejezetten a nekem szükséges csomagokkal és configokkal build-eltem. Egyébként mindegyik partíciót írhatóvá tettem. Másrészt saját build esetén olyan partíciókat (is) definiálhatunk, amit akarunk. Lehet átfedés is küztük.

    (#347) suste: A LEDE és az OpenWrt is az mt76 wifi driver-t használja, nyilván a LEDE újabbat, mint a CC.

    A fentebb leírt LEDE build-el egyébként valóban ennyi a flash-elés:

    From OpenWRT/LEDE:
    1. mtd write mtd2.bin defaults
    2. mtd -r write DIR-860L_3.4.3.9-099.trx firmware

    LuCI-ból szinte biztos, hogy nem megy a firmware partíció, bár nem néztem, de szerintem a HW ID nem egyezik bennük, így a sysupgrade visszautasítaná.

    Alex

  • vargalex

    Topikgazda

    Nos, tegnap sikerült mindent beállítani a Padavan-on, bár vannak dolgok, amik sokkal döcögősebben mennek, mint OpenWrt alatt. Így, ha minden jól megy, ma este jön egy teszt a végleges helyén. Kíváncsi vagyok, hogy itt is leromlik-e a 2,4GHz-es wifi. Egész jó a wiki-je, úgyhogy majdnem mindent meg tudtam oldani.

    Szóval:

    - SSH kulcsos authentikáció működik
    - OpenVPN megy szépen, SSH-n felmásoltam az OpenWRT alatt is használt crt, key és pem file-okat, beállítottam mindent a webes felületen és elsőre működött is
    - Port forward természetesen megy rendesen. Routeren portot nyitni a LAN IP-re forward-al lehet
    - Statikus DHCP OK
    - DDNS jóval macerásabb, mint OpenWRT alatt. Egyrészt csak 2 DDNS szolgáltatás állítható be, másrészt ezek közül csak 1 lehet custom. Ezt nem is értem.Én pedig ipdns.hu-t és a gyerekek miatt OpenDNS-t használok. Egyik sincs a listában. OpenWrt alatt az OpenDNS alapból van egyébként. Ezért ezen kicsit szöszöltem. A wiki-ben van egy bejegyzés több DDNS szerver használatáról, de ez feltételezi, hogy entware-t telepít az ember. Én nem szerettem volna, így a /etc/storage-ba írtam egy saját scriptet, amit a post_wan_script.sh script-ből hívok meg. A webes felületen beállítottam az ipdns kapcsolatot, ebben a script-ben pedig ellenőrzöm, hogy engedélyezve van-e a DDNS szolgáltatás. Egyébként a felület beállítása nem volt egyértelmű, az inadyn manual-ból viszont minden kiderült
    - belső host neveket a dnsmasq.hosts-ban be lehet állítani szöveges formában, szóval ehhez nem csináltak config-ot. De legalább a webes felületen (is) szerkeszthető
    - gyerekeknek egyéni DNS szerver (OpenDNS) beállítása a wiki-ben található módon. OpenWrt-hez hasonló. Lehet, hogy majd megnézem ezt a yandex-et is
    - Nyomtató megosztást engedélyeztem, de mivel a nyomtató az éppen aktív használatban lévő routeren van, így azt ellenőrizni még nem tudtam

    Ez a /etc/storage egyébként egy érdekes állatfaj. Ez egy RAMDISK, de mtd_storage.sh save parancs futtatásakor tömöríti a tartalmát és kiírja a storage partícióra.

    Amit nem sikerült beállítanom:

    - szolgáltatói DNS szerverek mellé google DNS szerverek beállítása a WAN porton. Vagy szolgáltatói van, vagy egyéni. Ráadásul egyéniből csak 3 rögzíthető. Nálam OpenWrt-n úgy van, hogy elsődlegesek a google DNS-ek, majd a szolgáltatói DNS-ek.

    A DDNS-t olyan szempontból nem teszteltem, hogy WAN újrakapcsolódáskor azonnal frissít-e. A fent említett saját scriptem biztos, hiszen onnan futtatom, de a webes felületen beállítottban nem vagyok biztos. Igaz, engem UPC-sként nem igazán érint.

    Alex

  • woodworm

    veterán

    válasz Lipigab #737 üzenetére

    Első lépésként a már előbb említett partíciómentéseket egyesíteni kell. Én a Total Commandert használom ilyen célra. A lényeg, hogy azonos nevűek legyenek és sorszámot tartalmazzanak. Fontos a sorrend!

    u-boot-env.backup >> 01.backup
    radio.backup >> 02.backup
    factory.backup >> 03.backup

    Az első fájl kijelölése után, a tc menüben a fájl egyesítést kiválasztva a program végzi is a dolgát. A kapott fájlt át lehet nevezni mtd1.bin-re, hogy később is tudni lehessen miről van szó.
    Ha nem lenne bekapcsolva, az ssh-t engedélyezni kell a padavan adminfelületén. Párhuzamosan használtam winscp és ssh kapcsolatot, de meg lehet oldani máshogy is a másolást. Winscp-vel felmásoltam a router /tmp könyvtárába a létrejött mtd1.bin-t és a lede alatt mentett defaults.backup-ot.
    SSH-n belépve a következő parancsokat kell kiadni.
    cd /tmp
    mtd_write write mtd1.bin "Config"
    mtd_write write defaults.backup "Factory"
    Mivel nekem működő routernél nyomva tartott reset gombbal nem jött be a recovery menü az újraindulás után és az utolsó parancsnál esetlegesen megadott reboot opció sem járható út, mert a padavan a boot során rögtön módosítja a partíciókat. Ezért a két partíció felírása után áramtalanítottam a routert, majd recovery üzemmódban indítottam el. Reset lenyomva tartása mellett áramot adtam neki, a gépen fix ip-adtam meg (192.168.0.2) és a böngészőben megadtam a 192.168.0.1-es címet.
    Innentől mehet rá gyári/openwrt/lede is.

    [ Szerkesztve ]

  • vargalex

    Topikgazda

    válasz vargalex #712 üzenetére

    Nos, megnéztem a flash chip adatlapját, illetve ismételten a partíciók felosztását.

    Az adatlapból az látszik, hogy a flash 64 KB-os blokkméretet használ. Viszont a radio partíció 0x34000-nél kezdődik, ami: 0x34000 = 212992. 212992 / 1024 = 208. 208/64 = 3,25. Azaz nem blokk határon kezdődik a partíció. Ugyan így igaz ez a factory partícióra is: 0x38000 = 229376, 229378/1024/64=3,5. Csak gondolom a factory partíció írásáig senki nem jutott el. :)

    Az u-boot-env partíció blokk határon kezdődik: 0x30000 = 196608, 196608/1024/64=3. Tehát annak sikeres az írása.

    Így azt találtam ki megoldásnak, hogy build-elek egy olyan LEDE firmware-t, amiben definiálok egy új partíciót (mondjuk backup néven), ami az u-boot-env+radio+factory+defaults partíciók összessége lesz. Ez ugye blokk határon fog kezdődni, összesen 128KB, azaz 2 blokk.

    Ezzel a megoldással a korábban készített mentés is visszaírható majd, csak össze kell másolni egybe a korábbi mentéseket:

    cat u-boot-env.backup radio.backup factory.backup defaults.backup > backup.backup

    majd fel is lehet írni:

    mtd -r /tmp/backup.backup backup

    Ha minden jól megy, még ma build-elek.

    Szerk.: Padavan alatt azért sikerült visszaírni, mert ott a Config és a Factory partíció is blokkhatáron kezdődik, illetve a mértük is a blokkméret többszöröse.

    [ Módosította: Intruder2k5 ]

    Alex

  • xabolcs

    őstag

    válasz Bici #2236 üzenetére

    Pedig mar szepen osszeszedtem a tudashoz szukseges keresoszavakat, csak nem kuldtem el a hozzaszolast! :W

    Keresoszavak:
    - tema osszefoglalo ;]
    - mtd2
    - mtd config
    - visszaállás / visszaállítás

    Szoval a visszaallas szerepel az osszefoglaloban is, de hasznalhatod vargalex leirasat a PADAVAN <-> LEDE firmware-jevel.
    woodworm leirasa pedig Padavan kornyezetben ertelmezendo!

    Ha kolcson mentesbol kell dolgozz, akkor hexeditorral irdd vissza a MAC address-eket meg egyeb azonositokat a tieidre!

    [ Szerkesztve ]

    aláírás1: csocsó-vesztes vagyok, főleg a Bog és Bocha páros ellen, aláírás2: van mobilarénáskulcstartóm! :D

Új hozzászólás Aktív témák