IP & Network Toolbox
🇺🇸 English | 🇨🇳 简体中文 | 🇫🇷 Français | 🇹🇷 Türkçe
Deploy your own ElinksNet instance.
- 🛜 View Your IPs: Detects and displays your local IPs, sourcing from multiple IPv4 and IPv6 providers.
- 🔍 Search IP Information: Provides a tool for querying information about any IP address.
- 🕵️ 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.
- 🚀 Speed Test:Test your network speed with edge networks.
- 🚏 Proxy Rule Testing: Test the rule settings of proxy software to ensure their correctness.
- ⏱️ Global Latency Test: Performe lantency tests on servers located in different regions around the world.
- 📡 MTR Test: Perform MTR tests on servers located in different regions around the world.
- 🔦 DNS Resolver: Performs DNS resolution of a domain name from multiple sources and obtains real-time resolution results that can be used for contamination determination.
- 🚧 Censorship Check: Check if a website is blocked in some countries.
- 📓 Whois Search: Perform whois information search for domain names or IP addresses
- 📀 MAC Lookup: Query information of a physical address
- 🖥️ Browser Fingerprints:Multiple ways to caculate your browser fingerprint
- 📋 Cybersecurity Checklist:A comprehensive cybersecurity checklist with a total of 258 items
- 🌗 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..
- 📲 PWA Supported:Can be added as a desktop app on your phone as well as a Chrome app on your computer.
- ⌨️ 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, Chinese, French, and Turkish support.
docker run -d \
--name elinksnet \
--restart unless-stopped \
-p 18966:18966 \
elinksteam/elinksnet:latestdocker run -d \
--name elinksnet \
--restart unless-stopped \
-p 18966:18966 \
ghcr.io/elinksteam/elinksnet:latestgit clone https://github.com/ElinksTeam/MyIP.git
cd MyIP
docker compose up -dUse this option if the public Docker images have not been published yet.
git clone https://github.com/ElinksTeam/MyIP.git
cd MyIP
docker build -t elinksnet .
docker run -d -p 18966:18966 --name elinksnet --restart unless-stopped elinksnetMake sure you have Node.js installed.
Clone the code:
git clone https://github.com/ElinksTeam/MyIP.git
cd MyIPInstall and build:
npm install && npm run buildRun:
npm startThe program will run on port 18966.
ElinksNet can start without MaxMind credentials, but full IP geolocation, ASN / organization lookup, and country badges require the MaxMind GeoLite2 databases. For the best Docker experience, configure the three MaxMind variables below.
ElinksNet relies on the free GeoLite2 databases from MaxMind (City + ASN) for complete IP geolocation and ASN information.
The .mmdb files are not checked into this repository because MaxMind's GeoLite2 license does not allow redistribution. You need to provide them yourself. There are two paths:
Option A — Automatic (recommended for Docker)
- Create a free account at maxmind.com/en/geolite2/signup.
- Generate a license key from your account's "Manage License Keys" page.
- Set these three environment variables:
MAXMIND_ACCOUNT_ID="your-account-id" MAXMIND_LICENSE_KEY="your-license-key" MAXMIND_AUTO_UPDATE="true"
- Start the backend. Within about 60 seconds of the first startup, the updater will download both databases. They are then refreshed every 24 hours automatically.
Option B — Manual
Download GeoLite2-City.mmdb and GeoLite2-ASN.mmdb from your MaxMind account and drop them into common/maxmind-db/ before starting the backend.
| Variable Name | Required | Default Value | Description |
|---|---|---|---|
MAXMIND_ACCOUNT_ID |
Recommended | "" |
MaxMind account ID, paired with MAXMIND_LICENSE_KEY to download GeoLite2 databases. |
MAXMIND_LICENSE_KEY |
Recommended | "" |
MaxMind license key, paired with MAXMIND_ACCOUNT_ID. |
MAXMIND_AUTO_UPDATE |
Recommended | "false" |
Set to "true" to auto-download GeoLite2 databases after startup and refresh every 24h. |
VITE_GOOGLE_ANALYTICS_ID |
Optional | "" |
Google Analytics ID, used to track user behavior |
BACKEND_PORT |
Optional | "11966" |
The running port of the backend part of the program |
FRONTEND_PORT |
Optional | "18966" |
The running port of the frontend part of the program |
SECURITY_RATE_LIMIT |
Optional | "0" |
Controls the number of requests an IP can make to the backend server every 60 minutes (set to 0 for no limit) |
SECURITY_DELAY_AFTER |
Optional | "0" |
Controls request delay behavior after repeated requests from the same IP |
SECURITY_BLACKLIST_LOG_FILE_PATH |
Optional | "logs/blacklist-ip.log" |
Records IPs that triggered rate limits |
ALLOWED_DOMAINS |
Optional | "" |
Allowed domains for access, separated by commas, used to prevent misuse of the backend API |
GOOGLE_MAP_API_KEY |
Optional | "" |
API Key for Google Maps, used to display the location of the IP on a map |
IPCHECKING_API_ENDPOINT |
Optional | "" |
API endpoint for IPCheck.ing database |
IPCHECKING_API_KEY |
Optional | "" |
API Key for IPCheck.ing database |
IPINFO_API_TOKEN |
Optional | "" |
API Token for IPInfo.io |
IPAPIIS_API_KEY |
Optional | "" |
API Key for IPAPI.is |
IP2LOCATION_API_KEY |
Optional | "" |
API Key for IP2Location.io |
CLOUDFLARE_API |
Optional | "" |
API Key for Cloudflare |
MAC_LOOKUP_API_KEY |
Optional | "" |
API Key for MAC Lookup |
VITE_CURL_IPV4_DOMAIN |
Optional | "" |
Provides the IPv4 domain for the CURL API |
VITE_CURL_IPV6_DOMAIN |
Optional | "" |
Provides the IPv6 domain for the CURL API |
VITE_CURL_IPV64_DOMAIN |
Optional | "" |
Provides the dual-stack domain for the CURL API |
Note that if any of the CURL series environment variables are missing, the CURL API will not be enabled.
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.2/32,Proxy,no-resolve
IP-CIDR6,2606:4700:4700::1111/128,Proxy,no-resolve
DOMAIN,4.ipcheck.ing,DIRECT
DOMAIN,6.ipcheck.ing,DIRECT
# Rule Testing
DOMAIN,ptest-1.ipcheck.ing,Proxy1
DOMAIN,ptest-2.ipcheck.ing,Proxy2
DOMAIN,ptest-3.ipcheck.ing,Proxy3
DOMAIN,ptest-4.ipcheck.ing,Proxy4
DOMAIN,ptest-5.ipcheck.ing,Proxy5
DOMAIN,ptest-6.ipcheck.ing,Proxy6
DOMAIN,ptest-7.ipcheck.ing,Proxy7
DOMAIN,ptest-8.ipcheck.ing,Proxy8ElinksNet is maintained by ElinksTeam.
ElinksNet is based on MyIP by Jason Ng and remains licensed under the MIT License. The original copyright notice is preserved in LICENSE as required by the MIT License.
Additional modifications Copyright (c) 2026 ElinksTeam.