Skip to content

Snowflake domain front blocked in some ISPs in Iran; suggested workarounds #197

Description

@wkrp

The number of Snowflake users has decreased by about 20% since 2023-01-16, five days ago. The cause has been determined to be the blocking of the domain name cdn.sstatic.net, which is the default for one of Snowflake's rendezvous methods.

Snowflake currently supports two rendezvous methods: domain fronting and AMP cache. Accordingly, there are two ways to work around the blocking of the default front domain: change to a different front domain, or use the AMP cache rendezvous.

AMP cache rendezvous is easier to activate, so I suggest trying that first.

AMP cache rendezvous

On Orbot and Onion Browser, you just have to select a menu option. On Tor Browser (desktop and Android), you have to enter a custom bridge line. More information about changing bridges (فارسی).

Orbot for Android

  1. From the home screen, tap the Use Bridges toggle.
  2. Select the option Connect through other Tor users using Snowflake (Method 2 - AMP).
  3. Go back to the home screen and tap Start.

Orbot for iOS

  1. Tap the ⚙️ icon (top right).
  2. From the dropdown, select Bridge Configuration, then Built-in snowflake (AMP). Then tap Save.
  3. Go back to the home screen and tap Start.

Onion Browser for iOS

  1. Tap the onion icon.
  2. From the dropdown, select Bridge Configuration, then Built-in snowflake (AMP).
  3. Tap Connect.

Tor Browser for Android

  1. Tap the ⚙️ icon.
  2. Tap Config Bridge. Toggle Use a Bridge to "on", then tap Provide a Bridge I know.
  3. Copy and paste this entire bridge address:
    snowflake 192.0.2.4:80 8838024498816A039FCBBAB14E6F40A0843051FA fingerprint=8838024498816A039FCBBAB14E6F40A0843051FA url=https://snowflake-broker.torproject.net/ ampcache=https://cdn.ampproject.org/ front=www.google.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.net:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn
  4. Go back to the home screen and tap Connect.

You can experiment with different Google-related domain names for front=www.google.com. For example, front=cdn.ampproject.org.

Tor Browser for desktop

  1. Click (hamburger menu) in the toolbar and then click Settings.
  2. Click Connection in the sidebar, find the Bridges section, then click the Add a Bridge Manually... button.
  3. Copy and paste this entire bridge address:
    snowflake 192.0.2.4:80 8838024498816A039FCBBAB14E6F40A0843051FA fingerprint=8838024498816A039FCBBAB14E6F40A0843051FA url=https://snowflake-broker.torproject.net/ ampcache=https://cdn.ampproject.org/ front=www.google.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.net:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn
  4. It will start to connect automatically. Browse to a web page. Click the View Logs... button under Advanced to troubleshoot the connection if needed.

You can experiment with different Google-related domain names for front=www.google.com. For example, front=cdn.ampproject.org.

Change the domain front

You can edit an existing bridge line that has url=https://snowflake-broker.torproject.net.global.prod.fastly.net/, and change front=cdn.sstatic.net to something else. Here is a list of possible alternatives:

front=fastly.jsdelivr.net
front=foursquare.com
front=www.shazam.com
front=www.jimdo.com
front=www.rvu.co.uk
front=js.sentry-cdn.com
front=www.drupal.org
front=www.1stdibs.com
front=www.filestack.com

For example, a complete bridge line would be
snowflake 192.0.2.4:80 8838024498816A039FCBBAB14E6F40A0843051FA fingerprint=8838024498816A039FCBBAB14E6F40A0843051FA url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ front=fastly.jsdelivr.net ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.net:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn

More information about changing bridges (فارسی).

Evidence of blocking

This graph shows the top 6 countries by Snowflake users. You can see a decrease in IR and US since 2023-01-16. We suspect many of the users that are being attributed to US are actually from IR, because of geolocation errors.

Snowflake users by country, January 2023

From OONI MAT charts, we see an increase in anomalies when attempting to use Snowflake, since 2023-01-16:

https://explorer.ooni.org/chart/mat?probe_cc=IR&test_name=torsf&since=2023-01-06&until=2023-01-22&axis_x=measurement_start_day
Iran, Tor test

Checking the Web Connectivity results for cdn.sstatic.net, we see anomalies starting 2023-01-16. Examination of the specific measurements shows a timeout after TLS Client Hello in certain ISPs.

https://explorer.ooni.org/chart/mat?probe_cc=IR&test_name=web_connectivity&domain=cdn.sstatic.net&since=2023-01-06&until=2023-01-22&axis_x=measurement_start_day
Iran, Web connectivity test, cdn.sstatic.net

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions