Create your own mobile 4G Proxies for Instagram [Tutorial 2020]

What will you learn in this article:

  • How to create your own mobile 4G Proxies for Instagram
  • How to set up your 4G proxy at your home
  • How to duplicate the setup and obtain more 4G proxies
  • How to create proxy scripts.

I was looking recently to create my own 4G proxies for Instagram. I was running an Instagram audit service and was checking hundreds of accounts every day.

When I was trying to boot Instagram accounts and use them with a tool called Jarvee, my requests were almost every day blocked, every new proxy I bought, every new server I have set up was gone in a matter of a few hours “Instagram blocked this request” and got my accounts limited or “shadowbanned”.

The world of Instagram booters, influencers, and social media managers was starting to be a myth so I needed to do something. Checking all the channels I knew somebody was started talking about how to create your own mobile 4G Proxies for Instagram and how they never get blocked, but never released a tutorial or something, so it got me wondering, how do they do it?

Somebody explained that it was is using USB dongles with phone sim cards to create 4G virgin (never touched/used) proxies.

Hmm… as a system administrator myself, I know a little bit about proxies and how networking works so I started to investigate what can I do, how, and what do I need.

Prerequisites – What do you need to create your own mobile 4G Proxies for Instagram

I don’t know if this will work with other devices besides the ones in this tutorial, I only tested with the ones I recommend in this article.

Basically, you need 5 items and 1 hour of your time to create 1 4G mobile proxy, after that, you can just duplicate the setup and create as many as you want.

With one Raspberry PI setup, you can create up to 6 proxies, but you will need 6 USB Dongles and 6 SIM cards.

  1. Raspberry Pi 3B+ – I go this exact item from Amazon (click on image):
    Make sure you get all the package with power supply, you gonna need it. I got it at $50.
  2. Unlocked MF823 4G LTE USB Stick Modem
    There are lots of USB Dongles out there, for me this is the only one who has worked – if you wanna try with other models, make sure they are unlocked.
  3. SIM Card
    I cannot give you a link here as this is depending of your country. Every country has its own providers, just buy a sim card, recharge it and if you can activate different options which give you the most mobile data (internet), you don’t need to call or use the SMS function on this SIM. If you want to create your own mobile 4G Proxies for Instagram I will recommend getting 3-4 different sim providers to see which one will work, some providers have their own ip allocation set to “static” and you will not be able to change your IP.
  4. An internet connection at your home
    You can use an internet cable from your home router to Raspberry PI or just connect the Raspberry to your Wifi. I recommend connecting your Raspberry Pi through a cable to be more stable.
  5. A Micro-SD Card
    be aware that on this card we need to install a software called Raspberrian – it’s the operating system for the Raspberry Pi. BUT, you can buy an SD card with Raspberrian installed for you, I got this one (click on image):

It will work with any other Micro SD card, but you will have to manually install the operating system on the card.
Some pictures of my setup (the first one – now it’s a bit more advanced, more pictures later) This is the USB Dongle with the Sim Card included This is the Raspberry Pi with the Dongle and sim Card + Power connected.

How to create your own 4G mobile proxies – step by step

Installing the Operating System
If you have all the above items, we are ready to start and create some 4G mobile proxies for you.
The first step – installing Raspberrian on the Micro SD Card – if you bought an already installed one like me, skip this step, if you use your own micro-sd card follow these links:
1. Video Tutorial here:

2. Text tutorial here – https://www.raspberrypi.org/help/noobs-setup/2/
After you have successfully installed the operating system on your micro sd card, let’s
make some changes to your home router.

Port Forward 3128 port in your router in order to create 4G proxies
We gonna connect your Raspberry Pi to your internet router through a cable so your raspberry pi will get access to your network and will use your home IP but the traffic will go through your sim card internet.

I’m not very good at drawing but I wanted to illustrate the exact thing we gonna do here, the network schema if you want:

Hope this will clarify things a little bit.

So in order to create this mobile proxy, we need to port forward the internet from the sim card trough port 3128 in our home router, many of you will have this port open already and don’t need to do anything, the others will have to find out how to port forward their port, basically…how to open him, this will vary a lot because we have different routers and different internet providers.

But first, let’s check if your port is open, use this link: https://www.canyouseeme.org/ write 3128 in the box where it says 80 – it will say if it’s closed or not.

If it’s open, skip to the next step, if not, see what model is your router – usually, you will find his name and model on the back of the router, and go on youtube and type “Your router name + model port forward“. Make sure you port-forward your 3128 port.

You will need to figure this out alone, again because we have different routers, models and providers.

The Real 4G Proxy Setup

Now that we have all the things together, let’s do the real work here.

I assume that you have your SIM card introduced into your USB Dongle and those two connected into your Raspberry PI, and this one to a monitor where we can see what we gonna type + a mouse and a keyboard.

Login to your raspberry pi with your user and password and type the following command (lsusb), and see the output:

lsusb

$ <strong>lsusb</strong>
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 006: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB
Bus 001 Device 007: ID 19d2:1403 ZTE WCDMA Technologies MSM

With the dongle plugged in, check that it is recognized by the Pi with lsusb, it can be seen here as ‘ZTE WCDMA Technologies MSM’.

The device ID is 19d2. and 1403 is the mode, this should be 1405 – CDC ethernet. If it is
not, try removing the micro-SD card and rebooting the Pi, the device modes available
are:

  • 1225 – Default mode. USB Mass Storage Device + CD-ROM + card reader.
  • 1403 – Modem mode. RNDIS + Mass Storage Device.
  • 1405 – CDC ethernet
  • 0016 – Download mode

For some reason, it will work if it’s 1403 also, at least it works for me.

If you type ifconfig your “usb0” should pop-up – that’s your dongle with the sim.

Ok, let’s make sure we are up to date, so type the following commands in the terminal:

Update the Raspberrian OS

sudo apt-get update
sudo apt-get upgrade

Now that our system is up to date, we are ready to type some more commands, one after another, make sure you spell each command correctly:

sudo nano /etc/sysctl.conf

Here you need to scroll down and remove the “#” sign before the line:
net.ipv4.ip_forward=1

Save the changes you’ve made by pressing Ctrl + O and let’s verify we have made the
change and saved, run the command:

sudo sysctl -p

It should return: net.ipv4.ip_forward=1

Now run the following commands one after another:

sudo apt-get -y install fail2ban software-properties-common build-essential libevent-dev libssl-dev
git clone https://github.com/z3apa3a/3proxy
cd /3proxy/
sudo nano src/proxy.h

In this document scroll down until you find the next line:

#define MAXUSERNAME 128

now above this line write the following line and then save:

define ANONYMOUSE 1

It should look like this:

After you save the document, run the following commands:

sudo ln -s Makefile.Linux Makefile
sudo make

Here it will take a while, just wait for the system to finish.

cd 3proxy
sudo make install
sudo systemctl is-enabled 3proxy.service
sudo nano /etc/iproute2/rt_tables

At the end of the document, add the following:

1 gw1

Keep in mind, if you want to add more dongles into this Raspberry Pi to have more proxies, you will have to add 2 gw2, 3 gw 3 and so on in this document

cd
sudo nano 3proxy.cfg

You will need to copy the following code and paste it into your document !!!

#! /usr/local/bin/3proxy
daemon
nserver 8.8.8.8
nscache 65536
timeouts 1 5 30 60 180 15 60
users root:CL:pass
#log /var/log/3proxy.log
#rotate 30
setgid 13
setuid 13
auth none
allow root
proxy -p3128 -e192.168.0.100
flush

Save it, after!

sudo nano startproxy.sh

Here write/paste the following code:

Sudo echo "Let's setup the IP"
sudo ifconfig usb0 192.168.0.100
sleep 2
sudo echo "Let's setup the routes for the proxy"
sudo ip route add 192.168.0.0/24 dev usb0 src 192.168.0.100 gw1
sudo ip route add default via 192.168.0.1 dev usb0 table gw1
sudo ip rule add from 192.168.0.100/32 table gw1
sudo ip rule add to 192.168.0.100/32 table gw1
sleep 5
sudo echo "Let's start the proxy "
sudo 3proxy /home/pi/3proxy.cfg

Save it! Make sure on the last line – where it says “/home/ pi/3proxy” – replace PI with your system username.

sudo chmod 777 startproxy.sh

Here you will need to check what IP your dongle has:

For that type “ifconfig”:

If your usb0 doesn’t have an IP, check the cable connexion.

Now, let’s see if it works:

sudo ./startproxy.sh

If you type now again ifconfig your IP should be changed:

See the difference between the 2 screenshots above? Our IP is now changed, that means it’s working.

How do you know what proxy ip do you have? Run the following command:

sudo curl -s https://wtfismyip.com/text --interface usb0

Congrats, this is the IP your sim card has, you now have a 4G working proxy

How to test your homemade 4G proxy?

The formula is: Your external IP (not simcard_ your IP from home + port 3128 + user+pass.

If you don’t understand why your home IP and not Simcard, watch again the schema I made at the top of this article.

The user and password for your proxy, by default is: User: root Password: pass

You can and should change them by editing the file: 3proxy.cfg at the line:

users root:CL:pass

Proxy example: 111.111.111.111:3128:root:pass

Congrats, you have learned to create your own mobile 4G Proxies for Instagram, and you can add up to 6 on this setup just by editing 2 files.

If you have any questions, hit me up bellow.

PS: English is not my main language

30 Replies to “Create your own mobile 4G Proxies for Instagram [Tutorial 2020]”

  1. sudo ip route add 192.168.0.0/24 dev usb0 src 192.168.0.100 gw1

    This part of the script seems malformed – wont run on ubuntu 18.04

  2. Hi!
    If I want to use 2 gw2 to use port 3129 and 3 gw3 to use port 3130, how to execute?

    If my router is using lan ip of 192.168.86.1, i need to change them to 192.168.0.1?

    Thanks

  3. Dude, thank you very much! You really don’t know how you helped me about it!
    I was looking for this for a long time.

    I have some doubts about your setup and if it is still working:
    – At the end, you said that it’s possible to add up to 6 proxys on this setup editing to files? But what files are these?
    – Is Jarvee still working with you with these 4g proxys? I was having the same problem since the “Instagram Bot War” stuff.
    – Do you have any contact or material you recomend about this?

    Anyway, thanks again! I will keep seaching for the answers. If I found them, I will write them here.

    And sorry for the bad English. I’m from Brazil.

  4. – sudo ip route add 192.168.0.0/24 dev usb0 src 192.168.0.100 gw1

    I change with:
    – sudo ip route add 192.168.0.0/24 dev usb0 src 192.168.0.100 table gw1

  5. Hi, there is a possible way to rotate the proxies? Cus I want to build this for sneaker botting and sometimes I need the proxies to rotate and some times be static. If you help me I appreciate a lot. Thanks

  6. Do you know how good the Raspberry PI from Whis are and whether you can use them to make mobile proxies?

    Nice tut by the way

  7. For those of you trying to add additional proxies. Here’s what I changed and it works perfectly!
    sudo nano 3proxy.cfg
    ######THEN ADJUST THE CODE FROM ABOVE EXAMPLE TO ACCOMIDATE THE 2ND DONGLE

    #! /usr/local/bin/3proxy
    daemon
    nserver 8.8.8.8
    nscache 65536
    timeouts 1 5 30 60 180 15 60
    users tyrdigital:CL:burnside
    #log /var/log/3proxy.log
    #rotate 30
    setgid 13
    setuid 13
    auth none
    allow root
    proxy -p3128 -e192.168.0.100
    proxy -p3129 -e192.168.0.101
    flush

    ###NEXT ADJUST startproxy.sh TO HANDLE THE 2ND DONGLE AS WELL

    sudo nano startproxy.sh

    ######ADJUSTED CODE BELOW

    Sudo echo “Let’s setup the IP”
    sudo ifconfig usb0 192.168.0.100
    sudo ifconfig usb1 192.168.0.101
    sleep 2
    sudo echo “Let’s setup the routes for the proxy”
    sudo ip route add 192.168.0.0/24 dev usb0 src 192.168.0.100 table gw1
    sudo ip route add 192.168.0.0/24 dev usb1 src 192.168.0.101 table gw2
    sudo ip route add default via 192.168.0.1 dev usb0 table gw1
    sudo ip route add default via 192.168.0.1 dev usb1 table gw2
    sudo ip rule add from 192.168.0.100/32 table gw1
    sudo ip rule add from 192.168.0.101/32 table gw2
    sudo ip rule add to 192.168.0.100/32 table gw1
    sudo ip rule add to 192.168.0.101/32 table gw2
    sleep 5
    sudo echo “Let’s start the proxy ”
    sudo 3proxy /home/pi/3proxy.cfg

    THATS WHAT WORKED FOR ME.

  8. Hi
    My route ip is 192.168.1.254.
    In startproxy.sh I have to change the line:
    “ sudo ip route add default via 192.168.0.1 dev usb0 table gw1”
    With:
    “sudo ip route add default via 192.168.1.254 dev usb0 table gw1”
    ?

  9. Hi, your guide is great and it worked for me.
    Unfortunately, however, from the routing configurations performed, the packets do not return to the client that made the call.

    This problem is confirmed by the fact that I tried to test it using a client written in Java and the error turns out to be this: “org.apache.http.NoHttpResponseException: The target server failed to respond”.

    I also tried to use the Proxifier program but the error is always the same or “The target server failed to respond”.

    Can anyone help me complete the routing setup?
    Thank you

  10. Is it possible to let other people use the proxies remotely? I noticed your proxy is ip is local network ip. If someone wants to use it remotely, how can they do it?

  11. Thanhk for tut,
    But only one proxy can work at the same time
    My 3proxy.cfg:

    #! /usr/local/bin/3proxy
    daemon
    nserver 8.8.8.8
    nscache 65536
    timeouts 1 5 30 60 180 15 60
    users tyrdigital:CL:burnside
    #log /var/log/3proxy.log
    #rotate 30
    setgid 13
    setuid 13
    auth none
    allow root
    proxy -p3128 -e192.168.30.100
    proxy -p3000 -e192.168.8.100
    flush

  12. I have this error when run startproxy.sh with 2 usb

    Let’s setup the IP
    Let’s setup the routes for the proxy
    Error: either “to” is duplicate, or “gw1” is a garbage.
    Error: Nexthop has invalid gateway.
    Error: either “to” is duplicate, or “gw2” is a garbage.
    Error: Nexthop has invalid gateway.
    Let’s start the proxy

  13. Yeah man, after couple of hours and some changes i successfully connected multiple dongles with one raspberry pi!!

Leave a Reply

Your email address will not be published.