
IPChanger is a lightweight command-line tool designed for ethical hackers, security researchers, and privacy enthusiasts. It allows users to automatically change their IP address at defined intervals by leveraging the Tor network, helping simulate different network identities during security testing, anonymity research, and penetration testing.
A powerful Tor-based IP rotation CLI tool that automatically changes your public IP address at a specified interval and displays it in a clean terminal table.
Built with ❤️ by @CappricioSec

⚠️ For educational and privacy testing purposes only. Do not misuse this tool for illegal activities.
figletLanguage
Libraries Used
axioscommandercli-table3figletchalkipchanger/
├── includes/
│ ├── banner.js # banner, UI and help menu
│ ├── ip.js # Tor connection and public IP fetching
│ ├── utils.js # Tor checks and CLI argument handling
│
├── ipchanger.js # main CLI entry point
├── package.json
└── README.md
First ensure Tor is installed on your system.
Download Tor:
sudo apt install torbrew install torThen install the CLI globally:
npm install -g @karthithehacker/ipchanger
ipchanger -s 5
| Command | Description |
|---|---|
-s <seconds> | Rotate IP every specified seconds |
-h | Show help menu |
┌──(karthithehacker㉿BOOK-UVR5FJ22CV)-[~]
└─$ ipchanger -s 10
██╗██████╗ ██████╗██╗ ██╗ █████╗ ███╗ ██╗ ██████╗ ███████╗██████╗
██║██╔══██╗ ██╔════╝██║ ██║██╔══██╗████╗ ██║██╔════╝ ██╔════╝██╔══██╗
██║██████╔╝ ██║ ███████║███████║██╔██╗ ██║██║ ███╗█████╗ ██████╔╝
██║██╔═══╝ ██║ ██╔══██║██╔══██║██║╚██╗██║██║ ██║██╔══╝ ██╔══██╗
██║██║ ╚██████╗██║ ██║██║ ██║██║ ╚████║╚██████╔╝███████╗██║ ██║
╚═╝╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝
Website: cappriciosec.com
┌─────────────────────────┬────────────────────────────────────────┐
│ Service │ Information │
├─────────────────────────┼────────────────────────────────────────┤
│ Tor Status │ Tor service started │
├─────────────────────────┼────────────────────────────────────────┤
│ IP Rotation │ IP change every 10 sec │
├─────────────────────────┼────────────────────────────────────────┤
│ Terminate │ Press X to terminate │
└─────────────────────────┴────────────────────────────────────────┘
[3:23:32 AM] Current IP → 107.189.3.148
[3:23:56 AM] Current IP → 192.42.116.144
[3:24:00 AM] Current IP → 109.70.100.9
[3:24:16 AM] Current IP → 109.70.100.3
[3:24:20 AM] Current IP → 107.189.10.175
[3:24:36 AM] Current IP → 45.134.225.36
[3:24:39 AM] Current IP → 109.70.100.7
[3:24:56 AM] Current IP → 192.159.99.168
┌──(karthithehacker㉿BOOK-UVR5FJ22CV)-[~]
└─$ ipchanger -h
██╗██████╗ ██████╗██╗ ██╗ █████╗ ███╗ ██╗ ██████╗ ███████╗██████╗
██║██╔══██╗ ██╔════╝██║ ██║██╔══██╗████╗ ██║██╔════╝ ██╔════╝██╔══██╗
██║██████╔╝ ██║ ███████║███████║██╔██╗ ██║██║ ███╗█████╗ ██████╔╝
██║██╔═══╝ ██║ ██╔══██║██╔══██║██║╚██╗██║██║ ██║██╔══╝ ██╔══██╗
██║██║ ╚██████╗██║ ██║██║ ██║██║ ╚████║╚██████╔╝███████╗██║ ██║
╚═╝╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝
Website: cappriciosec.com
Usage:
ipchanger -s <seconds> Restart Tor every X seconds
ipchanger -h Show help
┌────────────────────┬───────────────────────────────────────────────────────┬─────────────────────────────────────────────┐
│ Application │ Command / Steps │ Description │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ Chromium │ chromium --proxy-server="socks5://127.0.0.1:9050" │ Launch Chromium with SOCKS5 proxy enabled │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ Chrome │ chrome --proxy-server="socks5://127.0.0.1:9050" │ Launch Google Chrome with SOCKS5 proxy │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ Firefox │ Settings → Preferences → Network Settings → Manual │ Configure Firefox via UI to use SOCKS5 │
│ │ Proxy → SOCKS Host: 127.0.0.1 Port: 9050 SOCKS v5 → │ proxy │
│ │ Enable Proxy DNS │ │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ Linux (system) │ export ALL_PROXY="socks5h://127.0.0.1:9050" │ Set proxy for terminal apps (session only) │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ Linux │ Add socks5 127.0.0.1 9050 to /etc/proxychains.conf → │ Force any application to use SOCKS5 proxy │
│ (proxychains) │ proxychains4 <command> │ │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ macOS │ sudo networksetup -setsocksfirewallproxy "Wi-Fi" │ Apply SOCKS5 proxy to Wi-Fi network │
│ │ 127.0.0.1 9050 │ │
├────────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────┤
│ Windows │ Use Proxifier / ProxyCap → Add Proxy: 127.0.0.1:9050 │ Windows requires helper tool for global │
│ │ (SOCKS5) │ SOCKS proxy │
└────────────────────┴───────────────────────────────────────────────────────┴─────────────────────────────────────────────┘
While the program is running you can:
| Action | Result |
|---|---|
x + Enter | Exit the program |
Enter number (ex: 10) | Change interval to 10 seconds |
The tool uses the Tor SOCKS proxy.
Default Tor port:
127.0.0.1:9050
If Tor is not running, the tool will attempt to start it automatically.
The CLI requests a new Tor circuit every refresh using:
SIGNAL NEWNYM
This requires the Tor Control Port (9051).
Add this to your torrc file:
ControlPort 9051
CookieAuthentication 1
Restart Tor after updating.
Example warning:
warning: could not rotate Tor circuit: connect ECONNREFUSED 127.0.0.1:9051
KarthiTheHacker
This tool is intended strictly for educational and privacy testing purposes.
Do NOT use this tool for:
The developer assumes no responsibility for misuse.
< Built by hackers who care about security — Team Cappricio Securities. />
www.cappriciosec.com
| Connect to | Command / Steps | Description |
|---|
Chromium | chromium --proxy-server="socks5://127.0.0.1:9050" | Launch Chromium with SOCKS5 proxy enabled. |
Chrome | chrome --proxy-server="socks5://127.0.0.1:9050" | Launch Google Chrome with SOCKS5 proxy. |
Firefox | Settings → Preferences → Network Settings → Manual Proxy → SOCKS Host: 127.0.0.1, Port: 9050, SOCKS v5 → Enable Proxy DNS | Configure Firefox via UI to use SOCKS5 proxy. |
Linux (system-wide) | export ALL_PROXY="socks5h://127.0.0.1:9050" | Set proxy for terminal apps (per session). |
Linux (proxychains) | Add socks5 127.0.0.1 9050 to /etc/proxychains.conf → Run: proxychains4 <command> | Force any app to use SOCKS5 proxy. |
macOS (system-wide) | sudo networksetup -setsocksfirewallproxy "Wi-Fi" 127.0.0.1 9050 | Apply SOCKS5 proxy to Wi-Fi network. |
Windows (system-wide) | Use Proxifier / ProxyCap → Add Proxy: 127.0.0.1:9050 (SOCKS5) → Apply Rules | Windows GUI doesn’t support SOCKS globally, requires helper tool. |