Clash Glossary
21 frequently-used terms organized into five categories. Each entry runs 2-4 sentences, covering only the precise meaning of the term in a Clash context and the key points for writing it into a config. Every card has an anchor you can link to directly from a tutorial or a support thread. For the full range of values for every field, see the YAML manual.
Inclusion criteria: terms that appear in the client UI, config files, or error messages, and that a newcomer is likely to get stuck on the first time they see them. Overly obscure protocol parameters are excluded — nobody remembers them anyway.
Core Concepts
Subscription, node, proxy group, core — understand how these four relate to each other and you already understand most of how Clash works.
- Subscription
subscription - A URL provided by a proxy service or a self-hosted server; the client fetches it periodically to retrieve a full node list and config. The content might be a Base64-encoded node list or an entire Clash YAML file. Updating a subscription only refreshes node information — whether it overwrites local manual edits depends on the client's merge strategy.
- Node
proxy - The connection parameters for a single proxy server, including server address, port, protocol type, and encryption method. In the config file's
proxiessection, each node is one entry. A node's quality is determined by its route, server load, and protocol characteristics — not necessarily by the region named in its label. - Proxy Group
proxy-groups - Groups multiple nodes by purpose and defines how one is picked:
selectfor manual selection,url-testfor automatic latency-based selection,fallbackfor sequential failover. Once a rule matches, traffic is handed to the proxy group, and the group's own logic decides which node ultimately handles it. - mihomo
core - The core currently used by mainstream Clash clients, kept alive by the community after the original Clash core stopped receiving updates; it was formerly known as Clash.Meta. Compared to the old core, it supports more protocols (Hysteria2, TUIC, and others) and finer-grained rule types. GUI clients like Clash Verge Rev and ClashX Meta are all shells built around it.
- Latency Test
url-test - The client sends a request to a designated test URL and records how long it takes to complete, in milliseconds. This number reflects handshake and round-trip time — not bandwidth — so a low-latency node won't necessarily give you smoother video. The test URL, the handshake method used, and result caching all affect the number shown in the panel.
Protocols & Transport
The common values of the type field in a node entry, and the transport layers they're often wrapped in.
- Shadowsocks
ss - A lightweight encrypted proxy protocol with a simple structure and low performance overhead — one of the earliest protocols Clash supported. Common config fields are
cipher(encryption method) andpassword. In a node entry,typeis set toss, and the cipher must match the server exactly or the connection fails outright. - VMess
vmess - The native protocol of the V2Ray project, authenticated by UUID — the client and server UUIDs must match exactly. Often paired with WebSocket and TLS to disguise proxy traffic as ordinary HTTPS. It has more fields than most protocols; in modern deployments
alterIdis usually fixed at 0. - Trojan
trojan - A proxy protocol that mimics HTTPS behavior and requires a valid TLS certificate, giving its traffic pattern the appearance of a normal website visit. Key config fields are
passwordandsni. If the server certificate doesn't match the SNI, the handshake will be rejected. - Hysteria2
hysteria2 - A high-throughput protocol built on QUIC/UDP, tuned for congestion control on high-loss, long-distance links, commonly seen on cross-border routes. It requires a modern core such as mihomo to be recognized — loading a config with this node type on an old Clash core will throw an error. If UDP is blocked on the network, this protocol won't work at all.
- WebSocket Transport
ws - A common transport-layer disguise that wraps proxy data inside a WebSocket connection and layers TLS on top, making it look from the outside like an ordinary web long-lived connection. Because it runs on the standard port 443 and can be relayed through a CDN, it's often used to improve connection survivability. In a node entry it corresponds to
network: wsandws-opts.
Rules & Routing
The rules section decides where every connection goes — it's what sets Clash apart from an ordinary system-wide proxy tool.
- Rule-Based Routing
rules - The config file's
rulessection is matched top-to-bottom, and matching stops at the first hit — later rules are never consulted. Common types includeDOMAIN-SUFFIX(domain suffix),IP-CIDR(IP range), andGEOIP(IP geolocation). The order in which rules are written directly determines the routing outcome; the same set of rules in a different order can behave completely differently. - GeoIP
GEOIP - A rule type matched by IP geolocation, relying on a local database file (typically
Country.mmdb). A typical rule isGEOIP,CN,DIRECT, sending connections that resolve to a mainland China IP straight out without a proxy. The database needs periodic updates — a stale one can misroute newly allocated IP ranges. - GeoSite
GEOSITE - A rule type matched against a domain category database that pre-packages thousands of domains into categories like
googleorcn, letting one rule cover an entire category of sites and dramatically shortening the rule list. The category database and the GeoIP database are two separate files, each maintained and updated independently. - DIRECT / REJECT
built-in policies - Two built-in policies that require no definition.
DIRECTconnects to the target without going through any proxy;REJECTblocks the connection outright, and is commonly used to block ads and telemetry domains. Both can appear as the action in any rule, just like a regular proxy group. - MATCH
fallback rule - The final catch-all entry at the end of the rule list, matching any traffic not caught by earlier rules, written as
MATCH,PROXY. Without it, unmatched traffic falls back on whatever the core's default behavior is, making routing outcomes unpredictable. When troubleshooting "some sites go the wrong way," check what the fallback rule points to first.
Config Fields
The fields you run into in the first few lines of config.yaml, plus the two switches that most affect day-to-day experience.
- YAML
config.yaml - The text format Clash config files use, expressing hierarchy through indentation and extremely sensitive to whitespace. Indentation must use spaces, never tabs, and a space is required after every colon. Most "config failed to load" errors trace back to a YAML syntax slip, not bad content.
- mode
rule / global / direct - The global operating mode field, with three values:
ruleroutes by the rule list,globalproxies all traffic, anddirectsends all traffic direct. Everyday use should keepmodeatrule;globalis only useful for temporarily checking "is this actually a rules problem," and leaving it on long-term wastes bandwidth. - TUN Mode
tun - The core creates a virtual network adapter and intercepts all system traffic at the network layer, independent of whether an application honors the system proxy setting — so it covers command-line tools, games, and other processes that "don't know about proxies." Enabling it requires administrator privileges or system extension approval, and it's usually paired with DNS hijacking to work properly.
- Fake-IP
enhanced-mode - A DNS response strategy: the client first returns a placeholder IP from a reserved range (
198.18.0.0/16by default), and once the application initiates a connection, the core maps that fake IP back to the real domain to handle it. This skips a round of real DNS lookup, speeding up connection setup; a handful of apps that depend on the real IP need to be added tofake-ip-filteras exceptions. - allow-lan
LAN sharing - When set to
true, Clash listens on all network interfaces instead of just the local loopback, letting phones and TVs on the same LAN point their proxy settings at this device and share one exit. This exposes the port to the whole LAN once enabled, so pair it with a firewall orauthenticationto restrict who can connect.
Networking Basics
Not concepts unique to Clash, but unavoidable when troubleshooting.
- DNS Leak
DNS leak - The proxy is on, but domain resolution requests still go directly to the local ISP's DNS server, exposing which sites are being visited to the local network. This is common when only the system proxy is set and DNS hasn't been intercepted. Enabling TUN mode with DNS hijacking, or using Fake-IP mode, both noticeably mitigate it.
- System Proxy
system proxy - An operating-system-level HTTP/SOCKS proxy setting that well-behaved applications, like browsers, actively read and use. It's a convention, not an enforcement mechanism, and some programs ignore it entirely. If a piece of software refuses to go through the proxy no matter what, check whether it honors the system proxy at all — if not, switch to TUN mode.
- UDP Relay
udp: true - The ability of a proxy link to carry UDP traffic, which online games, voice calls, and QUIC-based websites all depend on. It requires support from the protocol itself, the server configuration, and the node field all at once — a node entry typically has
udp: true. If a game has normal latency but keeps dropping connection, UDP probably isn't being relayed. - mixed-port
mixed-port - A listening mode that accepts both HTTP and SOCKS5 proxy traffic on the same port, replacing the older combination of separate
portandsocks-portsettings. Modern clients default tomixed-port: 7890; when entering a proxy address in another piece of software, just write127.0.0.1:7890— no need to distinguish between protocols.
What's Next
A glossary only answers "what does this term mean." The full range of values for each field, with config examples, is laid out in the YAML manual; for a specific issue like "why won't it connect," check the troubleshooting categories in the FAQ first; for a complete step-by-step path from scratch, see the tutorial. Haven't installed a client yet? Pick your platform on the Get the Client page.