DIRECT / DNS Protocol

DIRECT exits directly, while the DNS outbound sends DNS requests to the internal DNS module; neither is a remote node protocol.

Short answer

DIRECT exits directly, while the DNS outbound sends DNS requests to the internal DNS module; neither is a remote node protocol. In real use, trust the provider subscription first and then verify whether the selected client core supports this exact type.

What It Means

In Clash/Mihomo configuration, direct / dns identifies the outbound type used by the node, policy or group. The same display name in a GUI can hide different transport fields, so the YAML or subscription output is more reliable than the node nickname.

Common Fields

  • type: direct
  • type: dns
  • udp
  • interface-name
  • routing-mark
  • ip-version

When to Use It

  • Rules need domestic, LAN or selected domains to go direct.
  • DNS requests should be hijacked into the Clash/Mihomo DNS module.
  • A policy group needs a direct option.

Support Checks Checks

  • DIRECT is not just proxy off; it is a selectable outbound.
  • The DNS outbound handles DNS traffic and does not replace the full DNS config.
  • Direct reachability still depends on the local network.

Minimal Shape

proxies:
- name: "dns-out"
  type: dns

rules:
- DOMAIN-SUFFIX,local,DIRECT
- MATCH,Proxy

Compatibility Notes

Client support changes with the bundled core. A maintained Mihomo-based client usually supports more modern node types than historical Clash clients, but mobile clients and iOS alternatives still vary by app and release.

If a subscription contains this type but the client filters it out, switch to a compatible client, ask the provider for a compatible subscription format, or use a converter only when you understand what fields are being changed.

Official Reference

DIRECT / DNS in Mihomo docs DNS