Getting Started 12-minute read

How to Connect Clash for the First Time: Choose a Node, Test Latency, and Verify Proxy Status

Import a subscription, choose a node, confirm the mode, enable the system proxy, and verify access with this complete first-connection guide.

After a Clash client launches for the first time, a normal-looking interface does not mean the proxy path is ready. A complete connection involves at least six stages: loading the configuration, choosing a proxy group, confirming node reachability, selecting the operating mode, routing system traffic into Clash, and verifying access to the target. If any stage fails, you may see symptoms such as “the node has latency, but webpages will not load,” “the client says it is running, but the exit address is unchanged,” or “some apps connect while the browser does not.”

The safest approach is to verify the data path one stage at a time instead of toggling several switches in succession. First make sure the client can parse the configuration, then select a working node, enable the correct traffic entry point, and finally cross-check the logs against a real access result. These steps apply to common desktop Clash clients as well as graphical clients using the Clash Meta (mihomo) core. Button names may vary, but the verification logic remains the same.

PROFILE INPUT

Step 1: Import a Subscription and Confirm the Configuration Loaded

A subscription URL is not a node itself; it is the entry point the client uses to retrieve configuration data. The server response usually contains proxy nodes, proxy groups, rules, DNS settings, and references to remote rule sets. Successful import means more than seeing a subscription entry in the list: confirm that it is selected as the active configuration and that the client reports no YAML syntax errors, invalid field types, or failed remote-resource downloads.

Standard Subscription Import Order

  1. Copy the complete subscription URL. Check that it starts with https://, and avoid copying spaces before or after the address.
  2. On the Profiles, Configuration, or Subscription page, choose “Import from URL,” paste the address, and start the download.
  3. Wait for the configuration entry to show a name, update time, or size, then select it to make it the active configuration.
  4. Open the logs and confirm that there are no recurring parse errors, invalid fields, failed resource downloads, or configuration-load failures.
  5. Return to the Proxies page and check that proxy groups and nodes are present. If the configuration name is blank and no proxy groups appear, do not proceed to node testing.

Some clients save multiple configurations but activate only one at runtime. If old nodes still appear after importing a new subscription, the active configuration may not have been switched, or the new configuration may not have been reloaded. Note the current configuration name first, then switch configurations once. During the initial verification, avoid enabling multiple override scripts at the same time, because overrides can change proxy groups, DNS, or port fields.

How to Tell Whether the Problem Is the Subscription or the Client

Symptom Check first Next step
A network error appears immediately after import Whether the subscription URL is complete and the current network can reach the subscription endpoint Copy the URL again and retry from a network that is not using a proxy
The download succeeds but parsing fails Whether the response is a valid Clash configuration Record the line number and field name from the logs, then update the subscription source
The configuration exists, but the Proxies page is empty Whether the active configuration is selected and whether it defines proxy groups Switch to the new configuration and reload it
The node list is still the old one The subscription update time and active configuration name Update it manually, then select the configuration again

NODE SELECTION

Step 2: Choose a Node and Interpret Latency Tests Correctly

After the configuration loads, open the Proxies page. Nodes are usually organized into proxy groups such as “Node Selection,” “Auto,” “Fallback,” or region-based groups. Rules ultimately reference a proxy group, so choosing a node inside a regional group is not enough if the parent group does not reference that group; actual traffic may still use another exit.

Start by Reviewing Proxy-Group References

For the first test, find the manual selection group used by most rules and choose one specific node directly. If the main selection group points to “Auto,” the latency-based group determines the active node. If it points to a regional group, open that group and confirm the second-level selection as well. Think of the relationship as:

Rule match → main proxy group → regional or auto group → specific proxy node

When the client provides connection details, confirm that the last item shown is a specific node name rather than an unselected proxy group. A selection change usually takes effect immediately: new connections use the new node, while existing long-lived connections may continue using the old path. For verification, close the target tab and open it again; terminate the old connection if necessary.

What Latency Numbers Mean

A client latency test usually sends an HTTP or HTTPS request to a specified test URL and records how long it takes to establish the connection or receive a response. It is a quick way to check basic node reachability, but it is not the same as an ICMP ping and does not represent the speed of every target website. The test server location, TLS handshake, node congestion, local network jitter, and timeout value all affect the result.

  • A specific millisecond value: The test request completed within the allowed time, indicating basic node reachability.
  • Timeout: The node may be unreachable, the test address may be blocked, protocol parameters may be invalid, or the local network may be unable to establish a connection.
  • Occasionally high values: Run two or three consecutive tests and check whether the issue persists. Do not judge a node from a single result.
  • Low latency but failed webpages: Continue checking rules, DNS, the system proxy, and the target-site path. A successful latency test is not a complete verification.

Choosing a node is not about chasing the lowest number. For an initial connectivity test, prioritize a node that responds consistently across several tests with limited variation. If every node times out at once, suspect invalid subscription parameters, a restricted local network entry point, a stopped client core, or an unavailable test address rather than simultaneous independent failures on every node.

ROUTING MODE

Step 3: Confirm Rule, Global, and Direct Modes

Clash’s operating mode determines how connections are assigned to policies. Common modes include Rule, Global, and Direct. For first-time use, Rule mode is recommended because it evaluates the configuration’s rules from top to bottom, typically allowing local addresses to connect directly, specified destinations to use a proxy, and a final rule to catch everything else. Actual behavior depends on the active configuration; Rule configurations do not all produce the same routing results.

RULE

Rule mode

Matches domains, IP addresses, processes, or rule sets and assigns them to proxy groups. It is suitable for everyday use and is the recommended baseline for a first connection.

GLOBAL

Global mode

Sends all connections entering the core to the global proxy group. It is useful for briefly checking whether a rule is sending the target direct or selecting the wrong policy.

DIRECT

Direct mode

Connects traffic entering the core directly to its destination. Use it for comparison testing; it does not forward traffic through the selected proxy node.

If a target is inaccessible in Rule mode but works after switching to Global, the issue is usually the rule match, proxy-group selection, or DNS routing rather than the system proxy entry point. Open the connection log and check which rule matched, which proxy group received the request, and which node was ultimately used. Switch back to Rule after testing so a temporary diagnostic state is not mistaken for a permanent setting.

Direct mode is also useful for diagnosis. If common local websites fail even in Direct mode, check the system proxy port, core status, or firewall first. If Direct works but proxy mode fails, check the node and proxy-protocol parameters. Switching modes only changes how traffic is handled after entering Clash; it cannot replace an entry point such as the system proxy or TUN.

TRAFFIC ENTRY

Step 4: Enable the System Proxy to Route App Traffic through Clash

Node tests are initiated by the client core, so they may return latency values even when the system proxy is disabled. For browsers and desktop apps to use Clash, their traffic must also enter a local listening port. Desktop clients usually provide a “System Proxy” switch that points the operating system’s HTTP and HTTPS proxy settings to Clash’s local port.

Conditions Required for the System Proxy to Work

  1. The Clash core is running, with no port conflict or startup failure.
  2. The system proxy switch is enabled, and the operating system proxy address usually points to the local loopback address.
  3. The browser or app follows the system proxy settings and does not override them with its own proxy configuration.
  4. The local firewall allows the client process to listen on and access the relevant port.
  5. The port matches the one written to the system proxy settings, and the system proxy has been reapplied after any port change.

Common configurations provide an HTTP port, a SOCKS port, or a mixed-port. A mixed-port can accept HTTP and SOCKS connections on the same port, but whether it is enabled depends on the configuration and client implementation. Do not copy a port from a screenshot of another device; use the current client’s port page and runtime logs.

If the browser has a standalone proxy-management extension installed, it may bypass or override the system proxy. For the first check, keep only one entry point: either let the browser follow the system settings or explicitly point it to Clash’s local listening port. Changing both at once makes the source of a failure difficult to identify. Some apps ignore the system proxy entirely; configure an HTTP/SOCKS proxy inside those apps, or use TUN after the basic connection has been verified.

VERIFY OUTPUT

Step 5: Verify with Access Results, Connection Records, and Logs

Do not judge proxy status by the switch color alone. A reliable conclusion needs at least three signals: the target page loads, the Clash connection log shows the corresponding request, and that request uses the expected policy and node. To verify the public exit address, visit a trusted IP lookup service once with the proxy enabled and once with it disabled, then compare the results.

Recommended Verification Order

  1. Keep Rule mode enabled and confirm that the main proxy group has selected the node that just passed testing.
  2. Enable the system proxy, then close the target page and any existing connections in the browser.
  3. Visit a commonly used local website to confirm that the system proxy has not interrupted the network as a whole.
  4. Visit a target that should use the proxy and watch the Connections page for its domain.
  5. Expand the connection details and check the rule name, proxy group, final node, upload and download data, and connection status.
  6. Check the logs for DNS resolution failures, refused connections, handshake timeouts, or routing failures.

Connection records are direct evidence that traffic entered Clash. If the browser is accessing a target but the connection list contains no matching domain or IP, the problem is probably before Clash: the system proxy was not applied, the browser bypassed it, the app uses its own network stack, or the core’s listening port does not match the system settings. If a record exists but remains stuck at a timeout, continue checking the node, DNS, rules, and remote path.

How to Diagnose an Unchanged Exit Address

First confirm that the test target actually matched a proxy policy. Rule mode may route some IP lookup sites directly, so an unchanged exit address does not necessarily mean the system proxy failed. Check the match in the connection details, or switch briefly to Global for comparison. If the address changes in Global mode, the proxy path works and the rules or proxy group need adjustment. If there is still no corresponding connection record in Global mode, return to the traffic entry point.

Also account for browser cache, connection reuse, and QUIC. Existing connections may not be rebuilt immediately after switching nodes, and some browsers’ UDP/QUIC traffic may behave differently from ordinary HTTP proxy traffic. The simplest approach is to close the relevant tabs, wait for old connections to end, and visit the target again. Do not test latency while repeatedly switching nodes and modes; otherwise, it becomes difficult to match log entries to specific actions.

FAULT ISOLATION

Layered Troubleshooting Table for a Failed First Connection

When the first connection fails, check each layer in this order: “configuration → core → node → entry point → rules → DNS.” Change only one setting at a time and start a new connection after each change. This identifies which layer recovered instead of producing a temporarily working combination by chance.

Observed symptom Likely layer Action
No nodes appear on the Proxies page after startup Configuration and subscription Confirm the active configuration, update result, and parsing logs
All node tests fail immediately Core, subscription, or local network Check core status, configuration parameters, and the test address
Nodes have latency, but the browser’s connection list is empty System proxy entry point Check the system proxy switch, listening address, and port
A connection is listed, but the target times out Node or remote path Switch to a node with stable test results and rebuild the connection
Global works, but Rule does not Rules and proxy groups Check the matched rule, proxy-group references, and the final fallback rule
The domain fails, but the IP address responds directly DNS Check the resolution logs, DNS mode, and upstream reachability
The browser works, but other apps do not use the proxy Application proxy support Check the app’s proxy settings, then evaluate TUN

How to Confirm a DNS Problem

Clash Meta (mihomo) configurations may use DNS-enhanced modes such as fake-ip or redir-host. Their resolution paths and caching behavior differ, but the first troubleshooting steps are the same: confirm that domain queries enter the expected DNS module, that upstream servers are reachable, and that the domain information required for rule matching is preserved. Do not replace multiple DNS upstreams before confirming that the system proxy works.

If the logs clearly show a domain-resolution timeout, test other domains first to determine whether one domain or all queries are affected. If only specific domains fail, check rules, hosts overrides, and fake-IP filters. If every domain fails, check the DNS listening port, upstream protocol, network reachability, and DNS interception settings under TUN. After updating the configuration, clear the client’s DNS cache or restart the core so old records do not affect the result.

When to Enable TUN Mode

Consider TUN only after browser access through the system proxy, policy matching, and node exit have all been verified, but games, command-line tools, or apps that ignore system proxy settings still cannot be routed. Before enabling it, record the currently working configuration and ports so you can roll back quickly. TUN typically involves a virtual network adapter, routing tables, DNS interception, administrator privileges, and strict-route settings, so its failure scope is broader than that of the system proxy.

After enabling TUN, first check that the virtual interface was created and that the default route changed as expected. Then verify that the app’s connections appear in the Clash connection log. If enabling TUN cuts off the entire machine’s network, disable it immediately and restore the basic path. Do not change the MTU, DNS, routes, and firewall at the same time. Once the basic proxy works, a TUN issue can usually be isolated independently.

FINAL CHECKLIST

First-Connection Checklist

Treat the first-connection workflow as complete only when every item below is satisfied. Adjust auto selection, fallback, rule sets, DNS, and TUN later according to the device’s needs; there is no need to configure every advanced feature in the first pass.

  • The subscription has updated successfully and is set as the active configuration.
  • The Proxies page shows proxy groups and specific nodes.
  • At least one node returns stable results across multiple tests.
  • The main proxy group ultimately points to that node rather than an unconfigured secondary group.
  • The operating mode is Rule, and any temporary diagnostic mode has been reverted.
  • The Clash core is running normally, with no conflict on the local listening port.
  • The system proxy is enabled, and browser traffic appears in the connection records.
  • The connection details show the expected rule, proxy group, and final node.
  • The target page can establish a new connection and load normally.
  • The logs show no recurring parsing, DNS, or handshake errors.

After completing these checks, save the current configuration state and record the client version, core type, configuration name, and working node. If a connection problem appears later, return to this baseline: can the configuration load, is the node reachable, is traffic entering the core, and is the correct exit selected by the rules? Compared with repeatedly reinstalling the client, checking the path layer by layer makes the actual failure point much easier to locate.

Download Clash