See if your Email Client is Leaking your IP Address

Email is used every day, but did you know your email client may be leaking your IP address? Here, you can tell if your email client is leaking your personal IP address.

Email is used every day, but did you know your email client may be leaking your IP address? Here, you can tell if your email client is leaking your personal IP address.

First, thanks to macvk for making this test open-source. You can click the button below to generate an email, then email it to determine if your email client is leaking.

Your IP address:
Start Test

What if my client is leaking?

Update your existing mail client. If no update is available, download a new one. For Windows and MacOS users, the default mail app works well.

If you use an online Email provider, such as Gmail, you do not need to worry about your IP leaking, as long as you use the official Gmail website.

I tested several email clients that allow you to connect a Gmail account, and some leaked. If you want to ensure no-one gets your IP address, use the official Gmail client.


Stay safe! If someone does get your IP address, it isn’t the end of the world. There’s… not much they can do with it, besides get your internet provider and the city you live in.
Simply, you can unplug your router, wait 30 seconds, and plug it back in. Chances are that your ISP will have assigned your router a new IP address since it disconnected.

If your ISP assigns static IP addresses, contact them on how to change it, make sure to note your IP address before and after you unplug, as certain areas will only have IP addresses that are off by one or two digits.

This test made available from vpn-leaks-test by macvk, licensed under the GPLv3 License.

The TempMail Python API is out!

Want to use the TempMail API using Python? Try our easy-to-use library built for Python!

Ever wanted to interact with the API using Python but didn’t want to use raw HTTP requests? Well now we got your back.

First off, I would like to say thank you to Alex Torres for making the Python library. You can view the code here, feel free to contribute!

Important – read before using

The API has a few limitations:

  • You must use the token to check for emails within 10 minutes of the last check or the creation of the inbox, otherwise it is deleted.
  • Inboxes expire after 1 hour.


Use the pip command to install the library:

pip install tempmail-lol

Example Usage

from TempMail import TempMail #imports everything from TempMail library
import time #import time module

inbox = TempMail.generateInbox() #returns an Inbox object with Email and Token

print("Email Address: "+ inbox.address) #View output below
print("Authorization Token: "+ inbox.token)

    Email Address: [email protected]
    Authorization Token: RCfc1og1z1JzuN1mkXL2eFdAc_8uxSRAwcGhUoXuH26e7nnJMdVVtSxxasZLD9D2OHTKIjVEvLhK7S0K5QIanA

while(True): #Infinite Loop
    emails = TempMail.getEmails(inbox) #Returns list of Email objects
    print(emails) # View output below
    time.sleep(30) #wait 30 sec

    [Email ([email protected], [email protected], 
            subject=Subject line, body=Text Area, html=<div dir="ltr">Text Area</div>, 
            date=1652824961713 )]


Thanks again to Alex Torres for making the API. If you found it useful or have any suggestions, feel free to ask on GitHub. Let us know what you end up creating!

How to use the TempMail API

Want to use the API? Now you can! Check out our pre-made libraries or use the raw API.

Thank you to everyone who is using the website. If you are a developer, you can use our API on your own platforms (as long as it isn’t your own TempMail site)!

The API for is under the GNU AGPLv3 License.


As of now, we have libraries for the following languages:


Do we not have a library for your language yet? Feel free to reach out to me via email: [email protected] if you want your library added. In the meantime, you can use the raw API via HTTP requests to access our services.

The base URL should be stored as a constant. It is

There are two endpoints currently. First, to generate emails, the /generate endpoint. Upon successfully generating an email, the server will return the following data:

    "address": "[email protected]",
    "token": "token_to_check_for_emails"

Afterwards, use the token to check for new emails.


Inboxes expire after one hour, there is no avoiding this. If you do not check for new emails within 10 minutes of last check (or inbox creation) it will be deleted early.

To use the token to check for emails, GET the following endpoint: /auth/<token>

If you get an email (or multiple emails), you will be returned an array of email objects:

    "email": [
            "from": "[email protected]",
            "to": "[email protected]",
            "subject": "sub",
            "body": "hi",
            "html": "this field may not be present",
            "date": 1652814863785
            "from": "someotheremail@address",
            "to": "[email protected]",
            "subject": "subject",
            "body": "hello",
            "html": "<b>hello</b>",
            "date": 1652814873785

Note: once you get the emails, they are permanently deleted from our servers.

If there are no emails, the following response will be returned:

    "email": null

And finally, if your token is invalid, the following response will be returned:

    "email": null,
    "token": "invalid"


Let me know what you end up creating! I can be reached via email at [email protected]

You can also join the Discord server below by clicking the “connect” button:

How to Compress and Decompress bz2 Files in Linux

In this article, I will be showing you how you can compress and decompress files using the bz2 format in Linux on the command line.

Compression in computing has been around for decades, and new formats of compression come out every so often that are more efficient than others. In this article, I will be showing you how you can compress and decompress files using the bz2 format in Linux on the command line.

What is the bz2 format?

According to their manual file:

bzip2 compresses files using the Burrows-Wheeler block sorting text compression algorithm, and Huffman coding. Compression is generally considerably better than that achieved by more conventional LZ77/LZ78-based compressors, and approaches the performance of the PPM family of statistical compressors.

Installing bzip2

Depending on your Linux operating system, you may need to install a package to use it.

First, check to see if you have the package:

which bzip2

If you get a response such as /usr/bin/bzip2, /bin/bzip2, etc. then you have it installed already! Otherwise, use one of the following commands to install it:

# on Ubuntu/Debian based operating systems
sudo apt install bzip2

# on CentOS based operating systems
sudo yum install bzip2

# on Arch Linux and Arch based systems
pacman -Sy bzip2

Using bzip2 to compress file(s)

You can use the following command to compress a single file:

# -z tells bzip2 to compress.
bzip2 -z yourfile

WARNING: bzip2 will delete input files (those that you have compressed) once it has finished. To have it keep the files, append -k to the command, like so:

# -z tells bzip2 to compress and -k tells bzip2 to keep the input files after it has finished
bzip2 -kz yourfile

Using bzip2 to compress folders/directories

To use bzip2 on a folder or directory, you will need to make a .tar archive first, then use bzip2 on the folder.

Making a tar archive is easy! Use the following command on the folder you want to make a tar file of:

# -c tells tar to create a new archive, -f tells it to store the archive to the specified file
tar -c -f myarchive.tar ./folder1/ ./folder2/ ./folder3/ ./myfile.txt

You now have a .tar version of your folder(s) and file(s).

Now we can use the bzip2 command to compress the file, as in the above instructions:

# -z tells bzip2 to compress.  (if you want to keep the original .tar file, use -kz instead of just -z)
bzip2 -z myarchive.tar

Now, we have a new file: archive.tar.bz2, which, depending on your use case, will save you a lot of disk space for archiving purposes.

Using bzip2 to decompress files

Once you have a .bz2, .bz, .tbz2, or .tbz file, you can decompress it with the following command:

# -d tells bzip2 to decompress, use -dk instead to keep the original bzip2 file, otherwise it will be deleted.
bzip2 -d mycompressedfile.bz2

Using tar to decompress .tar.bz2 files

# -x tells tar to extract, -j tells tar to use bzip2, -f tells tar which file to decompress
tar -xjf myarchive.tar.bz2


While commands like these are not always easy to remember, you can always use the man command, then press / and type what you want to search for in the man page.