An automated IP rotation tool powered by Tor β built for anonymity, testing, and secure connections.
---
Advance IP Changer is a lightweight Python-based tool designed to automatically change your public IP address at defined intervals using the Tor network.
It is ideal for developers, penetration testers, and privacy-focused users who need quick IP rotation from the terminal.
---
- π Auto IP rotation (configurable time interval)
- π Uses the Tor network for anonymity
- π Displays current IP before and after rotation
- π§© Works on Termux, Proot-distro, and Linux systems
- π Keeps your session secure and private
- Python 3.9+
- Tor
requests,stem,rich,pysocksPython modules
Install Python deps:
pip3 install -r requirements.txt
Choose your environment and follow the commands.
# update package lists
pkg update -y
# install required packages
pkg install -y tor python git curl netcat
# install python modules
pip install --upgrade pip
pip3 install -r requirements.txt
# clone repo
git clone https://github.com/Ritusmin325k/Advance-IP-Changer.git
cd Advance-IP-Changer
chmod +x advance_ip_changer.py tor_manager.sh
# prepare tor config and start
mkdir -p $HOME/.tor
echo "ControlPort 9051" > $HOME/.tor/torrc
echo "CookieAuthentication 1" >> $HOME/.tor/torrc
tor -f $HOME/.tor/torrc &
# run the tool
python3 advance_ip_changer.pyNotes:
- Termux has no systemd. Start Tor with
tor -f $HOME/.tor/torrc &each session or use a Termux service wrapper.
# inside proot Arch shell (you are root inside proot)
pacman -Syu --noconfirm
pacman -S --noconfirm tor python git curl netcat
# install python modules
pip install --upgrade pip
pip3 install -r requirements.txt
# clone and run
git clone https://github.com/<your-username>/Advance-IP-Changer.git
cd Advance-IP-Changer
chmod +x advance_ip_changer.py tor_manager.sh
# Configure torrc in your home
mkdir -p ~/.tor
echo "ControlPort 9051" > ~/.tor/torrc
echo "CookieAuthentication 1" >> ~/.tor/torrc
# Start tor (no systemd)
tor -f ~/.tor/torrc &
python3 advance_ip_changer.pyIf systemd is available in the environment:
systemctl enable --now tor.service# update
sudo apt update && sudo apt upgrade -y
# install tor and tools
sudo apt install -y tor curl git netcat python3 python3-pip
# install python modules
pip3 install -r requirements.txt
# clone repo
git clone https://github.com/<your-username>/Advance-IP-Changer.git
cd Advance-IP-Changer
chmod +x advance_ip_changer.py tor_manager.sh
# configure tor
sudo mkdir -p /var/lib/tor
mkdir -p $HOME/.tor
echo "ControlPort 9051" > $HOME/.tor/torrc
echo "CookieAuthentication 1" >> $HOME/.tor/torrc
# start tor (systemd)
sudo systemctl enable --now tor.service
# OR (if you want to run user tor instance)
tor -f $HOME/.tor/torrc &
# run tool
python3 advance_ip_changer.pyTwo secure ways to enable programmatic NEWNYM:
A) CookieAuthentication (recommended for local scripts)
Add to torrc:
ControlPort 9051
CookieAuthentication 1
Restart Tor. Your scripts that use stem can authenticate via the cookie automatically:
from stem.control import Controller
with Controller.from_port(port=9051) as controller:
controller.authenticate() # uses cookie
controller.signal("NEWNYM")B) HashedControlPassword (password-based)
- Generate a hash:
tor --hash-password "yourpass"
# copy the HashedControlPassword output- Add to torrc:
ControlPort 9051
HashedControlPassword <HASH_HERE>
- Restart Tor. Authenticate from Python:
from stem.control import Controller
with Controller.from_port(port=9051) as controller:
controller.authenticate(password="yourpass")
controller.signal("NEWNYM")Restart Tor (systemd):
sudo systemctl restart torManual user tor instance:
tor -f $HOME/.tor/torrc &Check listeners:
# should show 127.0.0.1:9050 (SOCKS) and 127.0.0.1:9051 (Control)
ss -tuln | grep -E "9050|9051"Test proxy with curl:
curl --socks5-hostname 127.0.0.1:9050 https://check.torproject.org/api/ip
# should return the Tor exit IP JSON or just the IP depending on endpointTest with Python (requests + pysocks):
import requests
proxies = {'http':'socks5h://127.0.0.1:9050', 'https':'socks5h://127.0.0.1:9050'}
print(requests.get('https://api.ipify.org?format=text', proxies=proxies, timeout=10).text)- 403 or blocked pages: Some services block Tor exits. Try another endpoint (e.g.,
https://check.torproject.org/api/ip). - Real IP still visible: Ensure you proxy the request through
socks5h://127.0.0.1:9050. Browser not automatically proxied. - Tor not starting: Check logs
journalctl -u toror runtor -f ~/.tor/torrcto see errors. - No systemd in Termux: Start Tor manually or use Termux service helpers.
---
Advance-IP-Changer/
βββ advance_ip_changer.py
βββ tor_manager.sh
βββ install_requirements.sh
βββ assets/
βββ logo.png
βββ screenshot.png
βββ video.gif
Apache-2.0 License Β© 2025 Ritusmin Saikia


