Coder Social home page Coder Social logo

myip's Introduction

๐Ÿงฐ MyIP - A Better IP Toolbox

GitHub Repo stars GitHub GitHub contributors GitHub commit activity (branch)

๐Ÿ‡บ๐Ÿ‡ธ English | ๐Ÿ‡จ๐Ÿ‡ณ ็ฎ€ไฝ“ไธญๆ–‡

๐Ÿ‘‰ Demo: https://ipcheck.ing

Notes: You can use my demo, but please don't use it for commercial purposes. If you want to use it for commercial purposes, please deploy it yourself.

Deploy with Vercel Deploy with Docker

๐Ÿ‘€ Main Features

  • ๐Ÿ–ฅ๏ธ View Your IPs: Detects and displays your local IP, sourcing from multiple IPv4 and IPv6 providers.
  • ๐Ÿ•ต๏ธ IP Information: Presents detailed information for all IP addresses, including country, region, ASN, geographic location, and more.
  • ๐Ÿšฆ Availability Check: Tests the accessibility of various websites, such as Google, GitHub, YouTube, ChatGPT, and others.
  • ๐Ÿšฅ WebRTC Detection: Identifies the IP address used during WebRTC connections.
  • ๐Ÿ›‘ DNS Leak Test: Shows DNS endpoint data to evaluate the risk of DNS leaks when using VPNs or proxies.
  • ๐ŸŒ— Dark Mode: Automatically toggles between dark and daylight modes based on system settings, with an option for manual switching.
  • ๐Ÿ“ฑ Minimalist Mode: A mobile-optimized mode that shortens page length for quick access to essential information..
  • ๐Ÿ” Search IP Information: Provides a tool for querying information about any IP address.
  • ๐Ÿ“ฒ PWA Supported๏ผšCan be added as a desktop app on your phone as well as a Chrome app on your computer.
  • ๐Ÿš€ Speed Test๏ผšTest your network speed with edge networks.
  • โŒจ๏ธ Keyboard Shortcuts: Supports keyboard shortcuts for all functions, press ? to view the shortcut list.
  • ๐ŸŒ Based on availability test results, it indicates whether global internet access is currently feasible.
  • ๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ‡จ๐Ÿ‡ณ English and Chinese supported.

๐Ÿ“• How to Use

There are 3 Ways to deploy:

Deploying in a Node Environment

Make sure you have Node.js installed.

Clone the code:

git clone https://github.com/jason5ng32/MyIP.git

Install:

npm install

Run:

npm start

The program will run on port 8966.

If you want to add Bing Maps, make the following changes before starting:

Create environment variables:

mv .env.example .env

Modify the Bing Maps API Key and your domain (to prevent abuse) in .env .

BING_MAP_API_KEY="YOUR_KEY_HERE"
ALLOWED_DOMAINS="example.com"

If you want to use IPInfo.io API, you can also add the following:

IPINFO_API_TOKEN="YOUR_TOKEN_HERE"

Using Vercel

Click the 'Deploy to Vercel' button at the top to complete the deployment.

If you want to display maps, set the following 2 environment variables during deployment:

BING_MAP_API_KEY
ALLOWED_DOMAINS

If you want to use IPInfo.io API, you can also add the following:

IPINFO_API_TOKEN

Using Docker

Click the 'Deploy to Docker' button at the top to complete the deployment. Or, use the following shell:

docker run -d -p 8966:8966 --name myip --restart always jason5ng32/myip:latest

If you wish to display maps, set the Bing Map API Key and allowed domains during deployment:

docker run -d -p 8966:8966 \
  -e BING_MAP_API_KEY="YOUR_KEY_HERE" \
  -e ALLOWED_DOMAINS="example.com" \
  --name myip \
  jason5ng32/myip:latest

If you want to use IPInfo.io API, you can also add the following:

docker run -d -p 8966:8966 \
  -e BING_MAP_API_KEY="YOUR_KEY_HERE" \
  -e ALLOWED_DOMAINS="example.com" \
  -e IPINFO_API_TOKEN="YOUR_TOKEN_HERE" \
  --name myip \
  jason5ng32/myip:latest

๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป Advanced Usage

If you're using a proxy for internet access, consider adding this rule to your proxy configuration (modify it according to your client). This setup lets you check both your real IP and the IP when using the proxy:

# IP Testing
IP-CIDR,1.0.0.1/32,DIRECT,no-resolve
IP-CIDR6,2606:4700:4700::1111/128,DIRECT,no-resolve
DOMAIN-SUFFIX,ipify.org,Proxy

๐Ÿ˜ถโ€๐ŸŒซ๏ธ Additional Notes

70% of the code for this program was not written by me, but generated through ChatGPT. After about 90 rounds of back-and-forth and some minor manual adjustments, all the code was completed.

๐ŸŒŸ Star History

Star History Chart

myip's People

Contributors

feodorren avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.