Szanowni a zakładam, że w przypadku tego modemu NIE można przez GUI Gargoyle odbierać i wysyłać SMS, że o kodach USSD nie wspomnę? Czyli i siły sygnału nie zobaczymy itd? Dobrze myślę?

Bo jeśli dobrze myślę, to może jest szansa poprzez przekierowanie portów wbić się na 192.168.0.1 (czyli webgui tego modemu) i tam obsługiwać powyższe rzeczy? No chyba, że ten webgui to tylko jakiś wymyślny serwer pod windows (odpalany jakoś w tle) i pod openwrt w ogóle nie startuje.

Nie wiecie może jak z tym jest? Z góry dzięki za info.

P.S.
Po co pytam... ano mój modem idzie na "maszt" a czasami trzeba odczytać sms (np. przy włączaniu jakiś usług operatora) no i średnio mi się uśmiecha w każdym takim przypadku pchać na ten masz aby sima do telefonu przełożyć.

MvincM

227

(3 odpowiedzi, napisanych Oprogramowanie / Software)

Ad. 1
Tu trzeba trochę zmienić GUI ale jak zakładam tylko skrypt aby przyjmował o jeden więcej parametr. Czyli do zmiany jest .sh i .js. Swoją drogą co ten .js taki ciurkiem pisany. Ni jak go edytować nie idzie wink Znaczy da się ale czytelność -10 wink  Pomyślisz nad tym czy samemu grzebać? Samemu o tyle słabo, że przy każdym update o podmiance pliku pamiętać trzeba i patrzeć czy jakiegoś merg'a robić nie trzeba wink

Ad. 2
Tak sobie myślę, że po pierwsze byłaby to opcja do wybrania vs standardowy restart czy wan resart. To proste. Ale nawet jeśli zapakować to tak jak jest do cron'a to przecież i tak jest wykonywany skrypt. Czyli logika działania poszła by do pliku nie do .sh czy .js od interfejsu. Inna sprawa, że wtedy na 100% trzeba by lock-ować proces i sprawdzać nie tylko uptime. Ale to wszystko byłoby w pliku. Czyli:

a) sprawdzam czy jest już lock jak tak to exit
b) jak nie ma to zakładam lock;
c) sprawdzam dwa IP podane z GUI (wywołanie funkcji)
d) jak zwróciła 0 to pętla "for" 3 razy z restart WAN + sprawdzenia IP (jeśli któreś z przejść dało 1 to zdejmuję lock i wychodzę z for'a i skryptu)
e) jak nie to zdejmuję lock i restart urządzenia

Tak to widzę? Błądzę z logiką czy ok?

MM

228

(9 odpowiedzi, napisanych Oprogramowanie / Software)

Dzięki za info.

Ad. 1
To chyba dopiszę do niego prosty zgodny ze standardem skrypt do /etc/init.d - tak dla porządku. Swoją drogą jaki warunek musi być spełniony, żeby dany demon/usługa pojawiała się w pluginie "plugin-gargoyle-initd"?

Ad. 2
Zapuszczę mu jeszcze testy na wywałkę np. z dużym sleepem po drodze i dobieraniem się do jakiegoś lock.file lub lock.dir (swoją drogą lock.dir ponoć lepszy niż lock.file bo system chroni przed wyścigiem zapewniając mutex na poziomie kernela)

Thx
MvincM

229

(3 odpowiedzi, napisanych Oprogramowanie / Software)

Witam.

Cezary takie pomysły na rozszerzenie ww. plugina. Pomysł zaczerpnięty z routera dovado tiny.

1) więcej niż jeden numer IP do sprawdzania - może się jednak kiedyś przytrafić, że ten ip 8.8.8.8 co go tak wszyscy ze mną włącznie namiętnie używają przestanie działać bo coś. Może google nie ma 100% UPTIME wink A nawet jak ma to może przecież akurat routing do 8.8.8.8 nie działać co nie oznacza, że nie ma inetu i że restart WAN coś pomoże. W takim przypadku sprawdzamy dwa IP (najlepiej z różnych sieci). I jak dwa nie odpowiadają to wtedy podejmujemy akcję. Dovado używa aż trzech ale to już nie ma sensu moim zdaniem. Generalnie najlepiej pinga DNSy których się używa (jeden od providera a drugi ze świata). Wtedy mamy pewność, że jest inet i że nazwy dns będą się resolve-owały.

2) 2-3 krotny restart WAN a jak to nie pomoże to restart urządzenia. Czasami jest tak, że modem się "zawiesza" jakoś i sam restart WAN nie pomaga i trzeba mu pomóc restartem urządzenia. Można dla niektórych hubów i/lub routerów włączać/wyłączać zasilanie dla USB (gdzie modem jest wpięty) ale to chyba nie jest uniwersalne więc reboot wydaje się być bardziej uniwersalny i ok.

3) opóźnienie na starcie powinno być faktycznie liczone po uptime jak teraz ale też od ostatniego resartu WAN. Może tak być (jak tak miałem), że WAN nie dał rady się podnieść a nowy watchdog go zaatakował i dostał resart i znowu i znowu.

I to tyle wink Podrzucam te pomysł. Jeśli jednak nie masz chwili to daj znać mogę coś zaproponować. Ale wiem, że generalnie każdy woli samodzielnie pielęgnować swój kod więc się nie narzucam.

Pozdrawiam,
MvincM

230

(9 odpowiedzi, napisanych Oprogramowanie / Software)

Witam.

W nawiązaniu do http://eko.one.pl/?p=openwrt-smstools3 kilka pytań Cezary.

1) Czy ten demon (smsd) będzie sam startował po reboot routera? Czy trzeba dla niego dodać skrypt uruchamiający?

2) Nie wiesz czy demon pracuje sekwencyjne? Tj. czy pobierająca sms nie pobierze drugiego (a konkretnie nie wykona akcji/skryptu związanego z odebraniem sms) zanim nie skończy pierwszego? Czyli czy jest proste "lock-owanie"?

Pytam bo przy gnokii musiałem dorobić lock-owanie + patrzeć który sms był pierwszy w kolejce do obróbki.  Bo dla przykładu jest tak, że smsy schodzą do skrzynki. Zajmują pierwsze wole miejsce. Jak z cron odpalasz gnokii i pobranie sms to może być tak, że nowszy sms będzie wyżej niż starszy jeszcze nie obrobiony i nie wykasowany. Wtedy dochodzi do wyścigu defacto. Poprzedni skrypt może coś jeszcze robić albo co gorzej mogą czekać w kolejce dalsze smsy do obrobienia z komendami do wykonania (np. wan up, wan restart itd.). Taki wyścig może trochę pomieszać i skutecznie np. odłączyć router od sieci (gdy kolejność wysyłanych komend miała większy sens).

Z góry dzięki za info.

MvincM

231

(2 odpowiedzi, napisanych Oprogramowanie / Software)

Witam.

Dobrze zrozumiałeś wink dzięki za podpowiedź. Dokładnie tak zrobię. Włączę WAN i zapiszę sobie z boku konfigurację, potem włączę LAN i zapiszę konfigurację. Potem będę tylko podmieniał pliki konfiguracyjne i restartował net. Proste !

Dzięki !
MM

Witam.

Szanowni może wiecie jak w linii komend włączać/wyłączać (odblokowywać/blokować) interfejs na połączeniu 3G. Nie chodzi mi o "ifdown wan/ifup wan" tylko o taką komendę która odpowiada włączeniu/wyłączeniu połączenia 3G jako wyjścia do Internetu przez GUI (nie mówię oczywiście o reconnect)?   

Tak dla wytłumaczenia po co mi to... Potrzebuję generalnie okodować taki scenariusz:

Polecenie "włącza routing przez 3G"
1) odblokowuje interfejs 3G (wanem staje się 3G)
2) zestawia połączenie 3G (ifup wan)
3) ustawia routing i dns przez połączenie 3G

Polecenie "wyłącz routing przez 3G"
1) robi ifdown wan
2) blokuje interfejs wan
2) przestawia routing na default gw po sieci LAN

Będę wdzięczny za podpowiedź.

MM

233

(71 odpowiedzi, napisanych Oprogramowanie / Software)

@pepe2k
A jak sprawa wygląda z AR9341 (czyli TP-LINK MR3420). Jak zakładam mniej Cię ten model interesuje wink wink z racji nie posiadania sztuki i Twoje prace się na nim nie skupiają? True?

MvincM

234

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Zakładam, że mówisz o konsoli szeregowej podpiętej bezpośrednio do routera kablem USB->RS. Jak tak to nie mam na chwilę obecną takiej możliwości niestety. Router jest na maszcie i działa a ja wszelkimi sposobami staram się pozbyć extroota który niestety jest zawodny. Jest inna metoda sprawdzenia (np. dmesg)?

MvincM

235

(71 odpowiedzi, napisanych Oprogramowanie / Software)

@zaspany
A nie wiesz czy te kości pójdą na MR3420?

Thx
MvincM

Nie tyle zapomniałem co ukryłem je pod nazwą "pakiety do 3G" wink

Tak czy inaczej kurcze lipa. Bo extroot na modemie 3g no niestety raz na jakiś czas się wywala (są błędy na systemie plików). Czasami da się to naprawić bez dostępu fizycznego do routera a czasami nie (a router sobie na maszcie siedzi więc to problem). No i generalnie nawet jak mogę zdalnie naprawić extroot to szczerze uważam, że nie jest to rozwiązanie typu "fire and forget" a router na "czystym" flash już takim rozwiązaniem jest. Więc kombinuję jak koń pod górkę no bo nie chcę wymieniać całkiem dobrze działającego routera.

Tak czy inaczej bez testów się nie obędzie chyba, że kolega zdzichu6969 coś podpowie ze swojego doświadczenia. Samych eksperymentów się oczywiście nie boję tylko oznaczają one siłą rzeczy przerwy w dostępie do netu na użytkowników a jak coś źle pójdzie to wizyta na maszcie murowana (a teraz jeszcze ten śnieg).

Thx
MvincM

@Cezary

Dziękuję za wskazówki. Do 3gtestera dorzucę sobie więcej warunków do testów ping - tak przynajmniej ze dwa IP no bo przecież dns googlowy nie musi zawsze działać co nie oznacza, że cały internet nie działa wink. Do tego można zarzucić jeszcze restart portu USB z modemem 3G w przypadku gdy samo podniesienie WANup nie wystarczy (MR3420 z tego co czytałem potrafi) a w ostateczności restart całego routera jeśli powyższe nie przywróciło połączenia.

@zdzichu6969
A powiedz proszę czy ten wynik wolnego miejsca to jest już z pakietami do 3G czy bez? Bo w te 76K to już chyba 3ginfo by Cezary nie wcisnę. Mogę jechać bez nano (vi wystarczy).

Generalnie na 4MB chciałbym mieć:

a) pakiety do 3G
b) 3gtester
c) 3ginfo
d) openvpn w roli client ale w trybie bridge (czyli TAP)
e) autossh
f) n2n

Przy czym te dwa pakiety opcjonalnie jeśli starczy miejsca.

Pozdrawiam,
MvincM

Dzięki - już wiem jak działać.

1) 3gtester wyciągnę sobie z garygoyle i zapakuje do crona
2) a tu piszę o skrypcie podpiętym pod hotplug na port WAN który restartuje połączenie OpenVPN przy WAN up WAN down.

Ale jak tego nie ma samo OVPN (jako pakiet) to też z Garygoyle wyciągnę.

MvincM

OK. Dzięki za info.

Dwa pytania pomocnicze:

1) który pakiet zawiera 3gtester?
2) Który pakiet dodaje skrypt do hotpluga dla OpenVPN (... nie wiem czy przypadkiem nie plugin do garygoyle)?

Dzięki,
MvincM

Witam.

Szanowni zwracam się do Was z pytaniem a tak na prawdę to pewnie najbardziej do Cezarego.

Mam router "tylko" z 4MB flash. W związku z powyższym chciałbym postawić czyste AA (by Cezary) aby zostało jak najwięcej miejsca na dodatkowe pakiety specyficzne dla moich potrzeb. Router będzie podłączony do inetu przez modem 3G a do tego będzie klientem OpenVPN.

I teraz pytanie czy Gargoyle ma jakąś przewagę vs AA pod względem obsługi modemów 3G i OpenVPN. Moje pytanie opieram na tym, że w AA nie widziałem 3gtestera (czyli minus na rzecz AA) a do tego zainstalowanie OpenVPN na AA chyba nie dodaje skryptu do hotpluga na WAN a przy OpenVPN na Gargoyle jak nic dodaje skrypt do hotpluga.

Dobrze myślę czy głupoty gadam? Prośba o podpowiedź. Z góry dziękuję.

MvincM

Dobra dzięki ! Widzę teraz kolejność odpalania skryptów - cenna wiedza. Ale skoro AA bez GUI ma e2fsprogs to nie muszę już kombinować.

Powiedz tylko o którym "konfigu" mówisz gdzie można wskazać automatyczne sprawdzanie/reperowanie FSu pod extroot?

Dzięki,
MvincM

Tak wiem, znam te posty (Twoje i Tao) ale niestety nie do końca je rozumiem na dzień dzisiejszy a konkretnie nie mogę obczaić właściwego momenty podczas bootowania a więc:

Jeśli możesz podpowiedzieć to powiedz proszę:
- kiedy (czyli który skrypt) robi extroot - przełącza na niego
- czy dobrym pomysłem jest aby na te parę kroków przed extroot (patrz wskazanie miejsca w punkcie powyżej) wykonać to co zaplanowałem (patrz post wyżej)

I jeszcze jedno wink może najważniejsze wink

Czy ja dobrze rozumiem, że jakbym zrezygnował z GUI i dał czyste TWOJE AA (mowa o MR3420) to miałbym we flashu e2fsprogs i wtedy nie ma takiego problemu (znaczy zachodu z montowaniem podczas bootowania innej partycji z pakietami)? Dobrze myślę?

Jeśli jest jak powyżej to nie ma sensu kombinować. Z powłoki shell wszystko da się zrobić i wcale GUI nie jest potrzebne wink Pytanie tylko czy SAM automatycznie będzie się sprawdzał i reperował rootfs na przykładowej mojej partycji /dev/sda1? Czy to jest by default ustawione aby się sprawdzała ta partycja z extrootem?

Pozdrawiam,
MvincM

Yeep. Wszystko naprawione i śmiga jak powinno. Wizyty na maszcie nie było wink Dzięki.

P.S.
Swoją drogą pomyślę o powrocie do takiego patentu:
- fstools na oddzielnej partycji
- boot routera
- mount partycji z fstools (w trybie RO)
- sprawdzanie tak czy siak (-f) partycji z extroot
- umount partycji z fstools
- dalszy boot normalny do extroot

MvincM

Cezary napisał/a:

Bardzo prosto:

mkdir -p /tmp/flash
mount -t jffs2 /dev/mtdblock3 /tmp/flash

W /proc/mtd sobie zobacz która partycja to jest rootfs_data, zwykle to jest mtd3 w tplinkach.

W /tmp/flash/etc/config/fstab wyłącz extoota, reboot i masz system uruchomiony bez extroota. Sprawdź system, włącz extroota, reboot.

Czy wystarczy tylko zmienić:

option 'enabled' '1'

na

option 'enabled' '0'

w sekcji "mount"?

Pytam bo zakładam, że mam jedną szansę na wyłączenie. Błędnie wyłączę i się nie podniesie i wizyta ma maszcie... wink

MvincM

Cezary dziękuję za szybkie wsparcie !

MvincM

Szanowni.

znam ten wątek na pamięć ale nikt nigdy nie podjął tematu jak naprawić system plików na extroot nie mając dostępu do router (maszt). Było parę podjętych postów ale zdalnie nikt tego jeszcze nie kombinował.

Może ktoś (bardzo proszę) pomoże. Widać w logach, że ext2 się sypie ale router wstaje (ale np. już crond się nie uruchamia). Dostęp do routera mam. Chciałbym teraz jakoś wyłączyć extroot potem reboot do konfiguracji przed extroot (jest to samo ip itd.), do ramu instalacja toolsów do fsck, potem fsck na uszkodzonym systemie, podmianka na extroot, reboot i działam dalej juz ok.

Więc pytanie jak włączyć a ważniejsze WYŁĄCZYĆ zdalnie extroot.

Z góry dziękuje,
MvincM

Moim zdaniem to jednak wina Plusa. U mnie nie zapeszając wszystko ok. Muszę tylko jakoś logować sobie uptime połączenia LTE bo Dovado teg nie pokazuje (o dziwo!!!).

MM

@Cezary
Ok - chyba rozumiem. Czyli sprawdzam zawsze nie ważne czy był/jest błąd na extroot na sda1 czy go nie ma. Zakładam, że sad2 będzie raz sprawdzona a potem zawsze odpalana w read-only co teoretycznie powinno powodować brak błędów systemu plików.

MvincM

Witam.

@Cezary
Generalnie wiem, że modyfikując tamte skrypty wink nawet nie jestem takim leniem i chętnie bym pokombinował (sprawia mi to przyjemność abstrahując od potrzeby praktycznego zastosowania rozwiązania) ale pytanie czy to jest w ogóle - z definicji - wykonywalne aby magicznie system wiedział, że ext2 na extroot jest uszkodzone więc nie montuj go tylko najpierw podmontuj partycję sda2, posprawdzaj i ponaprawiaj i zrób reboot już na sda1 jak extroot. Czyli moje pytanie jest o pryncypia wink a nie o samego gotowca. Czy się da? Bo jakoś na logikę tych kroków nie widzę.

@samsam
Dzięki za rekomendację. W zależności od odpowiedzi Cezarego będę miał trzy/cztery ścieżki:
a) kombinować z moim "diabelskim" pomysłem
b) czyste openwrt zgodnie z Twoją rekomendacją
c) wymiana na coś z 8MB flash - kandydat TL-WR842ND
d) flashmod na MR3420 (pewnie kosztowo wyrówna się z opcją nr 3)

Pozdrawiam,
MvincM

Trafiłem na gościa któremu się chciało a dodatkowo chyba zaskoczył go mój poziom "przygotowania" do rozmowy. Wiedziałem jaki konkretnie nadajnik, wiedziałem już wtedy, że na 3G chodzi, mówiłem że testowałem i na windows i na routerze, powiedziałem że modem łapie sygnał i wskazuje jego poziom ale nie zestawia połączenia ppp.

Po tym wywiadzie gość zawiesił mnie na ok 10 minut (jak nic) i wrócił z informacją, że to wina sieci i przyjmuje zgłoszenie. Inna sprawa, że zgłoszenie zostało rozwiązane (dostałem sms z potwierdzeniem zamknięcia) a połączenia LTE nadal nie było. Samo w nocy się przełączyło - wniosek coś na BTS lub raczej na serwerze pppd musiało się zmienić po stornie plusgsm. Ale jeśli to pppd "padło" to znaczy, że 3G jest obsługiwane przez inny serwer pppd niż LTE.

Jako dodatkowa informacja to mój BTS (a konkretnie maszt) jest współdzielony z Aero2 na 900MHz. Ale z tego co wiem to jeden czort - jeden właściciel więc pewnie to nie ma znaczenia.

Jeszcze jedno. Goście z Dovado napisali mi, że dostali ostatnio kilka powtarzających się zgłoszeń o problemach z połączeniem LTE. Powiedzieli, też w logach widzą próby nieskuteczne nawiązania połączenia ppp. Czyli wszystko się zgadza. Coś PLUS zmienił ale jak widać w moim  przypadku MUSIAŁ przywrócić poprzednie ustawienie/konfigurację. Mój router się nie zmienił w między czasie. Nie mniej jednak skoro soft plusa na windows potrafi się łączyć to znaczy, że da radę obsłużyć "nową" konfiguracje ich sieci po stronie terminala/klienta.

Pozostaje też jeszcze kwestia nie najnowszego firmware na moim e398 - w sieci można znaleźć znacznie nowszy firmware.

Pozdrawiam,
MvincM