Android JB neodpovídá na ping

MobiLLion

Android JB neodpovídá na ping
« kdy: 30. 08. 2013, 10:48:55 »
zdravím,

prosím poraďte, jak si pomoct s následující situací. Mám zařízení s Android Jelly Bean (4.1.1) a potřebuju v určitých časových intervalech zjistit jeho síťovou dostupnost (ať už přes data operátora/T-Mobile, nebo Wi-fi). Potíž je v tom, že ping z internetu na veřejnou IP adresu zařízení neodpovídá (dohledal jsem na netu, že je to asi vlastnost JB, ICS na ping odpovídá).

Jak jinak můžu zjistit, že je můj Jelly Bean v noci on-line? Mám totiž podezření, že se mi nechtíc při delší nedostupnosti stopne proces připojení (Wi-fi i 2G/3G) a potřebuju se o tom přesvědčit/zjistit, kdy přesně se tak děje.

nejsem síťař, tak mě prosím neukamenujte. :-)


Díky,
Z.
« Poslední změna: 30. 08. 2013, 14:29:39 od Petr Krčmář »


astray

Re:Nefunkční ping na Android Jelly Bean - jak zjistit dostupnost?
« Odpověď #1 kdy: 30. 08. 2013, 12:30:25 »
Pingat zevnitř ven a monitorovat to na venkovním zařízení nebo postavit vpn a pingat přes ni.

alfi

  • ****
  • 325
    • Zobrazit profil
    • E-mail
Re:Nefunkční ping na Android Jelly Bean - jak zjistit dostupnost?
« Odpověď #2 kdy: 30. 08. 2013, 13:32:39 »
taky bych zkusil tu vpn - jinak se za NAT např. v té mobilní síti stejně dostat nedá (pokud nemáš veřejnou IP)

na druhou stranu, VPN to rádio bude udržovat naživu, tedy problém s odpojováním se přitom neprojeví. dost možná se to neprojeví ani při pravidelném pingání z telefonu ven = spojení bude držet. každopadně androidy mají spoustu různých nastavení držení spojení, tedy problém může být i tam (data všechny, data na pozadí, wifi na baterce/na nabíječcce...)

Tonda

  • *****
  • 632
    • Zobrazit profil
    • E-mail
Re:Nefunkční ping na Android Jelly Bean - jak zjistit dostupnost?
« Odpověď #3 kdy: 30. 08. 2013, 13:50:13 »
Mě telefon připojený na stejnou WiFi jako notebook na ping odpovídá (Samsung Galaxy Note N7000 Android 4.1.2)

Jinak samozřejmě správné řešení je pingat z telefonu ven, na mobilní síti se tam zvenku stejně nedostaneš, si za NATem. Dřív sem měl Dell Streak a ten měl divnou wifi, která se odpojovala a sekala, zkoušel sem několik utilit, které kontrolovaly konektivitu a v případě výpadku se snažily wifi reasociovat či vypnout a zapnout, obvyklá strategie prostě bylo pingat na default gateway. Ale tokový proces ti bude zhoršovat standby výdrž, můžeš si tam dát i nějakou appku co bude na wifi držet wakelock, ale to s výdrží nejspíš zahýbe ještě více. Je vůbec otázka je se bude navenek jevit zařízení připojené na wifi po upadnutí do deep sleep i kdyby v bdělém stavu krásně na pingy reagovalo.

astray

Re:Nefunkční ping na Android Jelly Bean - jak zjistit dostupnost?
« Odpověď #4 kdy: 30. 08. 2013, 14:02:15 »
Jak píše Tonda, na lokalní Wifi síti to pingat půjde buď z jiného zařízení připojeného na wifi (na access pointu nesmí být nastaveno client isolation) nebo přímo z access pointu, pokud má AP takovou funkčnost. Např. z mého Mikrotiku RB751-2hnd i z Linksysu WRT-54GS s OpenWRT to jde.


Re:Android JB neodpovídá na ping
« Odpověď #5 kdy: 30. 08. 2013, 14:30:24 »
Já mám nejnovější Android 4.3, předtím jsem měl 4.2.2 a ještě předtím 2.3.7 a všechny normálně na ping odpovídají. Já si pingám po IPv6 a funguje mi to na všech sítích naprosto bez problémů.

MobiLLion

Re:Android JB neodpovídá na ping
« Odpověď #6 kdy: 30. 08. 2013, 15:19:19 »
alfi: VPN nedám, nebo možná dal bych, ale nikdy jsem nic takovyho nedělal/nepotřeboval. Pingy v určitých intervalech rádio naživu neudrží, resp. tady nejde ani tak o rádio, ale o proces samotný. E-mailový klient mi taky data neudrží zapnutá, a to se synchronizuje co půl hodiny. Tohle je bug v JB - po nějaké době v režimu spánku se data cutnout, bez ohledu na nastavení. Já jen potřebuju zjistit, po jak dlouhé době, kdy přesně a tak...

astray: nepingá mi to ani v rámci wi-fi. Ještě ověřím nastavení toho AP, ale obávám se, že tady potíž nebude... 

Tonda

  • *****
  • 632
    • Zobrazit profil
    • E-mail
Re:Android JB neodpovídá na ping
« Odpověď #7 kdy: 30. 08. 2013, 15:40:32 »
Jak sem psal, v Play store na dotaz wifi lock nebo wifi wake lock najdeš spoustu aplikací, které udrží wifi zapnutou a připojenou, ovšem to patrně bude znamenat, že telefon nepůjde do deep sleep, takže se rozluč s výdrží baterie. Ale nějak mi uniká smysl takového počítání.

MobiLLion

Re:Android JB neodpovídá na ping
« Odpověď #8 kdy: 30. 08. 2013, 16:04:40 »
Tonda: smysl je ten, aby se mi i v noci aktualizovaly e-maily (chodí mi tam různé alerty), aby mi i v noci chodily zprávy přes Whats app... Když mi telefon natvrdo vypne data (ať už Wifi, nebo 3G/2G), tak jsem v háji. :-(

alfi

  • ****
  • 325
    • Zobrazit profil
    • E-mail
Re:Android JB neodpovídá na ping
« Odpověď #9 kdy: 30. 08. 2013, 16:33:00 »
Tohle je bug v JB - po nějaké době v režimu spánku se data cutnout, bez ohledu na nastavení. Já jen potřebuju zjistit, po jak dlouhé době, kdy přesně a tak...
ještě mě napadá syslog.. nevím, jestli bude použitelný i po delší době nebo je třeba připojit k PC s adb a ukládat až tam. bude tam čas a co se děje - tedy nejspíš i historie, kdy k odpojení došlo :-)
http://android.stackexchange.com/questions/14430/how-can-i-view-and-examine-the-android-log

Tonda

  • *****
  • 632
    • Zobrazit profil
    • E-mail
Re:Android JB neodpovídá na ping
« Odpověď #10 kdy: 30. 08. 2013, 16:52:31 »
Mám pocit, že triviální řešení je mít to na nabíječce, pak nejde do deep sleep, pokud si vynutíš neuspávání, tak to na tý nabíječce stejně budeš muset mít.

A když máš telefon přes den třeba hodinu v kapse aniž bys s ním cokoliv dělal, tak ten problém není, jen v noci po nějaké době nečinnosti?

Re:Android JB neodpovídá na ping
« Odpověď #11 kdy: 30. 08. 2013, 17:19:28 »
Aha, tohle je běžné chování. Ve výchozím stavu ten telefon po pár minutách přejde do hlubokého spánku a odpojí se od Wi-Fi. Procesor pak nejede, systém spí a nereaguje. Na nabíječce se to nestane a systém běží a odpovídá stále. Chování Wifi se dá nastavit: Nastavení - Wifi - Pokročilé - Wifi aktivní i v režimu spánku. Na nabíječce je pak telefon pořád vzhůru a dá se k němu kdykoliv přopojit a třeba přenášet soubory nebo se vám na něj dovolají přes VoIP.

Tonda

  • *****
  • 632
    • Zobrazit profil
    • E-mail
Re:Android JB neodpovídá na ping
« Odpověď #12 kdy: 30. 08. 2013, 17:47:37 »
Já si nechávám posílat na mail informace o pohybech na účtu a přichází mi to i když telefon není na nabíječce a nějaký čas jen tak leží, používám GMail aplikaci, občas je tam pár minut prodleva. Ono také záleží na aplikaci jak je udělaná a jestli používá Google Cloud Messaging, každopádně například u IM klientů je poměrně často kritizováno, že při usnutí dojde k odpojení, nestudoval jsem jak se trvalé připojení po síti slučuje s deep sleep. taky se to asi může lišit podle zařízení, jak moc má ohnutou/doprasenou ROM i podle nastavení různých úsporných režimů apod., těch faktorů bude mraky. Teď si vzpomínám, že sem si kdysi hrál se SMB serverem na Androidu a že se mi stávalo, že nějaký čas po usnutí se share stával nedostupným.

Ale Android má mechanizmy jak si vynutit bdělost a připojení sítě, aplikace by snad měly umět se i pravidelně probouzet a např. stahovat poštu.

Jinak SMS jsou sichr, ty chodí vždy.

Re:Android JB neodpovídá na ping
« Odpověď #13 kdy: 30. 08. 2013, 17:51:38 »
U Gmailu, IM a dalších aplikací funguje push. Telefon se nechá usnout a šetří se baterie. Ale server má možnost ho po GSM probudit a říct mu, že se něco děje. Telefon se pak normálně připojí a zjistí si, co je nového. Na rozdíl od udržování přímého spojení nebo pravidelného dotazování to výrazně šetří baterii.

Re:Android JB neodpovídá na ping
« Odpověď #14 kdy: 31. 08. 2013, 03:10:11 »
Pingy v určitých intervalech rádio naživu neudrží, resp. tady nejde ani tak o rádio, ale o proces samotný
Koukni u OpenVpn na "keepalive". Spojeni udrzi, ale rychle vybije baterku.

Jdes na to blbe. Stahni si z Marketu app Llama a nastav si neco jako "zapni wifi na 1 minutu - vypni wifi a pockej 15 minut - zapni wifi na 1 minutu..."
"Kdo v zájmu bezpečí obětuje část své svobody, v konečném důsledku přijde o svobodu i svou bezpečnost."