clash-for-windows.org · Troubleshooting Center
Mihomo (formerly Clash Meta) troubleshooting center: isolate faults by symptom
Troubleshooting is not changing every switch. Record the exact symptom and narrow the cause across application, configuration, system, network, and external-service layers.
Record the symptom, then isolate one layer
Record the time, exact error, current version, operating system, and most recent change. Reproduce once, then start at the layer closest to the symptom instead of replacing the app, configuration, and network together.
- Record the exact symptom and time
- Confirm client, core, system, and configuration versions
- Read the first explicit log error
- Change one variable at a time
- Keep each success or failure result
- Clean temporary settings only after recovery
Installation or startup failure
Check download completeness, CPU architecture, system permission, and the exact security warning. Portable builds must be fully extracted, and an old process must not still hold the files.
Configuration, sign-in, or recovery failure
Confirm the value was not wrapped by a messaging app, has no extra spaces, and is intended for this client. For account-recovery applications, verify recovery information before touching the old device.
Status looks normal but the feature fails
Check active configuration, target endpoint or service status, system proxy, DNS, and TUN in that order. Change one layer at a time and keep the first explicit log error. Record core logs, client status, and operating-system proxy state separately. A running core does not prove that application traffic is being routed through it.
Only some applications or features fail
If a browser works but one application fails, check whether that app uses its own proxy, QUIC, a virtual machine, a container, or private DNS. Compare under the same network before changing global settings.
DNS, system proxy, and TUN conflicts
The system proxy covers applications that honor it; TUN captures a broader set of traffic; DNS controls name resolution. Changing all three together makes diagnosis ambiguous, so enable them incrementally.
Read logs and ask for help safely
The first explicit error near the failure time is usually the most useful line. Share versions, system, reproduction steps, and tests, but redact subscription URLs, tokens, recovery phrases, private keys, and endpoint credentials.
Return to the last known-good state
Undo the last change, restore a known-good configuration or version, and validate the smallest function. Remove temporary files only after recovery is confirmed.
Sensitive information and privacy
Subscription URLs, recovery phrases, private keys, endpoint credentials, and full debug logs may contain secrets. Redact them before screenshots and never upload them to unknown checking sites.
Related pages
Useful guides already on this site
- Clash for Windows open reference — 30 practical guides
- Trust boundaries between Clash clients, cores, configurations and routes | Clash Meta
- Clash for Windows project history and the ecosystem after maintenance ended | Clash Meta
- Clash and privacy: understanding each trust layer | Clash Meta
- Clash Verge Rev beginner guide: download to first connection | Clash Meta
- Import a mihomo configuration: YAML, paths and validation | Clash Meta
- AMD64, ARM64, ARMv7 and Apple Silicon explained | Clash Meta
- Fake-IP vs Redir-Host: behavior and compatibility | Clash Meta