A lightweight desktop app for quickly switching DNS servers on your system. Built with Tauri, React, Vite and TypeScript.
- Switch between pre-configured DNS servers (Global & Iran-optimized)
- Add and manage custom DNS servers
- Ping all servers to check latency before switching
- Visual latency indicators (ok / warn / timeout)
- Reset DNS to system defaults
- Minimal, dark UI with no background processes
- Node.js (v18+)
- Rust
- Tauri CLI prerequisites for your OS
# Install dependencies
npm install
# Run in development mode
npm run tauri dev
# Build for production
npm run tauri build- Home — view all DNS servers, see ping results, and click a card to apply that DNS
- Add — define a custom DNS server with a name and two IP addresses
- About — app info and version
Use the Ping All button to test latency across all servers before switching. The Reset button restores your system's default DNS settings.
| Group | Description |
|---|---|
| Global | Well-known public DNS providers |
| Iran | DNS servers optimized for Iran |
| Custom | Servers you add manually |
- Tauri v2 — native shell
- React 19 + TypeScript
- Vite — build tool
- Tailwind CSS — styling
- Lucide React — icons
DNS Switcher requires elevated privileges to modify system DNS settings. On first run, you may be prompted for administrator/sudo access depending on your OS.


