User Guide: OONI Probe Desktop App

Last updated: 25th October 2022

OONI Probe Desktop version: 3.7.0

Access the OONI Probe Desktop user guide in other languages: فارسی, Русский, Deutsch, Türkçe, Tiếng Việt, Português

Install OONI Probe Desktop

OONI Probe is a free and open source app that you can use to measure internet censorship and other forms of network interference. This user guide provides step-by-step instructions on how to install, run, and customize your use of the OONI Probe desktop app.

What you will get from this guide:

Upon reading this guide, we hope you will feel empowered to share your OONI Probe knowledge and skills with others!

The following table of contents should help with navigating the guide.

Introduction to OONI Probe

OONI Probe is free and open source software designed to measure internet censorship and other forms of network interference. Since 2012, this software has been developed by the Open Observatory of Network Interference (OONI), a non-profit project that was originally born out of the Tor Project.

With the OONI Probe app (available for both mobile and desktop platforms), you can run network measurement tests to check the following:

As soon as you run OONI Probe, your test results are automatically sent to OONI servers, processed, and openly published in near real-time (unless you opt-out of the publication of your test results).

OONI openly publishes OONI Probe test results gathered from around the world to:

To enable public access to OONI Probe test results (more commonly referred to as “measurements”), the OONI team makes them available on OONI Explorer: a web platform that provides charts based on measurement coverage and a search tool for exploring the measurements.

As OONI Explorer hosts more than 850 million network measurements collected from 24,500 networks in 241 countries and territories since 2012, it is likely the largest global open data resource on internet censorship to date.

By running OONI Probe, you will:

This guide aims to walk you through using the OONI Probe desktop app so that you can join a global community measuring internet censorship.

Disclaimer

As OONI Probe is designed to measure internet censorship, running it may be risky for some people in some countries.

Some things to take into account:

To learn more about potential risks associated with the use of OONI Probe, please refer to our relevant documentation.

Installing OONI Probe Desktop

The OONI Probe desktop app is available for Windows and macOS. If you’re on Linux, please install the OONI Probe Command Line Interface (CLI).

You can install the OONI Probe desktop app (on Windows and macOS) through the following steps:

Step 1. Visit the OONI Probe Desktop installation page (on the OONI website): </install/desktop>

Install OONI Probe Desktop

Step 2. Click the Download button to download OONI Probe. The page will propose an OONI Probe version that is relevant for your operating system (e.g. macOS). If you need to choose a version for a different operating system, please click the Other Platforms button.

Download OONI Probe Desktop
OS version

Step 3. Once you have downloaded OONI Probe, double-click on the downloaded file to install OONI Probe.

On macOS, drag and drop the OONI Probe icon into the Application folder.

macOS Application folder

And then click Open to install the OONI Probe app on macOS.

macOS screen on More Info

On Windows (Windows 10), click More info in the following screen:

Windows screen on More Info

And then click Run anyway to install the OONI Probe app on Windows.

Windows screen on Run anyway

Step 4. Open your OONI Probe desktop app. On macOS, you can open your OONI Probe app from the Application folder. On Windows, launch OONI Probe from the desktop shortcut.

Now that you have installed and opened your OONI Probe desktop app, you will be presented with some basic information about OONI Probe as part of the onboarding process.

You will also learn about potential risks associated with running OONI Probe. To ensure that you understand these potential risks, we have included a short quiz to practically acquire your consent. Answering the quiz questions correctly is a requirement for using OONI Probe.

In the final step of the onboarding process, we share the types of data that are collected by default when running OONI Probe (linking to our Data Policy for further information). You can opt-in to sharing crash reports and app usage metrics to help us improve OONI Probe.

Below we walk you through the onboarding process.

Step 1. Once you have read basic information about OONI Probe, click Got It.

What is OONI Probe

Step 2. The next screen shares a summary of potential risks associated with running OONI Probe. Click Learn more to read our documentation explaining potential risks.

Learn more

Step 3. Once you have learned about potential risks associated with running OONI Probe, click I understand.

Understand risks

Step 4. The following quiz is based on the information you just read in the previous screen. Click True to demonstrate your understanding of the statement.

Quiz 1

You will see that True is the correct answer. If you click False, you will receive an explanation on why the answer is wrong.

Tick

Step 5. Click True to demonstrate your understanding of the statement (in the second part of the quiz).

Quiz 2

You will see that True is the correct answer. If you click False, you will receive an explanation on why the answer is wrong.

Tick

Step 6. The following screen asks you to share crash reports that can help us identify and fix OONI Probe bugs. Please click Yes to share crash reports and help us improve OONI Probe.

Tick

Step 7. The following screen shares information about the types of data that OONI collects and publishes by default (every time you run OONI Probe). You can learn more by clicking on OONI’s Data Policy on the screen.

Lets Go

Step 8. Click Let’s Go if you are ready to share data about your measurements with us.

You have now completed the onboarding process and are ready to start using OONI Probe!

Dashboard

Optional Step 9. If you would like to change your settings to not opt-in to sharing crash reports with us, click Settings. This will redirect you to the OONI Probe Settings screen, where you can check and change all of the default settings. The submission of crash reports is disabled by default, and only enabled if you click the Let’s Go button (from Step 7 above), or if you manually enable the relevant setting.

Default settings

Detailed information about OONI Probe settings can be found in the Configuring your OONI Probe settings section of this guide.

Running OONI Probe Desktop

Now that you have completed the onboarding process, you can start running OONI Probe to measure internet censorship!

The Dashboard of the OONI Probe desktop app includes 5 cards, each of which entails OONI Probe tests:

Step 1. Click Run to run your first OONI Probe tests.

Dashboard

This will run all OONI Probe tests (included in all cards) in one go!

Testing websites
Testing Telegram
Testing Psiphon
Running NDT
Testing for middleboxes

OONI Probe should have run all tests within a few minutes (though this depends on the performance of the network you’re connected to, and may take longer in some cases). If the performance of your network is not good enough and the tests take too long, you can stop the ongoing test by clicking the cross button in the top right corner.

Stop testing

Click the OK button to stop the test.

Stop testing

Your OONI Probe test results will automatically get published on OONI Explorer and on the OONI API.

Would you rather limit your testing to a specific test type (card)? In the following sections, we share instructions on how to do that.

Measuring the blocking of websites

If you only want to measure the blocking of websites, you can do so through the following steps:

Step 1. Click the Websites card in the Dashboard of your OONI Probe desktop app.

Dashboard

Step 2. Click Run in the Websites card.

Inside Websites card

You are now running OONI’s Web Connectivity test to measure the blocking of websites.

Testing websites

Your OONI Probe test results will automatically get published on OONI Explorer and on the OONI API.

Which websites are tested?

By default, you will test websites included in the following 2 lists:

No matter which country you’re running OONI Probe from, you will always test websites from the global test list.

OONI Probe will automatically determine which country-specific list to pick for testing based on the country you’re running OONI Probe from. For example, if you run OONI Probe in Brazil, you will test websites from the global test list and from the Brazilian test list. If you travel to Germany and run OONI Probe, it will test the websites from the global and German test lists. But if you’re running OONI Probe from a country which doesn’t have a country-specific test list yet (because it hasn’t been created), you will only test websites from the global list.

If you would like to contribute to the Citizen Lab test lists (which include the default websites tested by OONI Probe users worldwide), please refer to our relevant documentation.

Note: OONI Probe will only test as many websites as it’s able to test within 90 seconds when you click “Run” (either from the Dashboard or from the Websites card). These websites (which are tested within 90 seconds) are randomly selected from the global and (relevant) country-specific test lists. Every time you click “Run”, you will test a different, random selection of websites (from the global and country-specific test lists) within 90 seconds. Therefore, the more times you click “Run”, the more websites you will test.

If you would like to test a larger selection of websites, or test entirely different websites, please refer to the Customizing website testing section of this guide.

Measuring the blocking of instant messaging apps

If you only want to measure the blocking of instant messaging apps, you can do so through the following steps:

Step 1. Click the Instant Messaging card in the Dashboard of your OONI Probe desktop app.

Dashboard

Step 2. Click Run in the Instant Messaging card.

Inside IM card

You are now running OONI’s WhatsApp, Facebook Messenger, Telegram, and Signal tests to measure the blocking of these apps.

Testing Telegram

Your OONI Probe test results will automatically get published on OONI Explorer and on the OONI API.

Measuring the blocking of circumvention tools

If you only want to measure the blocking of censorship circumvention tools, you can do so through the following steps:

Step 1. Click the Circumvention card in the Dashboard of your OONI Probe desktop app.

Dashboard

Step 2. Click Run in the Circumvention card.

Inside Circumvention card

You are now running OONI’s Tor and Psiphon tests to measure the reachability of these tools.

Testing Psiphon

Your OONI Probe test results will automatically get published on OONI Explorer and on the OONI API.

Measuring network performance

If you only want to measure network performance, you can do so through the following steps:

Step 1. Click the Performance card in the Dashboard of your OONI Probe desktop app.

Dashboard

Step 2. Click Run in the Performance card.

Inside Performance card

You are now running the NDT speed test and the DASH video streaming performance test.

Running NDT

Your test results will automatically get published on OONI Explorer and on the OONI API.

Disclaimer: The NDT and DASH tests are conducted against third-party servers provided by Measurement Lab (M-Lab). If you run these tests, M-Lab will collect and publish your IP address for research purposes, irrespective of your OONI Probe settings. Learn more about M-Lab’s data governance through its privacy statement.

Measuring the presence of middleboxes

If you only want to measure networks to detect the presence of middleboxes (and potential signs of network tampering), you can do so through the following steps:

Step 1. Click the Middleboxes card in the Dashboard of your OONI Probe desktop app.

Dashboard

Step 2. Click Run in the Middleboxes card.

Inside Middleboxes card

You are now running OONI’s middlebox tests (HTTP Header Field Manipulation test and HTTP Invalid Request Line test).

Testing for middleboxes

Your OONI Probe test results will automatically get published on OONI Explorer and on the OONI API.

Running experimental tests

If you only want to run new experimental tests developed by the OONI team, you can do so through the following steps:

Step 1. Click the Experimental card in the Dashboard of your OONI Probe desktop app.

Dashboard experimental

Step 2. Click Run in the Experimental card.

Inside Experimental card

You are now running the experimental tests developed by the OONI team.

Running experimental

Automated OONI Probe testing

Instead of having to remember to manually run tests, you can enable automated testing in the settings of your OONI Probe desktop app and OONI Probe will run tests automatically for you!

By enabling automated testing, OONI Probe will run all tests in the background multiple times per day (excluding the bandwidth-intensive performance tests), testing a different set of websites (from the Citizen Lab test lists) each time. To avoid cluttering the Test Results section of your app, these test results are automatically published on OONI Explorer in near real-time (but are not visible through the Test Results section).

With automated OONI Probe testing, you can regularly contribute censorship measurements (without having to do anything), enabling the internet freedom community to monitor and detect censorship events in your country over time. If you are concerned about risks connected with regular testing of specific websites categories, you can limit the list of categories to be tested through Test options section of OONI Probe settings.

You can enable automated OONI Probe testing through the following steps:

Step 1. Click Settings in the sidebar of your OONI Probe desktop app.

Automated testing disabled

Under the Automated testing section of the settings, you will see that automated OONI Probe testing is disabled by default.

Step 2. Enable the Run tests automatically option in the settings.

Automated testing enabled

You have now enabled automated OONI Probe testing! OONI Probe will run tests automatically multiple times per day (without user intervention), and the test results will automatically get published on OONI Explorer.

In general, if you haven’t enabled automated testing, you will occasionally view the following pop-up window, asking if you would like to enable automated testing.

Automated testing window

To enable automated testing, you can click Sounds Great. If you would like to receive a reminder to enable automated testing at a later stage, click Remind Me later.

Customizing your website testing

By default, when testing websites with OONI Probe, you measure the URLs included in the Citizen Lab test lists. In other words, if you just click “Run” (in the Dashboard or Websites card of the OONI Probe app), you will test a random selection of websites taken from the Citizen Lab test lists. These lists have been created through collaboration with in-country researchers and experts. As they are openly available on GitHub, anyone can potentially review them, contribute URLs, and propose the removal of certain URLs. And it is important that we continue reviewing and updating these lists, since they contain the websites that are tested by most OONI Probe users regularly around the world.

But if you would rather limit your testing to websites of your choice, you can do so through the OONI Probe desktop app.

You can customize your website testing in the following ways:

The following sections explain how you can do each of the above.

Testing specific website categories

When you click “Run” in the OONI Probe app, you test websites from the global and (relevant) country-specific Citizen Lab test lists.

These websites have been categorized based on 30 standardized categories. These categories range from news media, culture, and human rights issues to more provocative or objectionable categories, like pornography (the latter are included because they are more likely to be blocked, enabling the detection of censorship techniques adopted by ISPs).

By default, all 30 categories are enabled in the OONI Probe desktop app to encourage the testing of more diverse websites, enhancing the possibility of discovering more forms of website censorship.

But if you don’t feel comfortable testing all 30 categories of websites (particularly if they include content that is illegal, provocative, or objectionable in your country), or are only interested in testing certain types of content (such as news media), you can limit your OONI Probe testing to the website categories of your choice. The same categories will be tested during the background tests if you enable Automated testing option.

Step 1. Click Settings in your OONI Probe desktop app.

Website category settings

Under Test options in the settings, you will see that 30 categories of websites are enabled by default.

Step 2. Click the Edit button (under “Website categories to test”).

Edit website categories

You will now see the 30 categories of websites that OONI Probe tests by default. All of these categories are enabled.

Website categories

Step 3. Disable the website categories that you do not want to test.

Website categories disabled

In the above example, we have disabled 2 categories (“Pornography” and “Provocative Attire”).

Step 4. Click Save.

When you go back, you can see that only 28 categories are now enabled (since 2 have been disabled).

28 website categories enabled

You can revisit this setting anytime to enable or disable the website categories of your choice.

Testing websites of your choice

You can test the websites you care about directly through the following steps:

Step 1. Click the Websites card in your OONI Probe desktop app.

Dashboard

Step 2. Click the Choose websites button inside the Websites card.

Choose websites button

You will now see a screen where you can add the website(s) you want to test.

Choose websites screen

Step 3. Type the URL of the website you want to test. In the following example, we have typed https://www.facebook.com/.

Add facebook

Important: Please ensure that the URL is typed correctly. If it is mis-typed, OONI Probe will not test the intended website and this will potentially lead to inaccurate test results.

A few things to keep in mind:

To ensure that a URL is typed accurately, please check how it appears when accessed from a normal browser.

Step 4. Click Add website to create a new line for adding another website for testing.

Step 5. Type another URL that you would like to test. In the following example, we have added https://twitter.com/.

Add twitter

If you change your mind and would like to remove any of the URLs you have added, you can do so by clicking on the red icon next to each URL.

You can continue to add as many URLs as you like. In the following example, we have added https://www.gutenberg.org/.

Add gutenberg

Step 6. Click Run to test all of the websites you have added.

You will now see OONI Probe testing the websites of your choice!

Testing gutenberg

Your OONI Probe test results will automatically get published on OONI Explorer and on the OONI API.

Testing all websites from the Citizen Lab test lists

The OONI Probe desktop app only tests as many websites as it can connect to within 90 seconds (based on the default settings).

If you’re connected to WiFi and would like to test all websites from the (relevant) Citizen Lab test lists in one go, you can do so through the following steps:

Step 1. Click Settings in the sidebar of your OONI Probe desktop app.

Settings

Under Test options in the settings, you will see that the Limit test duration option (which limits website testing to a specific time duration) is enabled by default.

Step 2. Disable Limit test duration.

Limit test duration

There is now no time limit in your website testing. This means that OONI Probe can test all websites included in the relevant Citizen Lab test lists every time you click “Run”.

Test duration disabled

Alternatively: If you would like to test more websites within a longer time duration (but without necessarily disabling the time limit and testing all websites), you can do so through the following steps:

Step 1. Go to Test duration under the Test options section of the settings.

Test duration

By default, the website testing duration is set to 90 seconds. This means that OONI Probe will only test as many websites (from the relevant Citizen Lab test lists) as it can connect to within 90 seconds.

Step 2. To change the test duration, type the number of seconds that you would like OONI Probe to test websites for. In the following example, we have typed 360 which would make OONI Probe test websites for 6 minutes.

360 for test duration

You have now changed the website testing duration of your OONI Probe desktop app.

Accessing your OONI Probe test results

As soon as you run an OONI Probe test, you can immediately access the test results directly in your OONI Probe desktop app.

Step 1. Click Test Results in the sidebar of your OONI Probe desktop app.

Test Results

You are now presented with an overview of all your OONI Probe test results, which are presented chronologically, with the latest tests listed first. In this overview, the test results are grouped based on the 5 thematic cards of the app (“Websites”, “Instant Messaging”, “Circumvention”, “Performance”, “Middleboxes”).

In each thematic test result card, you have an overview of:

This overview can potentially help with comparing results across networks (if you run tests on many different networks), and provides a bird’s-eye view of the findings.

In the top header of the Test Results screen, we share an overview of:

Header

While the Test Results screen provides an initial overview of results, you can dig deeper and access the data pertaining to each test, as explained in the following sections.

Websites

You can access your OONI Probe results from the testing of websites through the following steps:

Step 1. Click Websites in the Test Results screen of your OONI Probe desktop app.

Test Results

You will now see a list of all the websites that you tested in a specific testing session.

Websites tested

In the top header, we share an overview of your website testing results. Next to each tested URL, there will either be a green tick (indicating website accessibility), or a red cross (indicating potential website blocking).

Step 2. Click on the row of a tested website (to access the data from the testing of that website).

Facebook measurement

You now have access to the data pertaining to the testing of a specific website.

The above measurement page pertains to the testing of https://www.facebook.com/. Through this measurement page, we can see that https://www.facebook.com/ was found accessible when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 13:58 local time.

If a website was found (potentially) blocked, its measurement page would include an orange header with an exclamation mark, as illustrated below.

Gutenberg measurement

In this case, we can see that https://www.gutenberg.org presented signs of blocking (“anomaly”) when tested on Vodafone Italia (AS30722) on 30th March 2021 at 15:13 local time. In particular, we can see that it presented signs of DNS tampering (based on the heuristics of the OONI Web Connectivity test). This means that Vodafone Italia may have blocked access to https://www.gutenberg.org (on 30th March 2021) by means of DNS.

As false positives can occur, we annotate test results that failed to meet all of the criteria of our Web Connectivity test as “anomalies” (rather than “confirmed blocked”), indicating that the tested website might be blocked.

In evaluating the blocking of a website, it is useful to examine relevant measurements (from the testing of a specific website on the same network over time) in aggregate, which you can do through OONI Explorer (where we publish all test results). OONI Explorer also displays measurements for all “confirmed blocked” cases, where we automatically confirm the blocking of websites based on block pages.

Instant Messaging

You can access your OONI Probe results from the testing of instant messaging apps through the following steps:

Step 1. Click Instant Messaging in the Test Results screen of your OONI Probe desktop app.

Test Results

You will now see a list of the instant messaging apps (WhatsApp, Facebook Messenger, Telegram, Signal) that you have tested in a specific testing session.

IM apps tested

In the top header, we share an overview of your instant messaging app testing results. Next to each tested app, there will either be a green tick (indicating app reachability), or a red cross (indicating potential app blocking).

Step 2. Click on the row of a tested app (to access the data from the testing of that app).

WhatsApp measurement

The above measurement page pertains to the testing of WhatsApp. We can see that WhatsApp was found accessible when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:19 local time. This conclusion is reached because OONI’s WhatsApp test was able to successfully connect to WhatsApp’s endpoints, registration service, and web interface (web.whatsapp.com).

If WhatsApp was found (potentially) blocked, this measurement page would show relevant information (based on the heuristics of OONI’s WhatsApp test).

Similarly, you can access Telegram test results through the instant messaging results in your OONI Probe app.

Telegram measurement

In this case, we can see that Telegram was found accessible when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:19 local time. This conclusion is reached because OONI’s Telegram test was able to successfully connect to Telegram’s endpoints and web interface (web.telegram.org).

If Telegram was found (potentially) blocked, this measurement page would show relevant information (based on the heuristics of OONI’s Telegram test).

You can also access Facebook Messenger test results through the instant messaging results in your OONI Probe app.

Facebook Messenger measurement

In this case, we can see that Facebook Messenger was found accessible when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 13:58 local time. This conclusion is reached because OONI’s Facebook Messenger test was able to successfully connect to Facebook’s endpoints and resolve to Facebook IP addresses.

If Facebook Messenger was found (potentially) blocked, this measurement page would show relevant information (based on the heuristics of OONI’s Facebook Messenger test).

You can also access Signal test results through the instant messaging results in your OONI Probe app.

Signal measurement

In this case, we can see that Signal was found accessible when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:19 local time. This conclusion is reached because OONI’s Signal test was able to successfully connect to Signal’s endpoints.

If Signal was found (potentially) blocked, this measurement page would show relevant information (based on the heuristics of OONI’s Signal test).

In all cases, we recommend referring to OONI measurements published on OONI Explorer, where you can examine results in aggregate (which can help with ruling out false positives and confirming blocking).

Circumvention

You can access your OONI Probe results from the testing of circumvention tools through the following steps:

Step 1. Click Circumvention in the Test Results screen of your OONI Probe desktop app.

Test Results

You will now see a list of the censorship circumvention tools (Psiphon, Tor) that you have tested as part of a specific testing session.

Circumvention tools tested

In the top header, we share an overview of your circumvention tool testing results. Next to each tested tool, there will either be a green tick (indicating reachability), or a red cross (indicating potential blocking).

Step 2. Click on the row of a tested tool (to access the data from its testing).

Psiphon measurement

The above measurement page pertains to the testing of Psiphon. We can see that Psiphon was reachable when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:17 local time. This conclusion is reached because OONI’s Psiphon test was able to successfully bootstrap a Psiphon connection.

If Psiphon was found (potentially) blocked, this test result would show relevant information (based on the heuristics of OONI’s Psiphon test).

Similarly, you can access Tor test results through the circumvention results in your OONI Probe app.

Tor measurement

In this case, we can see that Tor was reachable when tested on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:17 local time. This conclusion is reached because OONI’s Tor test was able to successfully connect to most of the default Tor bridges and to all Tor directory authorities.

If Tor was found (potentially) blocked, this test result would show relevant information (based on the heuristics of OONI’s Tor test).

In all cases, we recommend referring to OONI measurements published on OONI Explorer, where you can examine results in aggregate (which can help with ruling out false positives and confirming blocking).

Performance

You can access your OONI Probe results from the testing of your network’s performance through the following steps:

Step 1. Click Performance in the Test Results screen of your OONI Probe desktop app.

Test Results

You will now see a list of the performance tests that you have run in a specific testing session.

Performance tests

In the top header, we share an overview of the results, along with the date and time of testing, and the country and network on which these tests were run. The main performance findings are also listed next to each test result.

Step 2. Click on the row of a test result (to access relevant data).

NDT measurement

The above measurement page is from an NDT speed test. We can see that when this NDT speed test was performed, the download speed was 21.4 megabits per second, the upload speed was 19.7 megabits per second, and it took 147.481 milliseconds to establish a connection to an M-Lab server. This indicates good internet speed, given that the average ping (to this M-Lab server) is 953.267 milliseconds.

You can compare your NDT test results with what is offered in your internet plan provided by your Internet Service Provider (ISP).

You can access DASH results through the performance results in your OONI Probe app.

DASH measurement

In this case, we can see that a DASH video streaming test was run on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:21 local time. When the test was performed, it was possible to stream up to 480p video without buffering, with the median bitrate being 3.6 megabits per second. This indicates that the user could only stream low definition videos on that network if the streaming server was co-located with the measurement server.

You can compare your DASH test results with what is offered in your internet plan provided by your Internet Service Provider (ISP).

Middleboxes

A middlebox is a computer networking device that transforms, inspects, filters, or otherwise manipulates traffic for purposes other than packet forwarding. Many Internet Service Providers (ISPs) around the world use middleboxes to improve network performance, provide users with faster access to websites, and for a number of other networking purposes. Sometimes though, middleboxes are also used to implement internet censorship and/or surveillance.

You can access your OONI Probe results from the testing of network tampering (with the goal of detecting the presence of middleboxes) through the following steps:

Step 1. Click Middleboxes in the Test Results screen of your OONI Probe desktop app.

Test Results

You will now see a list of the middlebox tests (HTTP Invalid Request Line test and HTTP Header Field Manipulation test) that you have run in a specific testing session.

Middlebox tests

In the top header, we share an overview of the results (in this case, no middleboxes were detected), along with the date and time of testing, and the country and network on which these tests were run.

Step 2. Click on the row of a test result (to access relevant data).

HTTP Invalid Request Line measurement

In the above case, we can see that the HTTP Invalid Request Line test was run on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:20 local time. When this test was performed, it sent an invalid HTTP request line (containing an invalid HTTP version number, an invalid field count and a huge request method) to an echo service listening on the standard HTTP port. The echo service (a debugging and measurement tool which simply sends back any data it receives) sent the invalid HTTP request line back to us, exactly as it received it. This indicates that there is no visible middlebox or traffic manipulation on the tested network.

If, however, a middlebox was present on the tested network, the invalid HTTP request line would have been intercepted by the middlebox, potentially triggering an error that would have been sent back to us by the echo service. Such errors indicate that software for traffic manipulation is likely placed on the tested network, though it’s not always clear what that software is.

Similarly, you can access OONI’s HTTP Header Field Manipulation test results through the middlebox results in your OONI Probe app.

HTTP Header Field Manipulation measurement

In the above case, we can see that the HTTP Header Field Manipulation test was run on Magticom Ltd. (AS16010) on 3rd August 2022 at 12:20 local time. When this test was performed, it emulated an HTTP request towards a backend control server (which sends back any data it receives), but sent HTTP headers with variations in capitalization (i.e. non-canonical HTTP headers). Since we received the HTTP headers exactly as we sent them, there is no visible middlebox or traffic manipulation on the tested network.

If, however, a middlebox was present on the tested network, it may have normalized the invalid headers that we sent or added extra headers. Depending on whether the HTTP headers that we send and receive from a backend control server are the same or not, we are able to evaluate whether a middlebox is present on the tested network.

Sharing your OONI Probe test results

Through each OONI Probe test result, you can access features that enable you to:

Step 1. Access any OONI Probe test result (for details on how to find OONI Probe test results, please refer to the previous section of this guide).

Measurement

In the following sections, we dive into each feature.

Raw data

Every OONI Probe test result provides an overview of the findings. The actual data (i.e. the raw measurement data) that each test result is based on is available through the Data button on each test result screen.

In other words, if you have tested https://www.facebook.com, the test result page will provide an overview of the finding (for example: Accessible), but the network measurement data provides the details of the testing. For example, if the website wasn’t accessible, it would show how and why the site may be blocked.

It is useful to access the raw measurement data because:

You can access and share the raw measurement data through the following steps:

Step 1. Click the Data button on an OONI Probe test result screen.

Data button

You now have access to the raw measurement data pertaining to the OONI Probe test result you selected.

Raw data

You can click on the arrows (such as the arrow next to test_keys) to expand the view of the data.

Step 2. To copy and share the raw data (for example, with technologists who can help interpret it), click on the copy icon at the start of the data (in the root row, as indicated below).

Copy raw data

You have now copied the raw data and can share it with your contacts.

Accessing your measurement on OONI Explorer

Perhaps you’re interested in viewing your OONI Probe test result on OONI Explorer or accessing a measurement link that you can subsequently share with your contacts or link to (for example, in a research report or tweet).

Step 1. Click the Show in OONI Explorer button on an OONI Probe test result screen.

Show in OONI Explorer button

This will open the relevant OONI Probe test result in your web browser, directly on OONI Explorer. For example, for the facebook measurement mentioned above, that would be the following page.

Measurement viewed on OONI Explorer

You now have access to your OONI Probe measurement on OONI Explorer. If you scroll down on that measurement page, you will view the raw measurement data as well. You can now link to or share that measurement by sharing the URL of that measurement page.

Configuring your OONI Probe settings

You can customize your use of OONI Probe through the settings.

Step 1. Click Settings in the sidebar of your OONI Probe app.

Settings

You can now see all of the OONI Probe desktop app settings.

In the following sections, we walk you through each setting.

Language

Thanks to support from the Localization Lab community, the OONI Probe apps are available in multiple languages.

You can change the language of your OONI Probe desktop app through the following steps:

Step 1. Click on the drop-down menu under Language in the settings.

Languages

Step 2. Select a language from the drop-down menu.

Your OONI Probe desktop app has now switched to the language that you selected.

If you would like to review and/or contribute an OONI Probe translation, please consider joining us on Transifex.

Test options

The website testing settings have already been covered in previous sections of this guide. Please refer to the ”Customizing your website testing” section.

Automated testing

The automated OONI Probe testing settings have already been covered in previous sections of this guide. Please refer to the “Automated OONI Probe testing” section.

Privacy

The Privacy section of the OONI Probe settings pertains to the publication of OONI Probe test results, and the submission of crash reports.

Privacy settings enabled

By default, the automatic publication of your OONI Probe test results is enabled, while the submission of crash reports is disabled (unless you opted-in during the onboarding).

We encourage the publication of OONI Probe test results because they can help increase transparency of internet censorship and support the research and advocacy efforts of the internet freedom community.

If you publish your OONI Probe test results, that will involve the following data:

Further information is available through our Data Policy.

If you opt in to sharing crash reports with us, you will share information that is essential for identifying bugs and improving the performance of the OONI Probe app. These crash reports include the OONI Probe software version and information about why and how a specific OONI Probe function failed to work as expected.

You can opt out of publishing your OONI Probe test results and/or sharing crash reports with us by disabling the relevant settings.

Privacy settings disabled

Thank you for reading this guide, and thank you for running OONI Probe!