How to Reach the International Internet

The following articles give practical examples of some of the most popular methods for jumping the wall: Shadowsocks (SS), ShadowsocksR (SSR), IPsec VPN, OpenConnect VPN, Lantern, Psiphon, V2Ray, and a few others. The situation is constantly changing, and these methods come with no guarantees.

Basic Linux VPS Set Up from a Windows PC
This article shows Windows PC users how to set up a Linux virtual private server (VPS). Having your own server is helpful for some of the methods on this site, but is not necessary for all of them.
Brook
Brook is cross-platform (Linux, macOS, Windows, Android, and iOS) proxy/VPN software. Brook’s goal is to simplify the configuration steps. This article shows you how to install and run the Brook GUI on Windows.
Goflyway
Goflyway is an end-to-end encrypted HTTP/SOCKS5 proxy client/server. It is written in the Go programming language (Golang) and features TCP tunneling, TCP multiplexing, man-in-the-middle proxy, UDP over TCP, Shadowsocks ACL rules compatibility, and server-side HTTP reverse proxy. This article shows you how to install a simple configuration of Goflyway on a Linux server and a Windows client.
IPsec VPN Server and Clients
This article will show you how to install StrongSwan on a server and on iOS, Android, and Windows clients. In this article, the server authenticates with a certificate, and the clients authenticate with a user name and password.
Lantern for Android
Lantern’s main advantage is that it is easy to use for beginners. There are both free and paid versions, and clients exist for mobile devices and for desktop computers. This article will show you how to install and use Lantern on an Android device.
OpenConnect VPN Server and Windows Client
OpenConnect is an SSL VPN initially created to be compatible with Cisco’s AnyConnect SSL VPN. This article shows you how to install OpenConnect on a server and on a Windows client.
OpenVPN + Obfsproxy
This article shows you how to send your PC’s traffic through OpenVPN, with your OpenVPN traffic being camouflaged by Obfsproxy. The server in this example runs Debian 9, and the client is a PC running Windows 10,
OpenVPN over Shadowsocks
This article shows you how to send your PC’s traffic through OpenVPN, with OpenVPN in turn being proxied through Shadowsocks. The approach followed in this article is to first set up the Shadowsocks connection, then to add the OpenVPN connection that passes through it.
Psiphon for Android
Psiphon is almost as easy to use as Lantern. Clients exist for Android, iOS, and Windows. This article shows you how to install and use Psiphon 3 on an Android device.
Psiphon for Windows
This article shows you how to install and use Psiphon 3 on a Windows device.
Shadowsocks + GoQuiet
GoQuiet is a Shadowsocks plugin that facilitates obfuscation of Shadowsocks traffic as normal HTTPS traffic. It thus disguises the proxy server as a web server. As well as allowing imitation of regular TLS traffic, GoQuiet also reduces the scope for replay attacks. This article shows you how to set up a Shadowsocks and GoQuiet server on Debian 9, with the website hosted on nginx.
Shadowsocks + kcptun
This article shows you how to send your PC’s traffic through Shadowsocks, with packets then being multiplexed over UDP by kcptun. This can result in a significant performance improvement in certain situations.
Shadowsocks + simple-obfs
This article shows you how to set up a Shadowsocks server and client with simple obfuscation (simple-obfs). The server will act as a Shadowsocks server if the correct password is given, but will display a normal http web page otherwise. The server and client run Ubuntu 16.04, but the client can actually be a Windows PC if you run Ubuntu under VirtualBox.
Shadowsocks-libev + simple-obfs for Windows
This article shows you how to set up a Shadowsocks-libev server and client with simple obfuscation (simple-obfs). The server will act as a Shadowsocks server if the correct password is given, but will display a web page otherwise. The server in this tutorial runs Debian 9, and the client is a Windows PC.
ShadowsocksR Clients and Server
This article will show you how to install ShadowsocksR (SSR) on Windows, Android, and Linux clients, and how to create a private ShadowsocksR server.
Tor + Private Obfs4 Bridge
This article shows you how to create your own private, unlisted Tor bridge, which implements the obfs4 pluggable transport. It then shows you how to connect to your obfs4 bridge from the Tor browser running on your Windows PC.
V2Ray for Windows Client and Linux Server
V2Ray is a platform for building proxies to bypass network restrictions. This article shows you how to use a Windows PC as a V2Ray client, and how to set up your own V2Ray server on Linux.
V2Ray Websocket + Nginx TLS + CDN
This article shows you how to set up a V2Ray server on Debian 9, with V2Ray fronted by an https website hosted on nginx. The IP address of the server is hidden behind a content distribution network (CDN). The server will act as a V2Ray server for a websocket stream, but will display a normal website to a regular web browser. The client machine in this tutorial is a Windows PC.
WireGuard
WireGuard is a newish and therefore relatively obscure VPN protocol. As development stands at the time of writing, WireGuard can connect only from Linux to Linux. In this tutorial, we will use as a client a Windows 10 PC. We do this by running VirtualBox on the PC, then hosting a Linux virtual machine inside VirtualBox.

Other methods popular in the past included VPN Gate, Freegate, and Ultrasurf, all of which are reported to no longer work. Many VPN protocols — PPTP, L2TP/IPsec, and OpenVPN — are also reported to be widely blocked. SSH tunneling is generally throttled and then blocked. Tor is easily blocked, but may work in combination with meek pluggable transport or a private obfs4 bridge. Among browsers, the Opera browser with built-in VPN and the FreeBrowser.org Android browser may work. Editing your computer’s hosts file may also work if DNS poisoning is the issue. Large corporations generally bypass the problem by paying for an international private leased circuit (IPLC) or multi-protocol label switching (MPLS) network.