Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

engine: all available probe services failed #1324

Open
Mmdk2m opened this issue Jan 19, 2021 · 12 comments
Open

engine: all available probe services failed #1324

Mmdk2m opened this issue Jan 19, 2021 · 12 comments
Assignees
Labels
bug Something isn't working epic ooni/probe-engine priority/high user feedback requests that have been added to the backlog as a direct result of user feedback or testing

Comments

@Mmdk2m
Copy link

Mmdk2m commented Jan 19, 2021

I'm from Iran and it seems OONI not working.
I try with WiFi and cellular network
Network : Pars Online PJS AS16322, Iran Cell AS44244

Screenshot_20210119-011856_OONI Probe

  • Version: 2.8.0
  • Platform: Android

p.s : my ISP on WiFi is Dadeh Gostar Asr Novin but ooni detect network as Pars Online
image

@bassosimone bassosimone self-assigned this Jan 21, 2021
@bassosimone bassosimone added bug Something isn't working priority/high labels Jan 21, 2021
@bassosimone bassosimone added this to the Sprint 31 - Rhincodon milestone Jan 21, 2021
@bassosimone
Copy link
Contributor

Thank you for letting us know!

@bassosimone bassosimone changed the title Error - All available prob services failed Error - All available probe services failed Jan 27, 2021
@Fardin574
Copy link

same here on Aria Shatel Company Ltd AS31549
i tried using DoH but i faced with MaybeUpdateResorce error. i don't know if there is a relation between these two errors or not.
image

I test this again a couple hours later. i still cannot use OONI on the AS31549 network directly but with using DoH i didn't see a problem.
image

@bassosimone
Copy link
Contributor

@Mmdk2m wrote:

p.s : my ISP on WiFi is Dadeh Gostar Asr Novin but ooni detect network as Pars Online

Thanks for letting us know, I've filed as separate issue for that: https://github.com/ooni/probe-engine/issues/1204

@bassosimone
Copy link
Contributor

bassosimone commented Feb 1, 2021

@Mmdk2m, @Fardin574 thank you for letting us know of this issue <3. We are testing a fix already, but it is not immediate for us to release it. If you are willing to help us testing, perhaps join our slack channel or, as an alternative, contact me privately. My work email is public on my personal GitHub page (@bassosimone) and my PGP key is also public via the GitHub API (https://api.github.com/users/bassosimone/gpg_keys) and here https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x738877aa6c829f26a431c5f480b691277733d95b.

@bassosimone
Copy link
Contributor

Moving to Sprint 32. In Sprint 31 we have started testing a fix. The main issue blocking us at this time seems thinking about how to integrate this fix into our build process. This is something we will think about in Sprint 32, as this issue is high-pri for us now.

@bassosimone
Copy link
Contributor

We have made progress with @FedericoCeratto and @hellais. We discussed a sound strategy for shipping the Psiphon config along with Go 1.16 using the //go:embed feature. This is the plan:

  1. add the encrypted psiphon config to the repository and //go:embed it
  2. add an empty decryption key and //go:embed it
  3. when we make our own builds, replace the key before building
  4. if psiphon is requested, attempt decrypt and, if successful, configure and use psiphon
  5. merge the --tunnel and --proxy features so that --proxy psiphon:/// is the new --tunnel=psiphon
  6. expose a proxy setting into advanced settings with the possibility of choosing psiphon or a custom socks5 proxy

Once this is done, we would probably want to ship out APKs for testing.

@bassosimone bassosimone changed the title Error - All available probe services failed engine: all available probe services failed Feb 15, 2021
@bassosimone
Copy link
Contributor

We are refactoring and redesigning the probeservices package to reduce the possibility of this happening. It seems a bit more work than we anticipated, but we've made progress in this Sprint and we have some PRs that are landing. I am going to move this issue into the next development Sprint and this will continue to be a very high priority issue for me.

@bassosimone bassosimone added the user feedback requests that have been added to the backlog as a direct result of user feedback or testing label Mar 15, 2021
@bassosimone
Copy link
Contributor

We are going to do more work to address this problem in #1405. We will keep this issue open until we have introduced enough improvements that the original problem is significantly less likely to occur.

@bassosimone
Copy link
Contributor

bassosimone commented Apr 3, 2021

We have added support for embedding the Psiphon config: ooni/probe-cli#285. This opens up the possibility of always using Psiphon as a proxy: #985. (The overall plan I am following is at #1324 (comment).)

@bassosimone
Copy link
Contributor

bassosimone commented Apr 14, 2021

We have identified the underlying reason for the problem for Android: #1444. We have just received today a report that there are issues also for iOS. This problem on iOS needs more investigation. It may be worth figuring out whether this device is arm or arm64. Maybe, if it's arm, it's reasonable that there is no AES?

Update: it's "Apple A14 Bionic ARM 64", so we need to figure out whether the processor flags are missing also on this case or whether this is an unrelated kind of problem. (The solution at ooni/probe-cli#285 is good anyway for this use case.)

@bassosimone
Copy link
Contributor

bassosimone commented May 20, 2021

Here's another status update: we are landing soon a new release of OONI Probe Android that includes both the fingerprinting enhancements and the possibility of configuring a proxy. I've branched off issues describing how to continue this work. I have also just finished writing a blog post in which I recount what we did to fix this issue and the upcoming changes.

The related Android PR is ooni/probe-android#423. When this is merged, we're good to go!

(I would like to thank here all the users who reported this issue and who helped to further investigate it as well as to develop and test fixes for that: thank you so much! <3)

@bassosimone
Copy link
Contributor

In ooni/probe-cli#413, I added a new factory for HTTP transports that ensures there is always a read timeout when we're using HTTP, therefore avoiding any lingering connection when there is the blocking condition described in #1609.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working epic ooni/probe-engine priority/high user feedback requests that have been added to the backlog as a direct result of user feedback or testing
Projects
Status: No status
Development

No branches or pull requests

4 participants