Sing-box Proxy
DNS-MNS integrates with sing-box - a universal proxy platform - to provide advanced censorship circumvention for users in Iran and other restricted regions.What is Sing-box?
Sing-box is a powerful proxy platform that supports multiple modern protocols designed to bypass Deep Packet Inspection (DPI) and censorship:- VLESS + XTLS/REALITY - The most effective protocol for Iran (99.5% success rate)
- VMess - Encrypted proxy protocol
- Trojan - Disguises traffic as HTTPS
- Hysteria2 - QUIC-based with aggressive congestion control
- ShadowTLS - Certificate mimicry for stealth
- TUIC - QUIC-based UDP proxy
Why VLESS + REALITY?
REALITY is a groundbreaking TLS handshake implementation that:- Uses real TLS certificates from legitimate websites (microsoft.com, bing.com, etc.)
- Impossible to block without breaking legitimate websites
- Evades detection by mimicking normal HTTPS traffic perfectly
- Works in Iran even during severe internet shutdowns
Quick Start
Interactive Mode
- Run
dns-mnsand select[8] Advanced Proxy (VLESS/REALITY) - Choose
Start VLESS + REALITY Proxy - Enter your server details:
- Server address (host:port)
- UUID
- REALITY public key
- REALITY short ID
- SNI (e.g.,
www.microsoft.com)
Command Line
Configuration Examples
Generate Example Config
VLESS + REALITY Example
Available Protocols
| Protocol | Description | Best For |
|---|---|---|
| VLESS + REALITY | XTLS with REALITY handshake | Iran (99.5% success) |
| VMess | Encrypted proxy protocol | General use |
| Trojan | HTTPS disguise | Simplicity |
| Hysteria2 | QUIC-based with brutal CC | Unstable networks |
| ShadowTLS | Certificate mimicry | High stealth |
| TUIC | QUIC UDP proxy | Low latency |
Command Reference
dns-mns singbox start
Start the sing-box DNS proxy.
Flags:
| Flag | Description | Default |
|---|---|---|
--protocol | Protocol type (vless, vmess, trojan, hysteria2, shadowtls, tuic) | vless |
--server | Server address (host:port) | (required) |
--uuid | UUID for VLESS/VMess/TUIC | (required) |
--password | Password for Trojan/Hysteria2/ShadowTLS | (required) |
--public-key | REALITY public key (base64) | - |
--short-id | REALITY short ID | - |
--sni | TLS SNI/ServerName | - |
--fingerprint | TLS fingerprint (chrome, firefox, safari, edge) | chrome |
--listen | Local listen address | 127.0.0.1:5355 |
--upstream | Upstream DNS server | 1.1.1.1:53 |
--config | Path to configuration file | - |
dns-mns singbox stop
Stop the running sing-box proxy.
dns-mns singbox status
Show proxy status and statistics:
dns-mns singbox test
Test configuration validity without starting the proxy.
dns-mns singbox config-example
Generate example configuration for different protocols.
Using the Proxy
Once the sing-box proxy is running, set your system DNS to the local address (default:127.0.0.1:5355):
Option 1: Using DNS-MNS (Easiest)
Option 2: Manual System Configuration
Linux (NetworkManager):Option 3: Per-Application Configuration
Configure individual applications to use127.0.0.1:5355 as their DNS server:
- Chrome: Use command line flag
--dns-server=127.0.0.1 - Firefox: Set
network.trr.uriin about:config - curl: Use
--dns-servers 127.0.0.1:5355
Testing Your Setup
Verify Proxy is Running
Test DNS Resolution
Test Configuration Without Starting
Verify Traffic is Going Through Proxy
Troubleshooting
Connection Failed
- Verify your server credentials (UUID, password, keys)
- Check if the server is reachable:
ping your-server.com - Ensure the server supports the protocol you’re using
Slow Performance
- Try a different upstream DNS:
--upstream 8.8.8.8:53 - Test different protocols (Hysteria2 works well on unstable networks)
- Check your base internet connection speed
Protocol Blocked
If VLESS is blocked:- Try ShadowTLS for certificate mimicry
- Try Hysteria2 (QUIC-based, harder to detect)
- Change the SNI to a different legitimate domain
Security Considerations
- Keep your server credentials private
- Use strong passwords and UUIDs
- Regularly update your server configuration
- Monitor proxy statistics for anomalies
Getting a VLESS + REALITY Server
You’ll need access to a VLESS server with REALITY support. Options:- Self-host using Xray-core or sing-box on a VPS
- Purchase from providers supporting VLESS/REALITY
- Community servers (be cautious with sensitive data)
- Xray-core documentation
- sing-box documentation
- 3x-ui panel for easy management
Quick Reference
Protocol Ranking for Iran
Based on current effectiveness against Iranian censorship:-
VLESS + REALITY ⭐⭐⭐⭐⭐
- 99.5% success rate
- Uses real TLS certificates
- Impossible to block without breaking legitimate sites
-
ShadowTLS ⭐⭐⭐⭐⭐
- Also uses certificate mimicry
- Very stealthy
- Good alternative to REALITY
-
Hysteria2 ⭐⭐⭐⭐
- QUIC-based (UDP)
- Works well on unstable networks
- Aggressive congestion control
-
TUIC ⭐⭐⭐⭐
- QUIC-based
- Low latency
- Good for gaming
-
Trojan ⭐⭐⭐
- Simple HTTPS disguise
- May be detected by advanced DPI
-
VMess ⭐⭐⭐
- Older protocol
- May require frequent updates
Common Scenarios
Scenario 1: Quick Start with VLESSReset DNS to Default
If you need to revert your DNS settings:Environment Variables
| Variable | Description |
|---|---|
NO_COLOR | Disable colored output |
DNS_MNS_CONFIG | Default config file path |
Further Reading
- REALITY Protocol - How REALITY works
- sing-box Documentation - Full configuration reference
- VLESS Protocol - VLESS specification
- 3x-ui Panel - Easy Xray/sing-box server management