From choosing a client to establishing a connection, find practical guidance on subscription imports, rule-based routing, and TUN mode.
Free forever
Open source
Multi-platform clients
Chinese configuration guides
United States
Japan
Hong Kong
Singapore
South Korea
Import Subscription×
Subscription URL
https://example.com/profilePaste
Update interval
Every 24 hours⌄
Auto-update
Update on startup
Proxy mode
RuleGlobalDirect
Configuration format recognizedSave & Update
Rule-based routing
TUN mode
Subscription conversion
Choose by operating system
Clash client platforms
Clients differ in interface design and kernel integration. Open the download page for your device first, then choose software based on maintenance status, system architecture, and your workflow.
Windows
Ideal for everyday desktop use: choose Clash Plus, Clash Verge Rev, FlClash, or Clash Nyanpasu, or read the migration notes for discontinued clients. Check your system architecture before downloading; after installation, configuration usually starts from the subscription section.
Supports both Apple Silicon and Intel devices. When first enabling the system proxy or TUN, follow the system prompts to grant network extension permissions.
Suitable for phones and tablets. After importing a subscription, approve the system VPN request; adjust per-app proxy and background activity limits in the device settings.
Desktop users can choose a graphical client, while servers, soft routers, and container environments often run the mihomo kernel directly. Both use the same general YAML configuration style, but service management, permissions, and log locations differ. The download page lists separate entry points.
Start with a working base configuration, then handle system interception, rule maintenance, and subscription updates step by step. The panels below mirror the settings most commonly found in clients.
Basic configuration
Subscription imports & update strategy
A subscription URL centrally provides proxy nodes, proxy groups, and rule configuration. Before importing, confirm that the link comes from your own service provider, then paste the complete address into the client's subscription or configuration section. Save it and run one manual update to verify that the configuration name, proxy groups, and rules appear correctly. There is no need to use a very short update interval; daily updates are usually sufficient. If an update fails, first check whether the URL has expired, whether the system clock is accurate, and whether the current network can access the subscription address directly.
Run one manual update after the first import to confirm that the configuration parses correctly.
Keep a working older configuration so you can roll back if an update fails.
When sharing one URL across devices, check the last update time on each client.
Configure subscription
Configuration nameDaily Rules
Auto-update
Update interval24 hours
Save configuration
Mode selection
Rule, Global & Direct modes
Rule mode determines where connections go based on domain, IP, process, or geographic rules in the configuration, making it suitable for most everyday use. Global mode sends most traffic through the currently selected proxy group and is useful for temporarily checking whether a rule is missing a match. Direct mode bypasses the proxy and helps determine whether a problem is related to client interception. These are not speed settings, and switching modes does not change a node's bandwidth. If a page will not open, compare Global and Direct mode, then return to Rule mode to identify the specific rule.
Use Rule mode for everyday traffic.
Use Global mode for short tests; it does not necessarily capture all system traffic.
If Direct mode works normally, continue checking the rules and DNS configuration.
Proxy mode
RuleRoute by rules
GlobalUse the current proxy group
DirectConnect without the proxy
Traffic decisions
Rule order & proxy groups
Clash rules are typically matched from top to bottom. Once a request matches the first applicable rule, it enters that rule's proxy group, so specific domain or process rules should come before broad rules. Proxy groups provide a second choice among proxies, automatic selection, or direct connections; a rule itself is not a node. When editing a configuration, identify the matching target first, confirm that the destination proxy group exists, then review the match in the connection log instead of judging effectiveness from the webpage alone.
Put specific rules before general rules.
Proxy group names referenced by rules must match the configuration exactly.
Use the connection log to verify the domain, matched rule, and final policy.
Rule snippetDOMAIN-SUFFIX,example.com,ProxyDOMAIN,local.example,DIRECTGEOIP,CN,DIRECTMATCH,Proxy
Rules are matched in order
System interception
TUN mode & DNS
TUN mode uses a virtual network interface to capture more traffic that ignores system proxy settings, including traffic from command-line tools, some game launchers, and standalone network applications. Before enabling it, configure the regular system proxy and verify that subscriptions and rules work correctly. Then handle additional requirements such as administrator privileges, network extensions, and DNS hijacking. If enabling TUN makes LAN devices unreachable, causes DNS failures, or creates a network loop, disable TUN first to restore the basic connection, then check routes, DNS, and excluded subnets one by one.
Verify the system proxy before enabling TUN.
Grant network interface permissions required by the operating system.
For LAN issues, check private subnets and DNS settings.
TUN settings
Enable TUN
Auto route
DNS hijackingConfigured
Reload the configuration after changes
Open-source ecosystem
Clash, Meta & mihomo
Understanding the roles of the kernel, client, and configuration file helps keep interface, rule, and network issues separate during troubleshooting.
Project evolution
The original Clash kernel established familiar practices such as rule matching, proxy groups, and YAML configuration. After the original project stopped being maintained, community forks continued work on protocol extensions, TUN implementations, rule types, and data management. Today, graphical clients commonly ship with the mihomo kernel, but update schedules, interface layouts, and system integration still vary by client.
Client & kernel
The graphical client handles subscription management, system proxy switches, policy selection, log viewing, and desktop integration; the kernel reads configuration, establishes connections, applies rules, and handles DNS. An interface opening does not mean the kernel is running, and a successful subscription update does not mean system traffic is being intercepted. During troubleshooting, verify configuration loading, kernel status, system proxy settings, and actual connection logs separately.
Configuration compatibility
Common base fields are broadly similar across Clash ecosystem clients, but mihomo extensions for protocols, rule types, or DNS fields may not be recognized by older kernels. When migrating between clients, do not simply copy the entire configuration and assume compatibility. A safer approach is to import the subscription first, then migrate your own rules, overrides, and DNS settings separately while checking field warnings in the startup log.
Updates & maintenance
Client updates, kernel updates, subscription updates, and rule-data updates are four separate things. A client update mainly changes the interface and system integration; a kernel update affects protocol and configuration capabilities; subscription updates are generated by the service provider; and rule data may be downloaded independently. When an update fails, identify what failed first, then check the network, permissions, configuration path, or upstream status.
Clone the mihomo open-source repositorygit clone https://github.com/MetaCubeX/mihomo.git
Quick troubleshooting
Common questions
First identify whether the issue occurs during download, subscription import, kernel startup, or system interception, then open the relevant guide.
What should I check first when a subscription update fails?
Confirm that the subscription URL is complete and still accessible, then check the system clock, current network, and client logs. If the old configuration still works, keep it instead of repeatedly deleting and recreating configurations.
Use Rule mode for everyday use. Global mode is useful for briefly checking whether a target connection is being routed incorrectly; return to Rule mode afterward and fix the rules.
Why do some apps connect directly after I enable the system proxy?
Some programs do not read system proxy settings. Check the app's own proxy options first; if you need to capture more traffic, configure TUN mode according to the operating system's requirements.
What should I do if the network fails after enabling TUN?
Disable TUN first to restore basic connectivity, then check administrator permissions, DNS hijacking, auto routing, and the LAN exclusion range. Avoid changing several parameters at once.