First Clash Connection Guide: Choose a Node, Test Latency, and Verify Proxy Status

Follow the first-use workflow to import a subscription, choose a policy, test latency, enable the system proxy, and verify the connection.

Understand the four steps before your first connection

Installing the Clash client does not mean your traffic is already being proxied. A complete connection usually involves four independent steps: the configuration loads successfully, a policy group has selected an outbound node, the client core is running, and operating-system or application traffic is entering Clash. If any step is incomplete, you may see the client open without any change in web access.

A subscription provides configuration data such as nodes, policy groups, and rules; a node is the actual proxy exit; rules determine which policy group handles each request; and the system proxy or TUN mode sends traffic into Clash. Check these items in order during first use instead of repeatedly restarting the client or switching nodes at random.

Menu names may vary slightly between clients. For example, “配置” may appear as Profiles, “代理” as Proxies, and “常规” as General. Clients based on the Clash Meta (mihomo) core may also offer additional DNS, TUN, and rule-override options, but there is no need to change these advanced settings during the first connection. Start with the subscription’s original configuration and complete the basic connection path first; this makes it easier to identify where a problem occurs.

Import the subscription and confirm that the configuration is active

After obtaining a Clash- or Clash Meta-compatible subscription URL from your service provider, open the client’s configuration page and add it through the URL import option. Desktop clients usually let you paste the subscription URL and download the configuration; on mobile, the option may be called “Import from URL” or “New configuration.” A subscription URL is account configuration data, so do not publish it on a public page or mistake it for a regular node link to be added one by one.

After a successful import, a new entry should appear in the configuration list. Check for an update time, configuration name, or node count, then explicitly set this configuration as the active one. If it was only downloaded but not selected, the client may still be using a blank built-in profile, an older configuration, or another previously imported subscription.

How to tell whether the subscription imported successfully

  • The matching entry appears on the configuration page, and a manual update completes without a format-parsing error.
  • The proxy page shows policy groups and nodes inside them, rather than only DIRECT and REJECT.
  • The rules page contains domain, IP, process, or fallback rules; the configuration is not blank.
  • The client log does not repeatedly report a missing configuration file, YAML parsing failure, or port-conflict warning.

If the configuration downloads but no nodes appear on the proxy page, first check whether the subscription type is intended for Clash. Some services provide a general subscription, individual node links, and a Clash configuration; the client needs the entry explicitly labeled for Clash or mihomo. If an update returns a login page, permission error, or expiration notice, resolve the subscription account issue first. Reinstalling the client usually will not fix an invalid remote subscription.

After a configuration update, policy-group selections may be preserved or rebuilt according to the new configuration. If node names or groups change, revisit the proxy page and confirm the current selection so you do not continue using an old node that has been removed from the subscription.

Understand rule, global, and direct modes

Clash commonly offers Rule, Global, and Direct modes. For a first connection, Rule mode is usually the best starting point because it follows the configured rules: traffic that needs a proxy goes to a proxy policy group, local networks or specified sites can connect directly, and unmatched requests are handled by the final fallback rule.

Global mode sends most traffic entering Clash to the global policy group. It is useful for briefly checking whether a particular node can serve as an exit, but it does not mean that every program at the operating-system level is automatically captured. Whether traffic enters the client still depends on the system proxy, TUN mode, and each application’s own networking behavior.

Direct mode normally sends traffic around the proxy exit. It is useful for temporarily isolating the proxy from troubleshooting, but it is not a suitable final state for a first connection. If the client appears to be running normally while external results remain identical to a direct connection, confirm that the mode is not still set to DIRECT and check that the active policy group has not selected DIRECT.

Mode Primary behavior Use during first connection
Rule mode Matches rules in order and sends requests to the specified policy group Recommended for everyday testing and use
Global mode Sends most traffic entering Clash to the global policy group Useful for quickly testing a single proxy exit
Direct mode Connects directly to the destination without using a proxy node Useful for comparing with the local network

Choose a policy group and node

On the proxy page, you will usually see several policy groups. Common names may indicate node selection, automatic latency testing, failover, streaming media, or the final outbound route. Group names come from the subscription configuration, so they are not identical across clients. For a first connection, find the group responsible for the main proxy traffic, then check whether it currently points to a specific node, another policy group, or DIRECT.

If a group includes an “Auto Select” or URL-Test policy group, it measures availability using the configured test URL and interval, then chooses a suitable candidate node. A Fallback policy focuses more on failover and typically uses the first currently available node. A Select policy requires manual selection. Seeing latency values in the interface does not mean every policy group switches nodes automatically; a Select group still follows the user’s manual choice.

Practical criteria for choosing your first node

  1. Check reachability first. A node that completes latency tests consistently is preferable to one that occasionally reports an extremely low value but frequently times out.
  2. Then check latency. Lower latency usually improves web response and interaction, but it does not directly indicate download bandwidth.
  3. Consider your destination. Some sites impose requirements based on exit region, IP type, or account region, so choose according to the site or service you actually need to access.
  4. Change one thing at a time. For the first verification, choose one clearly identified node; compare other routes only after the connection succeeds.

Policy groups can reference one another. For example, a “Node Selection” group may contain “Auto Select,” while the rules send requests to “Node Selection.” The actual exit is then determined by several layers of selection. If changing a selection produces no visible result, follow the policy-group references one level at a time until the final target is a specific node rather than DIRECT or an unavailable child group.

Interpret latency test results correctly

Latency tests in the client are usually not standard ICMP Ping tests. Clash sends an HTTP or HTTPS request through the node to a specified test URL and records the time needed to establish the connection and receive a response. Results are therefore affected by the local network, proxy-protocol handshake, node load, test site, and link quality. Being able to ping a server from the command line does not prove that the proxy protocol can establish a connection.

After selecting Test All, wait for one complete round before assessing the results. Check whether repeated tests for the same node remain stable. Values in the tens or hundreds of milliseconds are measurements for a particular network environment, not a universal pass threshold. Consistency matters more than a single number: a node that frequently jumps from normal latency to timeouts is also more likely to produce slow first-page loads or dropped connections during browsing.

If every node times out at the same time, first suspect a shared condition rather than assuming that all nodes failed simultaneously. Check whether the local network can reach the external test URL, whether the system clock is accurate, whether the subscription was just updated, whether DNS is behaving normally, and whether a firewall is blocking the client core from connecting. Corporate, campus, and public networks may also restrict certain protocols or ports; compare the results using a mobile hotspot.

If only a few nodes time out, continue with a node in the same group that returns stable results. A successful latency test still does not guarantee that the target website will work: the site may restrict certain regions, and the rules may send it to another policy group. The final assessment must combine connection logs with an actual request.

Start the core and enable the system proxy

Once the configuration and node are ready, confirm that the Clash core is running. Some clients start the core automatically when the interface opens; others require enabling a service, run switch, or main connection toggle. If the core is not running, the system may have proxy settings configured but still be unable to connect because the local listening port is unavailable.

On desktop systems, the system proxy generally points the operating system’s HTTP and HTTPS proxy settings to Clash’s local listening address. Browsers and applications that follow system proxy settings will send requests to Clash. Some programs use their own proxy configuration, open direct connections, or implement their own network stack, so they will not automatically follow the system proxy.

You do not need to enable both the system proxy and TUN for the first connection. Start with the system proxy to verify browser traffic; the path is clearer and requires fewer permissions. After basic proxying works, enable TUN according to the client’s instructions only if you need to capture applications that ignore system proxy settings, UDP traffic, or additional system connections.

TUN mode versus the system proxy

TUN mode receives traffic through a virtual network interface and system routes, so it usually covers more traffic than the system proxy. Clients based on the mihomo core may provide options such as auto-routing, DNS hijacking, and strict routing. Enabling TUN often requires administrator privileges, network-extension approval, or VPN permission, and it may conflict with other VPNs, virtual adapters, or enterprise security software.

Enabling multiple traffic-capture methods during first use makes diagnosis harder. If the system proxy already lets the browser connect normally, record that result first and test TUN separately. Disable other VPNs before switching, and check the client log if the test fails; do not rely solely on a status-bar icon to decide whether forwarding is working.

Verify proxy status with three checks

Do not verify a connection solely by checking whether a client button changes color. A more reliable approach is to inspect the client log, load an actual webpage, and check the exit information in sequence. Together, these three layers distinguish between “the core is running,” “the request entered Clash,” and “the request was forwarded through the selected node.”

Layer 1: Check connection records

Open the client’s connections or logs page, then refresh a webpage in the browser. Under normal conditions, new records should show the domain, destination address, matched rule, and policy chain. The log may show that a request matched a rule and traveled through a policy group to a specific node. If it shows DIRECT, the request followed the current rules and connected directly; that is not necessarily a fault.

If refreshing the browser produces no new connection records at all, traffic probably has not entered Clash. Check whether the system proxy is enabled, whether the browser uses a separate proxy, whether the client’s listening port is working, and whether another program has rewritten the operating system proxy settings.

Layer 2: Visit a regular webpage

Choose a webpage whose result is clear in your current network environment. First confirm that the page opens, then check whether images, scripts, and API requests load completely. Opening only the home page does not cover every connection because page resources may come from multiple domains and be handled by different rules. If the text appears but images or video fail, find the corresponding resource domain in the connection records and check where its policy sends it.

Layer 3: Check exit information

Use a trusted IP-information page to view the current exit address and region, then compare it with the result when the system proxy is disabled. A changed exit, together with logs showing that the request used the selected node, confirms that the browser request was proxied. If the exit has not changed, check whether the current policy selected DIRECT, whether a direct rule matched the IP-lookup site, and whether the browser has a setting that bypasses the system proxy.

  1. Keep the current node unchanged, enable the system proxy, and refresh the test page.
  2. Find the request for the test page’s domain in the connection list.
  3. Confirm that the policy chain ends at the expected node rather than DIRECT.
  4. Record the exit information, then disable the system proxy and run one comparison test.
  5. After testing, re-enable the traffic-capture method you need and confirm the client status.

A fixed troubleshooting order for a failed first connection

Change only one condition at a time during troubleshooting, moving from the configuration layer toward the system layer. Reinstalling repeatedly, changing the subscription, and modifying DNS at the same time makes results impossible to compare. The sequence below applies to most desktop and mobile clients.

Check What to observe Next step
Subscription update Can the configuration be downloaded and parsed successfully? If it fails, confirm the subscription status and configuration type first.
Proxy page Are policy groups and specific nodes present? Confirm that the active main policy group has not selected DIRECT.
Latency test Is one node timing out, or are all nodes timing out? Replace a single node; if all time out, check shared network conditions.
Core log Are there port conflicts, permission issues, or parsing errors? Handle the first key error and avoid overlooking an earlier failure.
Connection records Do requests appear after refreshing the webpage? If there are no records, check system-proxy or TUN capture.
Policy result Does the request ultimately use a node or DIRECT? Check the matched rule and nested policy-group selections.

If enabling the system proxy makes every webpage inaccessible, disable it first to restore local connectivity, then check whether the core is running and whether the local port is occupied. If the log reports a listening failure, another proxy client may be using the same port. Fully exit other proxy or VPN programs and restart Clash; this is usually more informative than changing several ports at once.

If latency tests succeed but webpages will not open, focus on the actual request log. The test URL and target webpage are different sites and may match different rules or produce different DNS results. Also check whether the browser has enabled HTTP/3, its own DNS, or an extension proxy setting. You can temporarily compare with another browser that follows the system proxy, but do not change the node and running mode at the same time.

If some websites work while others fail, the basic connection is usually established; the issue is more likely related to rules, policy groups, DNS, or restrictions imposed by the destination. Find the failed domain in the connection records, confirm which rule matched and which policy group received it, then inspect that group’s actual exit. Rule mode matches from top to bottom: the first matching rule determines handling, while the final MATCH usually serves as the fallback.

Essential settings after connecting successfully

After the first verification succeeds, you can configure automatic updates, startup behavior, and policy persistence. Do not set subscription updates too frequently; use the interval recommended by the provider and client defaults. After updating the configuration, watch for changes to node names, policy-group structure, and rules, then reconfirm important policy-group selections.

If you enable startup, distinguish between “launch the client automatically,” “start the core automatically,” and “enable the system proxy automatically.” These may be separate options. On shared computers or devices that frequently change networks, it is safer to enable the system proxy manually so an inactive proxy setting is not left behind while the client core is still starting.

For everyday use, keep one stable node as a baseline. When the network behaves unexpectedly, test the baseline node first and then compare other nodes; this helps determine whether the issue affects one route or the local network, subscription, or client as a whole. When broader traffic capture is needed, configure TUN, DNS, and routing options one at a time, repeating the three-layer check—connection records, webpage access, and exit information—after each change.

Download Clash