Files
NetQuality/README_EN.md
2025-12-02 09:46:35 +08:00

232 lines
8.5 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<p align="center">
<img src="https://hits.xykt.de/net.svg?action=view&count_bg=%2379C83D&title_bg=%23555555&title=Runs&edge_flat=false"/>
<img src="https://hits.xykt.de/net_github.svg?action=hit&count_bg=%233DC8C0&title_bg=%23555555&title=Visits&edge_flat=false"/>
<a href="/LICENSE"><img src="https://img.shields.io/badge/License-AGPL%20v3-blue.svg" alt="license" /></a>
</p>
## Network Quality Check Script - [网络质量体检脚本 (CN)](https://github.com/xykt/NetQuality)
**Supported OS/Platform: Ubuntu | Debian | Linux Mint | Fedora | Red Hat Enterprise Linux (RHEL) | CentOS | Arch Linux | Manjaro | Alpine Linux | AlmaLinux | Rocky Linux | macOS | Anolis OS | Alibaba Cloud Linux | SUSE Linux | openSUSE | Void Linux | Windows (via Docker)**
- Bilingual support: English & Chinese
- Supports IPv4/IPv6 dual-stack queries
- Well-formatted output for clear and concise display, optimized for screenshots
- Seven key modules: BGP information, local policy, access information, three-network TCP large packet latency, three-network return routing, domestic speed test, and international interconnection
- Base data sourced from *BGP.TOOLS* and *BGP.HE.NET* databases
- Intuitive display of upstream and access information
- Return latency tests for China Mainlands 31 provinces/cities/autonomous regions via China Telecom, China Unicom, and China Mobile
- Speed test for China Mainlands three major ISPs (including the Greater Bay Area) based on *SPEEDTEST.NET*
- Full China Telecom/Unicom/Mobile return route display powered by *NextTrace*
- Global speed and latency tests across five continents
- Flexible test modes: latency mode, low data mode, selective section skipping
- JSON output for big data analysis
##### Screenshots
| IPv4 Test Result | IPv6 Test Result |
| ---------------- | ---------------- |
|![IPv4](https://github.com/xykt/NetQuality/raw/main/res/v4_en.png)|![IPv6](https://github.com/xykt/NetQuality/raw/main/res/v6_en.png)|
| Latency Mode Test Result | Full Route Mode Test Result |
| ---------------- | ---------------- |
|![Ping](https://github.com/xykt/NetQuality/raw/main/res/ping_en.png)|![Route](https://github.com/xykt/NetQuality/raw/main/res/route_v4.png)|
## Usage
### Easy Mode: Run with Interactive Interface
![Net](https://github.com/xykt/ScriptMenu/raw/main/res/Net_EN.png)
##### Bash:
````bash
bash <(curl -Ls https://Check.Place) -EN
````
##### Docker:
- Linux
````bash
docker run --rm --net=host -it xykt/check -EN && docker rmi xykt/check > /dev/null 2>&1
````
- Windows (CMD)
````bash
docker run --rm --net=host -it xykt/check -EN & docker rmi xykt/check > NUL 2>&1
````
### Advanced Mode: Run with Parameters
![Help](https://github.com/xykt/NetQuality/raw/main/res/help.png)
##### Default dual-stack detection (Either):
```bash
bash <(curl -Ls https://Net.Check.Place) -E
bash <(curl -Ls https://Net.Check.Place) -l en
```
##### IPv4-only test:
```bash
bash <(curl -Ls https://Net.Check.Place) -E4
```
##### IPv6-only test:
```bash
bash <(curl -Ls https://Net.Check.Place) -E6
```
##### Latency mode:
```bash
bash <(curl -Ls https://Net.Check.Place) -EP
```
##### Low data mode:
```bash
bash <(curl -Ls https://Net.Check.Place) -EL
```
##### Full route mode (TCP result in Chinese):
```bash
bash <(curl -Ls https://Net.Check.Place) -E -R [Province]
```
Test Beijing & Shanghai & Guangdong by default:
```bash
bash <(curl -Ls https://Net.Check.Place) -E -R
```
Specify parameters to detect the corresponding province (Any of the following):
```bash
bash <(curl -Ls https://Net.Check.Place) -E -R 桂
bash <(curl -Ls https://Net.Check.Place) -E -R 广西
bash <(curl -Ls https://Net.Check.Place) -E -R 广西壮族自治区
bash <(curl -Ls https://Net.Check.Place) -E -R GX
bash <(curl -Ls https://Net.Check.Place) -E -R gx
```
##### Skip specific sections:
```bash
bash <(curl -Ls https://Net.Check.Place) -E -S 1234567
```
##### Bilingual support:
```bash
bash <(curl -Ls https://Net.Check.Place) -l cn|en
```
##### JSON output ([Example Output](https://github.com/xykt/NetQuality/blob/main/res/output.json)):
```bash
bash <(curl -Ls https://Net.Check.Place) -Ej
```
##### Output report to file in ANSI/JSON/Text format:
````bash
bash <(curl -Ls https://Net.Check.Place) -o /path/to/file.ansi
bash <(curl -Ls https://Net.Check.Place) -o /path/to/file.json
bash <(curl -Ls https://Net.Check.Place) -o /path/to/file.txtoranyother
````
##### Skip checking OS and dependencies:
```bash
bash <(curl -Ls https://Net.Check.Place) -En
```
##### Auto-install dependencies:
```bash
bash <(curl -Ls https://Net.Check.Place) -Ey
```
##### Display full IP addresses in the report:
```bash
bash <(curl -Ls https://Net.Check.Place) -Ef
```
##### privacy mode - Disable online report link:
````bash
bash <(curl -Ls https://Net.Check.Place) -p
````
##### Docker (supports runtime arguments; insert them before the ```&```):
- Linux
````bash
docker run --rm --net=host -it xykt/netquality -E && docker rmi xykt/netquality > /dev/null 2>&1
````
- Windows (CMD)
````cmd
docker run --rm --net=host -it xykt/netquality -E & docker rmi xykt/netquality > NUL 2>&1
````
## Script Updates
2025/08/03 00:00 Add Docker support
2025/08/01 15:15 Add -p for privacy mode, which disables online report links
2025/07/30 16:50 Replace all HTTP requests with HTTPS to improve script security
2025/05/11 14:00 Add report SVG image sharing link and fix some layout problems
2025/04/23 18:00 Add -o to output report to file in ANSI/JSON/Text format, fixed the occasional stuck issue in routing test
2025/04/21 22:15 Collapse routing duplicate information for full routing mode
2025/04/21 00:00 Fix macOS compatibility issues and improve script robustness
2025/04/20 21:00 Fixed connectivity issues with CN IPs
2025/03/28 00:50 Add -R Full Route Mode, add international delay test to Low Data Mode, fix bugs
2025/03/13 22:40 Add -n for no checking OS & dependencies
2025/03/12 17:00 Script Released
## Contributions
**Server Sponsors *(No ranking implied)*:**
| Sponsor | Logo | Link |
| - | - | - |
| V.PS | ![vps_logo](https://raw.githubusercontent.com/xykt/NetQuality/main/res/sponsor/logo_vps.png) | [https://v.ps](https://v.ps)|
| BAGE | ![bage_logo](https://raw.githubusercontent.com/xykt/NetQuality/main/res/sponsor/logo_bage.png) | [https://bagevm.com](https://bagevm.com)|
| LisaHost</br>丽萨主机 | ![lisa_logo](https://raw.githubusercontent.com/xykt/NetQuality/main/res/sponsor/logo_lisa.png) | [https://lisahost.com](https://lisahost.com)|
| DreamCloud | ![dreamcloud_logo](https://raw.githubusercontent.com/xykt/NetQuality/main/res/sponsor/logo_dreamcloud.png) | [https://as211392.com](https://as211392.com)|
| VIRCS</br>威尔克斯 | ![vircs_logo](https://raw.githubusercontent.com/xykt/NetQuality/main/res/sponsor/logo_vircs.png) | [https://vircs.com](https://www.vircs.com/promotion?code=6)|
| RapidProxy</br>`ISP IP` | ![rapidproxy_logo](https://raw.githubusercontent.com/xykt/NetQuality/main/res/sponsor/logo_rapidproxy.png) | [https://rapidproxy.io](https://www.rapidproxy.io/?ref=gitipquality)|
##### *E-Mail: sponsor@check.place Telegram Bot: https://t.me/xythebot*
**Only accepting merchants with long-term stable operations and good reputation*
**Acknowledgments:**
- Thanks to the NextTrace team ([Official Site](https://www.nxtrace.org/), [GitHub](https://github.com/nxtrace/NTrace-core)) for providing a stable and reliable three-network return route testing tool.
- Thanks to [Speedtest.net](https://www.speedtest.net/) and [Speedtest® CLI](https://www.speedtest.net/apps/cli), which is currently the only available command-line three-network speed testing tool in mainland China.
- Special thanks to [GlobalSign@Nodeseek](https://www.nodeseek.com/space/5813#/general) for providing a stable and reliable three-network test address, laying a solid foundation for one of the script's most important features.
- Thanks to [Sherlock@Nodeseek](https://www.nodeseek.com/space/13352#/general) for valuable suggestions on functionality and aesthetics.
- Thanks to [酒神@Nodeseek](https://www.nodeseek.com/space/9#/general) for technical support and valuable feedback.
- Thanks to Si for important recommendations on script functionality and formatting.
- Thanks to Kakan for providing valuable reference suggestions.
**Stars History:**
![Stargazers over time](https://starchart.cc/xykt/NetQuality.svg?background=%23FFFFFF&axis=%23333333&line=%2377ff77)
**Daily Runs History:**
![daily_runs_history](https://hits.xykt.de/history/net.svg?days=46&chartType=bar&title=Daily%20Runs%20of%20Network%20Quality%20Script&width=1024&height=400&color=steelblue)