QUICK
START

New to Clash? Start here. 3 core concepts + 3 basic steps to complete your configuration in 5 minutes and enjoy global internet access.

Best For New User · First Setup
Time Estimate Approx. 5 Mins
Prerequisites Client downloaded · Subscription link ready

Read Before Use: 3 Core Concepts

What is a Subscription Link?

A Subscription URL is an HTTPS address provided by yourservice provider. Clash accesses this URL to automatically download and parse server nodes and routing rules. You don't need to enter server details manually—just paste the link.

What is Clash? Does it provide internet?

Clash is aproxy client utility. Think of it as a powerful car—but it doesn't provide the nodes (fuel). You need to buy asubscription servicefrom a provider, or set up your own server, and import that link into Clash to access blocked sites.

What is TUN Mode? (vs. System Proxy)

System Proxyonly proxies apps that support proxy protocols (like browsers).TUN Modecaptures all TCP and UDP traffic via a virtual network card. It covers games and CLI tools that ignore system proxy settings, ideal for global proxying.

Mihomo (Clash.Meta) vs. Original Clash?

Mihomo (formerly Clash.Meta) is anenhanced community forkof the Clash core. It is fully compatible with standard syntax and adds support for TUIC, Hysteria2, Reality, WireGuard, and FakeIP DNS. Modern GUIs like Clash Verge Rev use Mihomo by default.


Proxy Modes Explained

Global

All traffic, regardless of destination, is forced through your selected proxy node. Useful if youtemporarily need a full proxy, but will slow down domestic apps.

Direct

Disables the proxy. All traffic connects directly to target servers. Use this totemporarily turn off the proxyor troubleshoot network issues.


Clash Configuration (3-Step Process)

01

Download & Install the Clash Client

Based on your operating system, go to theDownload Pageto get your installer:
Windows: Recommended: Clash Verge Rev (.exe)
macOS: Recommended: Clash Verge Rev (.dmg)
Android: Recommended: Clash Meta for Android (.apk)
iOS: Purchase Stash or Shadowrocket in the App Store
Linux: Recommended: Clash Verge Rev (.deb or .rpm)

Windows users: pick the x64 version if unsure. macOS users: most Macs post-2020 are Apple Silicon—pick x64 ARM64.
02

Import Your Subscription

Copy your Subscription URL (a YAML HTTPS link) from your provider. In the client's Profiles / Subscription tab, paste it and click update.

For Clash Verge Rev Clash Verge Rev:
Click 「Profiles」 → Click the 「+」 icon → Select 「Remote Profile」 → Paste your URL → Click 「Import」 → Click the profile card to activate it.

We recommend enabling Auto Update (e.g., every 24 hours) to keep your nodes and rules current.
03

Select a Node & Enable Proxy

Go to the 「Proxies」 tab and pick a node with low latency. Set the mode to RuleRule

Finally, toggle the System Proxy switch to ON. Your browser will now use the proxy. For games, see the TUN mode section.

In Rule mode, sites like Google, YouTube, and GitHub will automatically go through the proxy, while local sites like Baidu or Taobao connect directly at full speed.
Test your setup by visiting google.com Google. If it loads, you're all set! If not, try switching nodes. Click the platform tabs above for more detailed guides.

WINDOWS
TUTORIAL

Full guide for installing and setting up Clash on Windows. Featuring Clash Verge Rev, the top community choice. No command line required—just follow the steps.

Recommended Client Clash Verge Rev
OS Support Windows 10 / 11(x64 / ARM64)
Core Version Clash.Meta(Mihomo)
01

Download & Install Clash Verge Rev

Go to theDownload Pageand get Clash Verge Rev for Windows.
• For Intel/AMD processors (most PCs) → Get Windows x64 Installer
• For Snapdragon/ARM processors → Get Windows ARM64 Installer

Run the .exe installer,double-click, and follow the "Next" prompts. Once finished, launch the app from your desktop icon.

If Windows Defender shows a warning, click 「More info」 → 「Run anyway」. Clash Verge Rev is open source and safe for auditing on GitHub.
02

Import Subscription (Profiles)

1. Open the app and click theProfilesicon in the sidebar.
2. Click the+NewImport Profile URL
3. In the pop-up,paste your URL (e.g., https://your-provider.com/sub).
4. Click 「Import」 to download.Import and wait for the subscription to download and parse.
5. Once downloaded,click the profile card to activate it (the card will highlight when active).

Right-click a profile to set theAuto Update interval. We recommend every 24 hours to keep your nodes current.
03

Pick a Node & Enable System Proxy

1. Click 「Proxies」 in the sidebar and expand your proxy group (e.g., "Proxy" or "Node Select").
2. Select a node with low latency (click 「⚡ Test Speed」 to check all nodes).
3. Ensure the mode is set to 「Rule」 (changeable at the top of the main UI).
4. Toggle the 「System Proxy」 switch to ON.

Once done, visit google.com in your browser to verify it's working.

04

Enable TUN Mode (Optional · For Gaming)

System Proxy can't cover games or some CLI tools. Enable TUN mode to captureall system traffic.

1. Click 「Settings
2. Find 「TUN ModeTUN Mode
3. When the permission prompt appears, click 「Yes (Run as Administrator)
4. Once enabled, the 「Tun」 indicator will turn green, meaning all traffic is being proxied.

TUN mode requires Administrator Rights and will install a Wintun driver (built-in). You can disable System Proxy when using TUN.

Windows Troubleshooting

Browser still can't access Google after enabling proxy

Check: 1. Is a profile active (highlighted in Profiles)? 2. Is the mode set to Rule or Global? 3. Try a different node. 4. Check if a browser extension (like Proxy SwitchyOmega) is overriding system settings.

Icon missing from taskbar after launching

Clash Verge Rev minimizes to theSystem Tray (hidden icons area near the clock). Click the 「∧」 arrow to find it.

Network error in domestic apps (WeChat, QQ)

Ensure you are using Rule Mode instead of Global. Rule mode lets domestic apps connect directly. If issues persist, add a DIRECT DIRECT rule for the domain.

macOS
TUTORIAL

Complete Clash setup for macOS. Native support for Apple Silicon, menu bar controls, and compatible with macOS 12 Monterey and newer.

Recommended Client Clash Verge Rev
OS Support macOS 12 Monterey or newer
CPU Type Apple M1/M2/M3 → ARM64
Intel → x64
01

Verify CPU Type & Download Installer

Click the Apple icon → About This Mac in the top left. Look at 「Chip」 or 「Processor」:
• If it shows Apple M1 / M2 / M3 (Apple Silicon) → Go to theDownload Pageand pick the ARM64 Version (.dmg)
• If it shows Intel Core i5 / i7 (Intel) → Go to theDownload Pageand pick the Intel x64 Version (.dmg)

Note: Most Macs purchased after late 2020 use Apple Silicon.

02

Install & Bypass Gatekeeper

1. Open the .dmg .dmg file and drag the Clash icon to your Applications folder.
2. On the first launch, macOS may show an 「Unidentified Developer」 warning.
3. To fix: Open 「System Settings → Privacy & Security」, scroll down to the bottom, and click 「Open Anyway

Alternatively: In Finder,Hold Control and click (or right-click) the app icon → 「Open」 → 「Open」.
03

Import & Activate Profile

Process is identical to Windows:
1. Click 「ProfilesProfiles」 → click 「+」 → 「Import Profile URL」
2. Paste your link and click Import.
3. Click the card to activate it (it will highlight).
4. We recommend enablingAuto UpdateAuto Update

04

Enable System Proxy

Toggle the 「System ProxySystem Proxy

The Clash icon also appears in your Menu Bar (top right) for quick node switching and mode adjustments.

05

Enable Enhanced / TUN Mode (Optional)

To proxy Terminal commands or games, use TUN mode:
1. Go to 「Settings → TUN ModeSettings → TUN Mode
2. Click 「Allow / OK
3. Enter your macOS password to authorize the change.

TUN mode requires aSystem Extension. If blocked, go to 「System Settings → Privacy & SecuritySystem Settings → Privacy & Security

macOS Troubleshooting

Terminal/CLI tools still can't access GitHub

CLI tools often ignore system proxies. Fix: 1. Enable TUN ModeTUN Modeexport https_proxy=http://127.0.0.1:7897 (Recommended); 2. Or manually set env vars: export https_proxy=http://127.0.0.1:7897.

No internet after closing Clash (Proxy settings remain)

Correct way to exit: Turn OFF 「System Proxy」 first, then quit. To fix now, go to 「System Settings → Network → Wi-Fi → Details → Proxies and manually turn OFF the HTTP/HTTPS proxy options.

ANDROID
TUTORIAL

Full guide for installing Clash Meta for Android. Supports VPN-mode transparent proxy, per-app routing, and one-click subscription import. No Root required.

Recommended Client Clash Meta for Android
OS Support Android 5.0 or newer
Common Architecture ARM64-v8a (Most devices post-2016)
Before installing the APK, go to your phone's Settings → Security → Install Unknown Apps and grant permission for your browser or file manager. (Note: On MIUI/HyperOS, this may be under Settings → Privacy → Special Permissions).
01

Select CPU Architecture & Download

Go to theDownload Pageand pick the right Clash Meta for Android APK:
ARM64-v8a: Best for almost all modern Android phones post-2016 (Samsung, Xiaomi, Pixel, etc.).
ARMv7: For older devices released before 2016.
Universal (APK): Choose this if you aren't sure. It's larger but works on all devices.

02

Install APK & Grant Permissions

1. Find the downloaded APK in your phone's File Manager or Downloads folder.
2. Tap the APK file and select 「Install」. Confirm any 「Unknown Source」 security prompts.
3. Once installed, find 「Clash MetaClash Meta
4. On first launch, the app will request to 「Set up a VPN connection」. Tap OK/Allow. This is required for proxying and does not collect your data.

03

Import Your Subscription

1. Open Clash Meta and tap the 「+Profiles
2. Tap the 「+」 icon and select 「Import from URL
3. Paste your YAML link and tap 「OK
4. After the download finishes, tap the refresh icon on the profile card to fetch nodes.
5. 5. Long-press the profile card and select 「Select

Pro Tip: You can often just tap the subscription link in your mobile browser and choose 「Open with Clash Meta」 for instant import.
04

Start Proxy & Pick Node

1. In the main menu, tap the large circular 「Start」 button (lightning icon).
2. When the VPN connection request appears, tap 「OK
3. Once active, a VPN Key icon
4. Tap the 「ProxiesProxies
5. Ensure the mode is set to 「RuleRule

05

Per-App Routing (Optional)

Clash Meta for Android allows granular control over which apps use the proxy:
Go to 「Settings」 → 「Network」 → 「Settings」→「Per-app Proxy」. Switch to Allow List (proxy only selected apps) or Block List (proxy all except selected).

Android Troubleshooting

Error: "Problem parsing the package"

This usually means the APK architecture doesn't match your device or the file is corrupt. Re-download the file or try the Universal (APK)APK。

VPN is ON but local apps (WeChat, Alipay) don't work

Ensure you are in RuleRule Mode

VPN disconnects automatically on MIUI/ColorOS/HyperOS

Aggressive battery optimization often kills background VPNs. Add Clash Meta to the Auto-start List and set battery usage to Unrestricted in app info settings.

iOS
TUTORIAL

Complete guide for using Clash subscriptions on iPhone and iPad. We recommend Stash (full rule support) or Shadowrocket (easiest import). Both are available in the App Store.

Recommended Client Stash · Shadowrocket
Support Devices iPhone / iPad(iOS 16+)
Get Method App Store (Paid apps)

iOS Platform Note: Due to Apple's restrictions, all apps must be installed via the App Store. We do not provide IPA files. If you can't find these apps, you may need an Apple ID from a different region (like the US).

Option 1: Stash (Recommended · Full Rule Support)

01

Buy & Install Stash from App Store

Open the App Store and search for 「StashStash

02

Import Your Subscription

1. Open Stash and tap the 「Profiles」 tab at the bottom.
2. Tap the 「+」 icon in the top right and select 「+」→「Download from URL
3. Paste your YAML link and tap 「OK
4. Once downloaded, tap the circle next to the profile to set it as active

Pro Tip: You can often just tap a subscription link in Safari and select 「Open in Stash」 for one-click import.
03

Start Proxy & Grant VPN Permissions

1. Go to the 「Dashboard」 tab at the bottom.
2. Tap the 「+」 icon in the top right and select 「Connect (VPN icon)Profiles
3. On the first run, iOS will prompt: "Stash would like to add VPN configurations". Tap 「Allow」 and verify with Face ID or Touch ID.
4. A VPN icon in the status bar indicates a successful connection.

04

Pick Nodes & Policies

Go to 「Settings」 → 「Network」 → 「Proxy」 tab to select your node group and server. Stash supports full Clash syntax, including RULE-SETSCRIPT RULE-SET, SCRIPT rules, and Apple Shortcuts automation, making it the most powerful Clash client on iOS.


Option 2: Shadowrocket (Most Popular · Easiest)

01

Buy & Install Shadowrocket from App Store

Search for 「ShadowrocketShadowrocket

02

Import Your Subscription

1. Open Shadowrocket and tap the 「++
2. For 「Type」, select 「Subscribe
3. Paste your Clash YAML URL into the 「URL」 field.
4. Tap 「Done」 in the top right. Shadowrocket will automatically parse all nodes from your subscription.

Shadowrocket also supports instant import: just copy the link and tap 「Import from Clipboard」 when you open the app.
03

Connect to Proxy

1. Go to the main screen and verify your nodes are visible.
2. Toggle the 「Not Connected」 switch at the top to 「Connected
3. On your first run, tap OK to allow VPN configurations and verify with Face ID/Touch ID.
4. Pick a node with low latency. Tap 「Connectivity Test」 to check all pings.

LINUX
TUTORIAL

Complete guide for Linux desktop environments (Debian, Ubuntu, Fedora, etc.). Covers GUI installation and Mihomo Core CLI deployment.

Recommended Client Clash Verge Rev
Supported Distros Debian · Ubuntu · Fedora · CentOS
Installer Format .deb(dpkg)· .rpm(dnf/rpm)

Option 1: Clash Verge Rev GUI (Recommended for Desktop)

01

Download & Install .deb or .rpm

Go to theDownload PagePick the right package:
Debian / Ubuntu based: Download the .deb .deb
Fedora / CentOS / Red Hat based: Download the .rpm : Download the

# Debian / Ubuntu - install with dpkg sudo dpkg -i clash-verge-rev-linux-amd64.deb # Fedora / CentOS - install with rpm sudo rpm -i clash-verge-rev-linux-x86_64.rpm # Or use dnf on newer Fedora sudo dnf install clash-verge-rev-linux-x86_64.rpm
02

Launch & Import Subscription

Launch 「Clash Verge」 from your app menu or run clash-vergeclash-verge


Option 2: Mihomo Core CLI (For Servers / No GUI)

The following is for Linux Servers, VPS, or OpenWrt. Desktop users should stick to the GUI option above.
01

Download & Grant Execute Permissions

Go to the Download PageDownload Page .gz under the Core tab, download your arch binary, and run:

# Extract and grant execute permission gunzip mihomo-linux-amd64.gz chmod +x mihomo-linux-amd64 sudo mv mihomo-linux-amd64 /usr/local/bin/mihomo
02

Create Directory & Prepare config.yaml

Mihomo reads YAML configs. Place your configuration file (from your provider) in the config directory:

# Create config directory mkdir -p ~/.config/mihomo # Download subscription config (replace URL with your sub link) curl -L "https://your-subscription-url.com/..." \ -o ~/.config/mihomo/config.yaml
03

Start Mihomo & Create systemd Service

# Start Mihomo (test run) mihomo -d ~/.config/mihomo # Create systemd service for autostart sudo tee /etc/systemd/system/mihomo.service > /dev/null <<EOF [Unit] Description=Mihomo Clash.Meta Service After=network.target [Service] Type=simple ExecStart=/usr/local/bin/mihomo -d /root/.config/mihomo Restart=on-failure [Install] WantedBy=multi-user.target EOF sudo systemctl daemon-reload sudo systemctl enable --now mihomo
Mihomo listens on HTTP port 78907890 7891, SOCKS5 port 90907891 mixed-port , and Web UI port

ADVANCED
CONFIG

Advanced Clash guide: Detailed TUN mode setup, recommended rulesets, FakeIP DNS protection, and YAML structure analysis for custom routing strategies.

Best For Advanced Users
Core Required Clash.Meta(Mihomo)
Documentation MetaCubeX / mihomo

TUN Mode: Setup by Platform

TUN (Virtual Network Interface) mode captures all system traffic at the virtual NIC level, supporting apps like games and CLI tools that ignore system proxy settings.

Platform Driver / Dependency How to Enable Permissions
Windows Wintun (Built-in) Settings → TUN Mode → ON Administrator Rights
macOS Network Extension Settings → TUN Mode → ON → Allow Admin Password + Extension Authorization
Android VPN API Main Start Button → Allow VPN VPN Connection Permission
Linux tun kernel module Via config.yaml tun: enable: true Root or cap_net_admin

config.yaml TUN Mode Example

# TUN mode configuration for Clash.Meta (Mihomo) tun: enable: true stack: mixed # mixed / gvisor / system dns-hijack: - any:53 # hijack all DNS queries auto-route: true # auto set system routes auto-detect-interface: true dns: enable: true enhanced-mode: fake-ip # fake-ip prevents DNS leaks fake-ip-range: 198.18.0.0/15 nameserver: - https://doh.pub/dns-query - https://dns.alidns.com/dns-query fallback: - https://1.1.1.1/dns-query - https://8.8.8.8/dns-query fallback-filter: geoip: true geoip-code: CN
FakeIP Mode (enhanced-mode: fake-ip) prevents DNS leaks by routing DNS queries through the proxy. Recommended for use with TUN. If an app breaks, add it to the fake-ip-filter skip-list / whitelist

Recommended Rulesets (Rule-Set)

Using high-quality rulesets dramatically reduces routing errors. These are the top community choices:

Ruleset GitHub Repo Highlights
Loyalsoldier github.com/Loyalsoldier/clash-rules Wide coverage, frequent updates. Clear split for direct, proxy, and ad-blocking.
ACL4SSR github.com/ACL4SSR/ACL4SSR Long history, highly compatible. Provides multiple preset variants (Banane, etc.).
# Example: Loyalsoldier rule-set integration in config.yaml rule-providers: reject: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt" interval: 86400 path: ./ruleset/reject.yaml proxy: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt" interval: 86400 path: ./ruleset/proxy.yaml direct: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt" interval: 86400 path: ./ruleset/direct.yaml rules: - RULE-SET,reject,REJECT - RULE-SET,proxy,Proxy - RULE-SET,direct,DIRECT - GEOIP,CN,DIRECT - MATCH,Proxy

Clash Config Structure Reference

Block Description Common Fields
port / mixed-port Proxy Listen Ports HTTP 7890,SOCKS5 7891,mixed 7897
mode Proxy Mode rule / global / direct
proxies Proxy Node List name, type, server, port, password/uuid
proxy-groups Policy Groups select (Manual) / url-test (Auto) / fallback (Failover) / load-balance
rules Routing Rules List DOMAIN-SUFFIX, DOMAIN-KEYWORD, IP-CIDR, GEOIP, RULE-SET, MATCH
dns DNS Configuration enable, enhanced-mode, nameserver, fallback
tun TUN Virtual NIC Config enable, stack, auto-route, auto-detect-interface

Config FAQ
CONFIGURATION FAQ

Do I need to update my subscription manually every time?

No. Most GUI clients (Clash Verge Rev, FlClash, Clash Meta Android, etc.) supportScheduled Auto-Updates. Once imported, right-click the profile card and set the 「Auto Update」 interval (24 hours recommended). The app will fetch the latest nodes in the background.

In Rule mode, how do I know if a site is Direct or Proxied?

You can view which rule each request matches in the 「Logs」 tab of your Clash client, and whether it went via DIRECT or a specific proxy group. Common scenarios: domains ending in .cn go DIRECT; Google/YouTube/X domains go via proxy. If a site is misrouted, add DOMAIN-SUFFIX,example.com,DIRECT or DOMAIN-SUFFIX,example.com,Proxy to the rules section of your config to override the default behavior.

Clash is ON but internet is slow. Latency looks fine—how to fix?

Low latency doesn't always mean high bandwidth. Suggestions: ① Use the speed test icon in Proxies to test actual throughput; ② Try a node in a different region; ③ Check if you accidentally set the mode to Global (proxying everything, including local traffic); ④ If using TUN, set stack to mixed instead of gvisor (mixed offers better performance).

Can I use one subscription on multiple devices at once?

This depends on your provider's policy. Most services have alimit on concurrent active devices (typically 1–5). Exceeding this may result in speed caps or blocks. Check your plan details. Using different clients on the same device usually counts as multiple devices.

Clash Verge Rev shows latency but speed test fails (all timeout)

Ping timeouts mean the node or provider server might be unreachable. Fixes: ① Right-click your profile and refresh to ensure you have the latest list; ② Use an 「Auto」 group if available to let Clash find an active node; ③ Contact your provider support.

How do I set Clash to launch at startup?

Windows: Clash Verge Rev → Settings → Enable 「Launch on Startup」; or add a shortcut to the system shell:startup folder. shell:startup)。macOS: Enable 「Launch at Login」 in settings, or add via System Settings → General → Login Items. Linux: Use a systemd service (see the systemd example in our Linux tutorial).

Clash vs. traditional VPNs (like ExpressVPN)?

Standard VPNs offer simple full-tunnel encryption. Clash's advantages as an open-source tool are: ① Highly Customizable Rule Splitting (fine-grained control over every connection); ② Multiple Proxy Protocols (SS, VMess, Trojan, TUIC, Hysteria2); ③ Fully Open Source, with no backdoors; ④ Better cost-performance when used with a subscription.

Free & Open Source · GPL-3.0

Finished downloading? Read the Guide Ready to Start? Download Now

Official installers for Windows, macOS, Android, iOS, and Linux. Get started in 5 minutes with our guide.

Go to Download Page