Zmodyfikowany firmware OpenWrt Attitude Adjustment
Ostatnia zmiana: 2015-08-22 15:24

Domyślne obrazy OpenWrt nie zawierają paru rzeczy które warto by mieć od razu np wsparcie dla USB. Moje obrazy budowane są na podstawie bieżącej gałęzi OpenWrt Attitude Adjustment i zawierają modyfikacje które uważam za niezbędne lub wartościowe i powinny być domyślnie włączone do budowanych obrazów. Dlatego też moje obrazy różnią się od oryginalnych wydawanych przez zespół OpenWrt, choć są w pełni kompatybilne jeżeli chodzi o ustawienia i pakiety.
Parametry domyślne dla wszystkich obrazów:

  • użytkownik: root
  • hasło: brak (do ustawienia przez telnet)
  • adres IP: 192.168.1.1
czyli tak samo jak w standardowym OpenWrt.

UWAGA2: moduły kernela muszą być instalowane z tego samego źródła skąd pochodzą obrazy, czyli wymienionego poniżej repozytorium. Z innych źródeł mogą nie działać.

UWAGA3: pakiety wchodzące w skład Gargoyle mają zmodyfikowane skrypty i są dostosowane do współpracy i konfiguracji ze środowiskiem graficznym. Dotyczy to samby, nfs, vsftpd, openvpn, openssl i innych. Jeżeli zamierzasz je konfigurować "ręcznie", to należy zainstalować zwykłą wersję danego pakietu z repozytorium OpenWrt (nie Gargoyle!).

To wersja pozbawiona GUI (środowiska graficznego) - czysta konsola. Potrzebujesz GUI to używaj Gargoyle PL lub LuCI

W nazwie pliku jest oznaczenie modelu routera do którego jest on przeznaczony.

Obraz z factory w nazwie służy do instalacji z oryginalnego oprogramowania.
Obraz z sysupgrade w nazwie służy do aktualizacji z poziomu OpenWrt lub Gargoyle.

Historia zmian

  • 2014-10-25 - r42647 aktualizacja ath9k
  • 2014-08-15 - r41803 aktualizacja ath9k
  • 2014-06-28 - r41303 aktualizacja ath9k
  • 2014-06-14 - r41182 aktualizacja ath9k
  • 2014-04-11 - r40431 aktualizacja ath9k, openssl, aktualizacja adresów repozytorium
  • 2014-03-15 - r39928 aktualizacja mac80211, hostapd, przeportowanie ath10k (802.11ac) do AA
  • 2014-02-15 - r39585 wsparcie dla wielowątkowych aplikacji w openssl, poprawa sysinfo dla extrootów o dużej pojemności
  • 2014-02-07 - ustawienie właściwego identyfikatora sprzętu w obrazach factory dla Ubiquiti UniFi i UniFi Outdoor
  • 2014-01-29 - r39408 poprawki w obsłudze USB 1.1 dla chipów AR933x, poprawka związana z czułością odbiornika dla TP-LINK TL-WDR3600/TL-WDR3600/TL-WDR4310 i MERCURY MW4350R
  • 2013-11-30 - r38863 aktualizacje w toolchain związane z budowaniem obrazów, obrazy dla TP-LINK TL-WR842ND v2
  • 2013-10-19 - r38455 poprawki w ath5k i rt2x00
  • 2013-10-12 - r38347 zmiany w ath9k, rtlwifi, ipv6
  • 2013-10-05 - r38286 zmiany w mac80211, ipv6
  • 2013-09-20 - r38033 zmiany w ath9k, rt2x00, mac80211, ipv6
  • 2013-08-16 - r37768 zmiany systemowe w kernelu, kolejne zmiany w ath9k
  • 2013-08-10 - r37743 aktualizacja mac80211/ath9k, ubos
  • 2013-08-03 - r37630 aktualizacja ath9k, libubox
  • 2013-07-27 - r37559 aktualizacja mac80211 (ath5k, ath9k, broadcom, ramips), ipv6, netifd, obrazy dla TP-LINK TL-WR941ND v6, TL-WR710N v1
  • 2013-07-13 - r37266 aktualizacja sterowników mac80211
  • 2013-07-06 - r37174 zmiany w obsłudze ipv6, obrazy dla DLINK DIR-825 C1, DIR-835 A1
  • 2013-06-29 - r37054 zmiany w obsłudze ipv6, netifd, libubox, dodanie obsługi led do TL-WDR3500
  • 2013-06-22 - r36981 zmiany w firewallu i obsłudze ipv6
  • 2013-06-15 - r36936 zmiany w firewallu i obsłudze ipv6
  • 2013-06-08 - r36872 nowa wersja firewalla, kolejne zmiany w ipv6
  • 2013-06-01 - r36810 dużo zmian w obsłudze ipv6, aktualizacje netifd, libubox, uci
  • 2013-05-25 - r36715 zmiany w mac80211/ath9k (poprawa stabilizacji sterownika), dodanie obrazów dla TP-LINK TL-MR10Uv1, zmiany w ubus i pakietach związanych z obsługą ipv6
  • 2013-05-18 - r36652 poprawki bezpieczeństwa dla kernela, częściowe uzupełnienie sysinfo.sh (zmiany by Rafciq)
  • 2013-05-04 - r36535 aktualizacja mac80211, uci, iwinfo
  • 2013-04-27 - r36425 oficjalne wydanie OpenWrt Attitude Adjustment 12.09, zmiany w sposobie generowania mac adresu dla mac80211, uzupełnienie informacji o adresie WAN w danych informacyjnych
  • 2013-04-19 - r36354 zmiany w sposobie generowania mac adresu dla mac80211, informacje o systemie po zalogowaniu się przez ssh
  • 2013-03-23 - r36088 obrazy dla TL-MR11Uv2, zmiany w odczycie art dla RW2458N, uzupełnienie wsparcia dla TL-MR3420v2 oraz TL-WDR3500
  • 2013-03-02 - r35839 kilka aktualizacji w mac80211/ath9k
  • 2013-02-22 - r35752 poprawki w hostapd
  • 2013-02-02 - r35400 głównie aktualizacje netifd/ubus/libubox, nowe obrazy dla TL-WR743v2 oraz TL-WDR3500
  • 2013-01-19 - r35228 zmiany w ath9k, uci
  • 2013-01-12 - r35093 zmiany w ath9k, uClibc, nowe obrazy dla MR3420v2
  • 2013-01-05 - r35003 aktualizacje ath9k, opkg, ponownie włączenie opcji mtime w find busyboxa
  • 2012-12-22 - r34827 aktualizacje netifd/ubox/libubus - UWAGA: LuCI z rc1 nie chce działać dobrze z tą wersją netifd.
  • 2012-12-08 - r34538 aktualizacja modułów qmi-wwan, ncm, dodanie repozytorium RC1, zmiany w obsłudze chipu przełącznika AR8216, szereg zmian systemowych, włączenie ponowne historii poleceń
  • 2012-11-24 - r34302 zmiana czasów działania przycisków, uzupełnienie obsługi reset/reboot dla TL-WDR3600/4300/4310
  • 2012-11-12 - r34172 m.in. kolejne poprawki w sterowniku wifi ath9k
  • 2012-10-27 - r33948 poprawki w sterowniku wifi ath9k, dodanie obsługi jumboframe dla TL-WR1043ND, aktualizacja repozytorium do beta2, zabezpieczenie przed wgraniem oryginalnego firmware z bootloaderem dla urządzeń TP-LINK
  • 2012-10-20 - r33883 poprawki w obsłudze niektórych urządzeń, aktualizacja netifd.
  • 2012-10-12 - dołączenie do obrazów brakujących modułów kmod-nls-cp437 oraz kmod-nls-iso8859-1
  • 2012-10-10 - r33699 pierwsza wersja obrazów oparta o AA (poprzednie były oparte o Backfire)

Architektury

ar71xx

Firmware przeznaczone dla routerów: D-Link DIR-825, TP-Link TL-MR3220/TL-MR3420/TL-WR1043ND, Ubiquiti RouterStation/RouterStation Pro/AirRouter, Netgear WNDR3700 / WNDR3700v2 / WNDR3800, Linksys WRT160NL i innych.

Katalog do pobrania obrazów: http://dl.eko.one.pl/attitude_adjustment/ar71xx
Katalog z pakietami dla tych obrazów (repozytorium): http://dl.eko.one.pl/attitude_adjustment/ar71xx/packages/

ramips

Firmware przeznaczone dla routerów: Edimax 3G-6200n, Asus RT-N10+

Katalog do pobrania obrazów: http://dl.eko.one.pl/attitude_adjustment/ramips
Katalog z pakietami dla tych obrazów (repozytorium): http://dl.eko.one.pl/attitude_adjustment/ramips/packages/

Zawartość obrazów

Wszystkie obrazy i odmiany budowane są z tego samego źródła. Jako podstawę wykorzystałem OpenWrt Attitude Adjustment, z niektórymi poprawkami zaimportowanymi z trunka, z dołączonymi (wkompilowanymi) następującymi elementami:

  • brak środowiska graficznego (GUI), czysta konsola
  • obsługa wifi (iw/wpad-mini + odpowiedni sterownik dla danej platformy)
  • dodana strefa czasowa Europe/Warsaw
  • domyślnie dołączony pakiet wput
  • odblokowana możliwość użycia kanałów 12/13
Dodatkowo dla urządzeń ze złączem USB obrazy zawierają:

  • obsługę USB
  • obsługę usb_storage
  • obsługę systemów plików vfat/ext2/ext3/ext4
  • automatyczne montowanie nośników (pakiet block-mount) w katalogu /mnt
  • pakiety fdisk (partycjonowanie dysku), e2fsprogs (tworzenie i naprawa systemów plików ext2/3/4)
Konfiguracja przycisków obejmuje:
- "WPS/QSS" przytrzymany do 2s powoduje włączenie/wyłączenie interfejsów radiowych, o ile zostały wcześniej skonfigurowane w GUI. Dla WNDR3700(v2)/WNDR3800 rolę tą przejmuje osobny przycisk Wi-Fi.
- "reset" przytrzymany od 3s do 10s powoduje restart urządzenia.
- "reset" przytrzymany od 11s do 90s powoduje przywrócenie ustawień domyślnych (firstboot) i restart urządzenia.

Dla TL-MR3020/TL-WDR3600/TL-WDR4300/TL-WDR4310/ rolę przycisku "reset" przejmuje przycisk "WPS". Jeżeli urządzenie nie ma danego przycisku to funkcja nie jest obsługiwana lub jest pod innym przyciskiem. Obsługa w/w akcji przycisków jest programowa, więc będą one działać, o ile na routerze działa system i jest jego właściwa konfiguracja.

Extroot

W wersji dla urządzeń z USB znajduje się już pakiet block-mount odpowiadający za możliwość zrobienia extroota. Konfiguracja extroot opisana jest w w/w dokumencie.

Dalsza konfiguracja

Konfigurację można wykonać po zalogowaniu się przez telnet. W pierwszej kolejności po zalogowaniu przez telnet należy ustawić hasło:


    # passwd

Interfejs Wi-Fi po instalacji jest domyślnie wyłączony. Włączenie wifi:


    # uci set wireless.@wifi-device[0].disabled=0
    # uci set wireless.@wifi-iface[0].ssid=moja_siec
    # uci set wireless.@wifi-iface[0].encryption=psk2
    # uci set wireless.@wifi-iface[0].key=super_tajne_haslo
    # uci commit wireless
    # wifi

Można zainstalować także inne narzędzia ułatwiające pracę, np:


    # opkg update
    # opkg install nano htop mc

Inne pakiety można zainstalować z repozytorium, najczęściej dostępne są także odpowiednie konfiguratory graficzne do LuCI dla danego pakietu (luci-app-p910nd, luci-app-tinyproxy luci-app-qos luci-app-upnp luci-app-samba luci-app-p2pblock luci-app-statistics). Jeżeli chcemy określoną funkcjonalność należy doinstalować:
- udostępnianie plików przez "otoczenie sieciowe": samba
- ściąganie torrentów: transmission
- karta muzyczna, serwer plików mp3, odtwarzanie radia internetowego: mpd
- połączenie z neostradą/netią PPPoA
- połączenie z modemem 3G/LTE: HSDPA - zobacz także gotowe obrazy dla routera 3G.
- serwer wydruku: p910nd
- serwer DLNA

Instalacja LuCI (interfejsu graficznego - GUI)


    # opkg update
    # opkg install luci
    # /etc/init.d/uhttpd enable
    # /etc/init.d/uhttpd start

Inne elementy do ustawienia opisane są w osobnym dokumencie.

Problemy

W razie problemów z działaniem obrazów po własnych modyfikacjach/konfiguracjach można posłużyć się trybem failsafe.

Gargoyle PL

Dostępna jest także wersja Gargoyle z polskim tłumaczeniem interfejsu. Obrazy te mają też wsparcie dla modemów GSM/USB i wiele innych modułów.

LuCI

Dostępna jest wersja OpenWrt z wbudowanym LuCI. Obrazy te mają też wsparcie dla modemów GSM/USB i wiele innych modułów.