Skip to content

WireGuard ​

This is the single-peer form. For multiple peers, move each remote server, port, public-key, and allowed-ips into a peers list; retain client addresses and private-key at node level. Replace the example keys before use.

Node example ​

Merge this node into the configuration’s proxies list. Replace example addresses, identities, and credentials. If you rename Node, update group references too.

yaml
proxies:
  - name: Node
    type: wireguard
    server: proxy.example.com
    port: 443
    ip: 10.10.0.2
    private-key: YOUR_BASE64_PRIVATE_KEY
    public-key: SERVER_BASE64_PUBLIC_KEY
    allowed-ips: [0.0.0.0/0]
    udp: true

Protocol fields ​

FieldHow to configure it
ip / ipv6Tunnel addresses assigned to this client.
private-keyClient private key, a Base64-encoded 32-byte key.
public-keyRemote peer public key, not the client public key.
pre-shared-keyAdditional PSK if configured by the server.
allowed-ipsDestination ranges carried by this peer; 0.0.0.0/0 covers IPv4.
mtu / persistent-keepaliveMTU in bytes and keep-alive interval in seconds.
remote-dns-resolve / dnsEnable resolution inside this outbound with DNS servers reachable through the tunnel.

Groups and rules · Common fields · TLS · Transports

Reference: mihomo.