Ja Was ostrzegałem - jakiś główny admin/programista od HSPA+ poczytał nasze forum i dopisał odpowiedni skrypt uodporniający na pingi i rozesłał aktualizacje po klientach ![]()
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Posty przez mrox
Ja Was ostrzegałem - jakiś główny admin/programista od HSPA+ poczytał nasze forum i dopisał odpowiedni skrypt uodporniający na pingi i rozesłał aktualizacje po klientach ![]()
Skrypty jak zauważyłem są różne, ale wstawiłem gdzieś przed "-P /var/run/$(NAME)..." - teraz jest "-I 180 -P /var/run/$(NAME)..." i najwyraźniej działa, bo zamyka nieużywane połączenie ssh dokładnie po 3 minutach. Zobaczymy czy to pomoże i czy nie będzie innych skutków ubocznych - ten akurat mi się podoba, bo i tak nieużywany terminal z otwartym ssh zamiera po jakimś czasie. BTW - ktoś wie dlaczego tak się dzieje?
Pojawił się kolejny problem: wygląda na to, że dropbear dosyć długo trzyma urwane połaczenie - o ile w przypadku zwykłego ssh nie stanowi to problemu bo po prostu łączymy się kolejny raz na nowym połaczeniu, ale w przypadku tunelowania nie da rady drugi raz otworzyć tego samego portu i próba zestawienia tunelu jest odrzucana. Wydaje mi się, że mogła by pomóc opcja -I <idle_timeout> z czasem np. 2 - 3 minuty, ale nie wiem jak wpisać to do skryptu startowego... no i nie wiem czy to mają być minuty czy sekundy.
Jeśli się nie mylę, to będzie gdzieś /etc/init.d/dropbear linia 53 - args="...... ewentualnie dopisać to elegancko żeby można było wprowadzać w /etc/config/dropbear
Podlutowałem RS i poszło z górki. Miałem "lzma_decode failed. res=1" więc wgrałem od nowa i działa.
Nie wiem czemu tak ciężko wchodzi się do tego bootloadera - każdy poradnik pisze trochę inaczej.
No i niestety - cegła. Było już wszystko OK to podkusiło mnie wgrać 1.5.6. Teraz ruter nie odpowiada w żaden sposób - udało mi się dwa razy na ~100 prób wbić do bootloadera i zobaczyłem napis executing boot script... ale ctrl c nie zadziałało. Chyba jedyna szansa to podlutować się pod RS.
Udało się w końcu, ale podłączyłem kabel bezpośrednio komp <-> router bez switcha.
Wygląda to tak, jakby bootloader nie wspierał wszystkich aspektów protokołu TCP-IP i przez switcha się nie dogada.
Edit: Jednak działa przez switcha i nawet łapie adres przez DHCP.
Nie znam tematu, ale w takim razie po co zrzucają z HSPA na UMTS skoro wszystko jedno?
Prawdopodobnie HSPA zajmuje większe pasmo (radiowe) niż UMTS. W ten sposób zwalniając jeden kanał HSPA robi sie miejsce dla kilku (kilkunastu?) UMTS.
Działałem wg tej strony: http://openwrt.pl/doku.php/uzytkowanie: … -300_reva1
Coś poszło nie tak, i wczoraj jeszcze wbijałem się przez telnet 192.168.1.1 9000 -
zgłaszał się jako DD-WRT> Dziś nawet z tym mam problemy i stąd kilka pytań (niektóre na przyszłość):
Za każdym razem trzeba robić ten długi reset? (na stronie opisany jako przycisk "restart", ale chyba o "reset" chodzi? )
Jak zmienię w Gargoyle adres LAN, to adres do bootloadera się nie zmieni?
Czy muszę wchodzić koniecznie z adresu 192.168.1.2? (rozumiem, że ten adres jest adresem serwera tftp)
Na stronie opis dotyczy wersji 1.0.14, ale czy ktoś może potwierdzić, że działają dobrze wyższe wersje? (ewentualnie podrzucić jakieś inne)
Jeżeli pingowanie pomaga, to można zrobić listę hostów i pingować po kolei albo losowo, żeby nikomu nie przyszło do głowy zablokować gdzieś pingowanie.
Można też pingować z większym pakietem, ale rzadziej.
Obawiam się jednak, że takie są uroki sieci komórkowej - jak tak wszyscy zaczną pingowac i siedzieć na HSPA+ to w końcu zacznie wywalać kogoś losowo. To zależy oczywiście od obciążenia sieci, ale zawsze znajdzie się moment przeciążenia (najazd turystów, promocja w markecie itp.) a z drugiej strony sieć nieobciążona to marnowanie zasobów ![]()
Warto by się skupić na tym, żeby wracało samo do połaczenia HSPA+ jak tylko może, i jest nam to rzeczywiście potrzebne.
Działa! ![]()
Wystarczyło dodać do /etc/config/dropbear
option GatewayPorts 'on'
Wygląda mi na to, że z wszystkich 4-ech możliwości postawienia tunelu - ta jedna jest konfigurowalna i jest domyślnie zabroniona
Do pełni szczęścia brakowało by mi zrobienie usera bez praw roota a z prawem do zrobienia tunelu.
Nie mam żadnego firewalla. Jeśli przetuneluje np VNC na ruter to nic mi z niego - bo nie mam ekranu
ale np próbując telnetem mam:
telnet localhost 5900
RFB 003.008
czyli vnc się zgłasza. Natomiast na kompie:
telnet <adres_rutera> 5900
mam:
telnet: Unable to connect to remote host: Connection refused
czyli nic z tego.
Ale sprawdziłem też tunelując serwer apache z innego komputera na mój i na moim widzę stronę na localhost:8989, natomiast na innym w mojej sieci: <adres mojego komputera>:8989 już nie.
Wydaje mi się, że tak to ma działać niestety... ale jak bym chciał się połączyć do mojego ruterka już bezpośrednio klientem vnc... to trzeba znowu pokombinować.
Edit: już wiem, nic nie trzeba kombinować, tylko wpisać 0.0.0.0 - wtedy akceptuje połączenia z dowolnego adresu.
Jeszcze jedno: wygląda na to, że "wlot" tunelu ssh nie jest widoczny spoza localhosta (w sumie nie wiedziałem o tym, ale wydaje mi się logiczne ze względu na bezpieczeństwo) - ale jak najprościej zrobić żeby był widoczny?
Akurat na tego co chcę to openssh już mi nie wejdzie.
Zrobiłem jeszcze jeden eksperyment: Bitvise łaczy się przez tunel do kompa na Ubuntu, ruterkiem zrobiłem tunel do Ubuntu, natomiast na swoim kompie zrobiłem jeszcze jeden tunel do ruterka... i działa - czyli nie przeszkadza mu protokół VNC.
Potrzebuję mieć dostęp do Windowsa (vnc) za natem, i świetnie się sprawdza do automatycznego zestawienia (tutaj - odwrotnego) tunelu ssh - Bitvise ssh client - jeśli tylko łączy się do ssh postawionego np. na Ubuntu. Natomiast do ruterka łączy się... ale tunel nie działa. Podczas próby połączenia się przez ten tunel w Bitvise wyświetla się komunikat:
Rejected client-side server-2-client connection from 127.0.0.1:55884 on listening interface localhost:5900 - description: listening interface not recognized.
- czyli po mojemu - odrzucono połaczenie, bo nie rozpoznano nasłuchującego serwera
... tylko po co tunel ma go rozpoznawać? tunel ma przerzucać pakiety i nie interesować się co to jest.
"Ręcznie" postawiony tunel działa zarówno do jak i od ruterka bez problemu.
Uniwersalna komenda: screen -d -R
Jak masz uruchomionego screena to się do niego wbijasz, jak nie, to odpalasz nowego.
A mógłbyś pokazać jak go karmisz? Bo ja pamiętam, że chciałem zrobić j-pegi z filmu (na ubuntu) i też coś brakowało ... i w końcu zrobiłem png (nawet dla mnie lepiej). A do j-pega musi być zdajesie kodek m-jpg (i z tym były chyba problemy).
ffmpeg -i filmik.avi -f image2 -vcodec png obrazek_nr_%d.png Jak ktoś lubi paranoidalne zabezpieczenia to jest coś takiego jak port knocking.
Przy okazji koledzy: szukam gotowca na wrzucanie "dużych" (~20MB) plików przez http, przy czym koniecznie musi być logowanie i wylogowanie bez potrzeby zamykania przeglądarki (chodzi o to, żeby bezproblemowo zamknąć dostęp po użyciu na cudzym komputerze) i koniecznie pasek postępu i weryfikacja powodzenia uploadu.
A widzisz - tematu gphoto nie znałem - a to prawdopodobnie dlatego, że może i obsługuje większość aparatów, ale jak widzę 0% z tych co mam/miałem ![]()
Teraz pozostaje poszukać taniego aparaciku (powiedzmy do 300zł), który to w pełni wspiera i zacząć zabawę.
Jeżeli cena 23zł cię przeraża, to pozostaje tak jak mówisz - podłączyć pod GPIO routera (najlepiej przez transoptor) i monitorować czy jest powyżej jakiegoś tam progu czy nie. Jeżeli napięcie wolno się zmienia to można zrobić prosty i tani przetwornik A/C - ładujesz kondensator tym napięciem i później mierzysz czas rozładowania przez rezystor.
Marzy mi się użycie taniego aparatu w roli kamerki internetowej (zdjęcia). Można by to wykombinować tak: podłączyć aparat przez USB do routera... ale aparat musiałby mieć funkcję pendrajwa, allbo na routerze program i sterowniki do zgrywania zdjęć. Oczywiście (chyba) nie obyło by się bez odłączania USB (programowo?) i fizycznego podłączenia się pod przyciski aparatu. Można by od biedy przełączać całą kartę SD z aparatu do czytnika podłączonego do ruterka, alle oczywiście komplikuje to elektronikę i psuje elegancję rozwiązania. Jest jeszcze jeden sposób - karty Eye-Fi. Tutaj ze względu na ich cenę trochę mijamy się z celem, ale z kolei użycie już dobrego aparatu (canon) z wgranym CHDK mogłoby całkowicie wyeliminować ingerencję w aparat Tutaj pytanie - czy ktoś się bawił tymi kartami - nie koniecznie pod OpenWrt - pod linuksami albo nawet windowsami - bo nie wiem czy to ma szansę działać tak jak chcę.
Zwróć uwagę na stan portów po restarcie routera - warto zrobić tak, żeby w tym stanie przekaźnik był wyłączony.
Bootloader też można wyłączyć
ale nie tędy droga. Przede wszystkim trzeba podglądnąć co się dzieje na tym RS - (za pomocą trzeciego urządzenia ?) - co blokuje i w którym momencie. Jeśli masz jakiś wpływ na to urządzenie co wysyła dane, to oczywiście zmiana protokołu tak, żeby nie kolidował z bootloaderem (najlepiej dwustronna komunikacja z potwierdzeniem). Ostatecznie można kombinować z opóźnieniem ale jeśli już miałbym dawać przekaźnik, to sterowany z gpio routera i niech to on go przełączy jak będzie gotowy - przy czym nie musi to być wcale przekaźnik - zależnie od rozwiązania układowego routera i peryferiów wystarczy tranzystor lub nawet zwarcie linii gpio z wejściem rx.
Bez -o działa dobrze, ale ja potrzebuję wyciągnąć tę liczbę z tekstu a nie cały tekst.
Ja problem obszedłem już dawno. Piszę tylko po to, żeby ktoś inny się nie naciął i żeby sprawdzić czy błąd występuje w innych wersjach (jak widać - nie).
U mnie działa pierwsze z wymienionych.
Backfire (10.03.1-RC6, r29342)
root@OpenWrt:~# echo "tekst 123tekst" | grep -o " [0-9]*"
123
root@OpenWrt:~#czyli wszystko OK, natomiast:
root@OpenWrt:~# echo "tekst123tekst" | grep -o "[0-9]*"wyrzuca bez końca (puste?) wyniki na konsolę.
Poniekąd słusznie, bo znak "*" oznacza dowolną ilość razy tego co przed nim, więc również zerową ilość... ale nie można przecież wyrzucać pustego wyniku, do tego więcej razy niż w ogóle długość tekstu do przeszukania... paradoks.
eko.one.pl → Posty przez mrox
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc