ooni / probe

OONI Probe network measurement tool for detecting internet censorship
https://ooni.org/install
BSD 3-Clause "New" or "Revised" License
749 stars 142 forks source link

engine: document and test impact of changing test helpers DNS names #2703

Closed bassosimone closed 2 months ago

bassosimone commented 2 months ago

We probably need to change the domain names of the THs and I was asked to estimate the impact on probes.

bassosimone commented 2 months ago

I've done some investigation and reported my results on internal Slack channels.

bassosimone commented 2 months ago

I now need to test whether oohelperd.th.prod.ooni.io is working as intended.

bassosimone commented 2 months ago

This conversation has led to some internal discussion and to https://github.com/ooni/probe/issues/2704.

bassosimone commented 2 months ago

I wrote a diff that allows me to testing the new TH. Preliminary testing shows that the code is WAI for both Web Connectivity v0.4 and v0.5. Here are the related measurements:

Here's an excerpt from my $HOME/.miniooni/engine/httpsdialer.state:

// [...]

"oohelperd.th.prod.ooni.io:443": {
      "Tactics": {
        "18.192.17.176:443 sni=cdn.ketchjs.com verify=oohelperd.th.prod.ooni.io": {
          "CountStarted": 2,
          "CountTCPConnectError": 0,
          "CountTCPConnectInterrupt": 0,
          "CountTLSHandshakeError": 0,
          "CountTLSHandshakeInterrupt": 0,
          "CountTLSVerificationError": 0,
          "CountSuccess": 2,
          "HistoTCPConnectError": {},
          "HistoTLSHandshakeError": {},
          "HistoTLSVerificationError": {},
          "LastUpdated": "2024-04-10T17:25:01.389858+02:00",
          "Tactic": {
            "Address": "18.192.17.176",
            "InitialDelay": 0,
            "Port": "443",
            "SNI": "cdn.ketchjs.com",
            "VerifyHostname": "oohelperd.th.prod.ooni.io"
          }
        }
      }
    }

// [...]

Now I am going to run this command:

export OONI_WEB_CONNECTIVITY_TH_URL=https://oohelperd.th.prod.ooni.io/
rm report.json
./miniooni web_connectivity 2>&1 | tee LOG.txt
bassosimone commented 2 months ago

Now I am going to repeat the above command with web_connectivity@v0.5.

bassosimone commented 2 months ago

Alright, both runs have shown that we can use the new control servers. I think this issue is now complete.