Skip to content

DIRECT and REJECT

Besides the nodes in your subscription, MeowX always provides a few built-in outbounds. You do not declare them under proxies:; you use their names directly in rules and proxy groups:

proxy-groups:
- name: Streaming
type: select
proxies: [hk-1, jp-1, DIRECT]
rules:
- DOMAIN-SUFFIX,ads.example.com,REJECT
- GEOIP,CN,DIRECT
- MATCH,Streaming
Name Behavior in MeowX
DIRECT Connects to the destination directly, without a proxy.
REJECT Refuses the connection immediately.
REJECT-DROP Same as REJECT.
PASS Same as DIRECT (see the note below).
COMPATIBLE Accepted for compatibility; behaves like DIRECT.

These names are reserved: a node or proxy group named DIRECT, REJECT, REJECT-DROP, PASS or COMPATIBLE makes the whole configuration fail to load.

DIRECT sends the connection out through your device’s own network connection.

  • Domain names and fake-IP destinations are resolved by MeowX first, using the DNS servers for direct connections (direct-nameserver when configured). Destinations that are already real IP addresses are used as-is and are not resolved again.
  • Multiple addresses: for TCP, MeowX tries up to the first 4 resolved IPv4 addresses one after another — 3 seconds per address, 10 seconds in total — so one unreachable address does not stall the connection.
  • UDP is supported and full-cone.
  • A fake-IP address that no longer maps to a domain name is refused rather than sent into a black hole.

REJECT refuses the connection: a TCP connection is closed right away and UDP packets are discarded. Rules targeting REJECT apply to UDP as well as TCP, so rules such as AND,((NETWORK,UDP),(DST-PORT,443)),REJECT (commonly used to block QUIC) work as expected.

REJECT-DROP behaves exactly like REJECT in MeowX. It is accepted so subscriptions written for mihomo load unchanged.