TROUBLESHOOTING INDEX

Clash FAQ and Troubleshooting

Check each layer in order, from the configuration source and system takeover to core logs and the network path. Every answer includes a way to confirm the cause and a next step, covering FlClash and common mihomo clients.

01

Confirm the Symptoms

Determine whether the client is not running, the proxy is not taking effect, the wrong rule was selected, or the remote node is unreachable. Avoid changing multiple settings at once.

02

Read the Logs

Focus on the connection target, matched rule, active policy, and error type. Logs are more reliable than simply checking whether a webpage opens.

03

Narrow the Scope

Compare a basic configuration, Global mode, or another network. Change only one condition at a time and record the result.

BASIC MODEL

Basic Concepts

Start by clarifying the roles of the client, core, subscription, and runtime modes. Once the concepts are mapped correctly, later checks are less likely to mistake a UI issue for a node failure.

4 QUESTIONS
What are Clash, FlClash, and mihomo?

Clash generally refers to this category of rule-based proxy tools and its configuration ecosystem. FlClash is a cross-platform graphical client for configuration management, policy switching, and system integration; mihomo is a commonly used compatible core responsible for protocol connections, DNS handling, and rule matching. Troubleshooting starts by separating UI operations, system permissions, and core runtime issues.

How does Clash Meta relate to traditional Clash configurations?

mihomo retains the familiar Clash YAML structure while adding more protocol, rule-set, and DNS options. Basic fields such as proxies, proxy-groups, and rules generally remain usable, but some extended fields work only with compatible cores. When migrating a configuration, first parse the file with the client's configuration checker, then review the logs for unknown fields or type errors.

What's the difference between a subscription link and a YAML configuration file?

A subscription link is a remote configuration source that the client requests again whenever it refreshes. A YAML file is a complete configuration saved locally at a specific point in time. Subscriptions are useful for ongoing node and rule updates, while local files are better for debugging and offline records. Changes made directly to a generated subscription config may be overwritten during the next update, so persistent edits should go into a supported override or merge configuration.

How should you choose between Rule, Global, and Direct mode?

Rule mode matches the rules list from top to bottom and suits everyday use. Global mode sends all connections through the selected policy and is useful for temporarily testing a node. Direct mode bypasses the proxy and helps determine whether the proxy path is causing the issue. During troubleshooting, test one node in Global mode first, then return to Rule mode to check policy groups and rule matches.

INSTALL AND CONFIG

Setup & Installation

Importing a configuration, installing system components, and granting network permissions are the steps most likely to interrupt a first setup. Follow the error message first instead of repeatedly reinstalling the client.

4 QUESTIONS
What should you do if a subscription link suddenly stops working or fails to refresh?

Open the subscription URL in a browser first and confirm that it returns text or downloads a configuration file. An expired link, authorization error, or blank response means the URL must be renewed with the subscription provider. If the browser works but the client fails, check the system clock, the client's proxy update settings, and the HTTP status code in the logs. You can also temporarily disable the system proxy and retry to prevent the broken configuration from proxying its own update request.

How can you locate a parsing error after importing YAML?

Start at the reported line and check indentation, spaces after colons, list hyphens, and matching quotes. YAML does not accept tab indentation, and each nesting level must use a consistent number of spaces. If the reported location looks correct, inspect the preceding line for a missing colon or bracket. Remove recently added dns, proxy-groups, or rules sections one at a time until the configuration loads, then narrow the issue down to the specific field.

What should you do when TUN mode reports insufficient permissions?

Windows usually requires administrator privileges to install or start service mode. On macOS, allow the network extension or helper component when prompted by the system. On Linux, the core process needs permission to create a TUN device and modify routes. After granting access, fully quit and relaunch the client. If it still fails, check whether another VPN, virtual network adapter tool, or security application is using the relevant network components.

What should you do if macOS blocks the client or its network extension?

First confirm that the installer matches your processor architecture; Apple Silicon devices should preferably use an ARM build. If macOS blocks the launch, open System Settings > Privacy & Security, find the recently blocked app, and allow it manually. If enabling TUN triggers a network-extension prompt, grant permission in the same area. Reopen the client afterward, and avoid keeping helper components from multiple versions installed at once.

DAILY OPERATION

Usage Tips

System proxying, UWP loopback, latency tests, and listening ports affect different parts of the connection path. Choose the takeover method that matches the app type instead of switching nodes repeatedly.

4 QUESTIONS
Why does the browser still connect directly after the system proxy is enabled?

Make sure the client is running and that the address shown in the system proxy settings matches the mixed-port or HTTP port. Then check whether the browser uses a separate proxy extension, fixed proxy parameters, or a secure DNS policy, any of which may bypass the system proxy. You can also check the logs for browser requests. No entries usually means the system proxy is not taking effect; entries using DIRECT point to a rule-matching issue.

How can you fix proxy access for Windows Store apps with UWP loopback?

Some UWP apps cannot access a local loopback proxy address by default, so desktop programs work while Store apps fail. Use the client's UWP loopback tool to select the target app, enable loopback exemption, and save. If that option is unavailable, use PowerShell's Get-AppxPackage to find the package name, then use the system's CheckNetIsolation tool to add the exemption. Fully close and relaunch the target app afterward.

How should Clash node latency test results be interpreted?

A latency test usually measures only the time needed to establish a connection to the test address. It is not the same as download speed and does not fully represent stability. Compare nodes against the same test address, then consider repeated access, downloads, and timeout entries in the logs. A timed-out node may be unreachable or simply incompatible with that test address; switch to Global mode and visit a regular HTTPS website for a second check.

How should you configure the mixed-port, HTTP port, and SOCKS port?

mixed-port accepts both HTTP and SOCKS connections, making it the most convenient choice for manually configuring applications. port provides HTTP proxy access only, while socks-port provides SOCKS proxy access only. Each port must be free, and the system proxy usually uses the local address with the corresponding port. For LAN devices, also enable LAN access and restrict the trusted network range in the firewall.

FAULT ISOLATION

Troubleshooting

Connection timeouts, DNS failures, and startup problems are easiest to isolate through controlled comparisons. Keep the logs and change only one condition at a time to find the cause faster.

4 QUESTIONS
What should you do when a node appears available but every connection times out?

Switch to Global mode and select that node explicitly to rule out another policy being chosen by the rules. Then check the device clock, whether the network can reach the node server, whether all protocol parameters are present, and whether the logs show a connection timeout, TLS error, or authentication failure. If every node in the same subscription times out, test another network and inspect the firewall. If only one node fails, refresh the subscription or replace the node.

How can you fix apps that lose network access after Fake-IP is enabled?

Fake-IP returns reserved addresses and lets the core maintain domain mappings, so apps that rely on LAN discovery, specific game platforms, or local device hostnames may be incompatible. Check the logs to identify the failing domains, then add only the necessary domains to fake-ip-filter instead of using an overly broad wildcard. If many apps fail, also check whether the core controls DNS, whether nameserver entries are available, and whether another DNS tool is running alongside it.

How can you troubleshoot a client crash on startup or a core that will not start?

Quit any leftover processes and relaunch the client, then inspect the final entries in its log directory. Common causes include an occupied proxy port, an invalid YAML file, insufficient permissions for a service component, or an old core process that did not exit. Temporarily switch to a known-good basic configuration to test the startup path. If it works, restore DNS, nodes, policy groups, and rules section by section until the failing part is identified.

What should you do when imported subscriptions have no policy groups or an empty node list?

Confirm that the subscription response actually contains node definitions rather than a login page, error message, or empty configuration. If nodes exist but policy groups are empty, check that proxy-groups is defined and that the node names referenced by each group exactly match those under proxies. If the problem appeared after subscription conversion or overrides, temporarily disable the conversion rules and import again. Log messages about missing proxies, empty policy groups, or field type errors can point directly to the affected configuration section.