Skip To Main Content

Toggle Close Container

Mobile Schools Canvas

Mobile Main Nav

Header Holder

Header Top

Header Bottom

Header Bottom Right

Interior Stars Graphic

Find it Fast - Mobile Icons Canvas

Find it Fast

horizontal-nav

Breadcrumb

If you have ever tried to configure Xray (the successor to V2Ray), you know that while it is powerful, the configuration schema can feel like a maze. One misplaced routing object or a wrong streamSettings value, and the service refuses to start.

Save this page. Bookmark it. The next time you break your Xray config at 2 AM, this setup sheet will bring you back online. Drop your use case (CDN proxying, pure shadowsocks, or Trojan) in the comments below.

bash <(curl -L https://github.com/XTLS/Xray-install/raw/main/install-release.sh) xray config -c > full_config.json | Requirement | Standard Value | |-------------|----------------| | Protocol | VMess / VLESS | | Transport | WebSocket (WS) or gRPC | | Security | TLS 1.3 | | Auth | UUID (no alterId) | | Routing | geosite + geoip |

"log": "loglevel": "warning" , "inbounds": [ "port": 443, "protocol": "vmess", "settings": "clients": [ "id": "YOUR-UUID-HERE", "alterId": 0 ] , "streamSettings": "network": "ws", "security": "tls", "tlsSettings": "certificates": [ "certificateFile": "/path/to/fullchain.pem", "keyFile": "/path/to/privkey.pem" ] , "wsSettings": "path": "/yourpath" ], "outbounds": [ "protocol": "freedom", "tag": "direct" , "protocol": "blackhole", "tag": "block" ]

On your laptop/phone, the outbound config mirrors the inbound:

Add this routing object inside your config:

"routing": "rules": [ "type": "field", "domain": ["geosite:netflix", "geosite:spotify"], "outboundTag": "direct" , "type": "field", "ip": ["geoip:cn"], "outboundTag": "block" , "type": "field", "network": "udp", "port": "443", "outboundTag": "block" ]

The Ultimate Xray Setup Sheet: From Zero to Proxy in 10 Minutes Date: April 17, 2026 Category: Networking / DevOps