Compare commits

...

9 Commits

Author SHA1 Message Date
spiritlhl
110e6d34f9 feat: 添加3个额外的IP数据库,现累计并发查询数据库18个 2025-10-28 13:01:27 +00:00
spiritlhl
4d18497dd3 feat: Add GitHub Container Registry login step 2025-10-26 15:17:24 +08:00
spiritlhl
c676cd83cb feat:添加一些细致的说明和区分条件 2025-10-22 15:01:02 +00:00
spiritlhl
58e1de4487 fix: 默认macos下不进行任何环境更新和安装 2025-10-08 16:55:00 +08:00
spiritlhl
89eecd2acc fix:修复关于家宽、流媒体、解锁的相关说明 2025-10-07 03:03:17 +00:00
spiritlhl
194dee49fd fix: 增强部分说明,修复部分歧义说明 2025-10-03 15:50:39 +00:00
spiritlhl
1e88513b8e fix:修复dd依赖说明,自带依赖无需安装 2025-09-25 00:39:30 +08:00
spiritlhl
f84023d18b fix: 更新说明 2025-09-25 00:34:35 +08:00
github-actions[bot]
2cfd5af3c0 chore: update ECS_VERSION to 0.1.89 in goecs.sh 2025-09-24 16:29:31 +00:00
8 changed files with 412 additions and 111 deletions

View File

@@ -1,33 +1,30 @@
name: Build and Push Docker Image
on:
workflow_run:
workflows: ["Build and Release"]
types:
- completed
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
with:
platforms: all
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
# - name: Login to CNB Registry
# uses: docker/login-action@v2
# with:
@@ -41,7 +38,14 @@ jobs:
registry: crpi-8tmognxgyb86bm61.cn-guangzhou.personal.cr.aliyuncs.com
username: ${{ secrets.ALIYUN_USERNAME }}
password: ${{ secrets.ALIYUN_PASSWORD }}
- name: Log in to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Docker images
uses: docker/build-push-action@v4
with:
@@ -54,3 +58,4 @@ jobs:
tags: |
${{ secrets.DOCKER_USERNAME }}/goecs:latest
crpi-8tmognxgyb86bm61.cn-guangzhou.personal.cr.aliyuncs.com/oneclickvirt/ecs:latest
ghcr.io/${{ github.repository_owner }}/goecs:latest

View File

@@ -64,7 +64,7 @@ Shell 版本:[https://github.com/spiritLHLS/ecs](https://github.com/spiritLHLS
- 三网路由测试:基于 [NTrace-core](https://github.com/nxtrace/NTrace-core),二次开发至 [nt3](https://github.com/oneclickvirt/nt3)
- 网速测试:基于 [speedtest.net](https://github.com/spiritLHLS/speedtest.net-CN-ID) 和 [speedtest.cn](https://github.com/spiritLHLS/speedtest.cn-CN-ID) 数据,开发至 [oneclickvirt/speedtest](https://github.com/oneclickvirt/speedtest)
- 三网 Ping 值测试:借鉴 [ecsspeed](https://github.com/spiritLHLS/ecsspeed),二次开发至 [pingtest](https://github.com/oneclickvirt/pingtest)
- 支持root或admin环境下测试支持非root或非admin环境下测试支持离线环境下进行测试**暂未**支持无DNS环境下进行测试
- 支持root或admin环境下测试支持非root或非admin环境下测试支持离线环境下进行测试**暂未**支持无DNS的在线环境下进行测试
**本项目初次使用建议查看说明:[跳转](https://github.com/oneclickvirt/ecs/blob/master/README_NEW_USER.md)**
@@ -242,6 +242,8 @@ Usage: goecs [options]
1. 下载带 exe 文件的压缩包:[Releases](https://github.com/oneclickvirt/ecs/releases)
2. 解压后,右键以管理员模式运行。
PS如果是虚拟机环境不以管理员模式运行也行因为虚拟机无原生的测试工具将自动启用替代方法测试。
---
### **Docker**
@@ -373,7 +375,7 @@ GOOS=darwin GOARCH=amd64 go build -o goecs_darwin
## 致谢
感谢 [he.net](https://he.net) [bgp.tools](https://bgp.tools) [ipinfo.io](https://ipinfo.io) [maxmind.com](https://www.maxmind.com/en/home) [cloudflare.com](https://www.cloudflare.com/) [ip.sb](https://ip.sb) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) 等网站提供的API进行检测感谢互联网各网站提供的查询资源
感谢 [he.net](https://he.net) [bgp.tools](https://bgp.tools) [ipinfo.io](https://ipinfo.io) [maxmind.com](https://www.maxmind.com/en/home) [cloudflare.com](https://www.cloudflare.com/) [ip.sb](https://ip.sb) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) [ipfighter.com](https://ipfighter.com/) [getipintel.net](http://check.getipintel.net/) [fraudlogix.com](https://fraudlogix.com) 等网站提供的API进行检测感谢互联网各网站提供的查询资源
感谢

View File

@@ -64,7 +64,7 @@ Shell version: [https://github.com/spiritLHLS/ecs/blob/main/README_EN.md](https:
- Three-network route test: Modified from [NTrace-core](https://github.com/nxtrace/NTrace-core) to [nt3](https://github.com/oneclickvirt/nt3)
- Speed test: Based on data from [speedtest.net](https://github.com/spiritLHLS/speedtest.net-CN-ID) and [speedtest.cn](https://github.com/spiritLHLS/speedtest.cn-CN-ID), developed to [oneclickvirt/speedtest](https://github.com/oneclickvirt/speedtest)
- Three-network Ping test: Modified from [ecsspeed](https://github.com/spiritLHLS/ecsspeed) to [pingtest](https://github.com/oneclickvirt/pingtest)
- Support root or admin environment testing, support non-root or non-admin environment testing, support offline environment for testing, not support no DNS environment for testing
- Support root or admin environment testing, support non-root or non-admin environment testing, support offline environment for testing, **not yet** support no DNS online environment for testing
**For first-time users of this project, it is recommended to check the instructions: [Jump to](https://github.com/oneclickvirt/ecs/blob/master/README_NEW_USER.md)**
@@ -241,6 +241,8 @@ Usage: goecs [options]
1. Download the compressed file with the .exe file: [Releases](https://github.com/oneclickvirt/ecs/releases)
2. After unzipping, right-click and run as administrator.
PS: If it's a VM environment, it's OK not to run it in administrator mode, because VMs have no native testing tools and will automatically enable alternative methods for testing.
---
### **Docker**
@@ -370,7 +372,7 @@ Note that `goecs` allows you to specify CPU test method via parameters. The defa
## Thanks
Thank [he.net](https://he.net) [bgp.tools](https://bgp.tools) [ipinfo.io](https://ipinfo.io) [maxmind.com](https://www.maxmind.com/en/home) [cloudflare.com](https://www.cloudflare.com/) [ip.sb](https://ip.sb) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) and others for providing APIs for testing, and thanks to various websites on the Internet for providing query resources.
Thank [he.net](https://he.net) [bgp.tools](https://bgp.tools) [ipinfo.io](https://ipinfo.io) [maxmind.com](https://www.maxmind.com/en/home) [cloudflare.com](https://www.cloudflare.com/) [ip.sb](https://ip.sb) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) [ipfighter.com](https://ipfighter.com/) [getipintel.net](http://check.getipintel.net/) [fraudlogix.com](https://fraudlogix.com) and others for providing APIs for testing, and thanks to various websites on the Internet for providing query resources.
Thank

View File

@@ -86,7 +86,7 @@ VM-x/AMD-V/Hyper-V: 是当前测试宿主机是否支持嵌套虚拟化的指标
负载: 显示系统负载
虚拟化架构: 显示宿主机来自什么虚拟化架构一般来说推荐```Dedicated > KVM > Xen```虚拟化,其他虚拟化都会存在性能损耗,导致使用的时候存在性能共享/损耗,但这个也说不准,独立服务器才拥有完全独立的资源占用,其他虚拟化基本都会有资源共享,取决于宿主机的持有者对这个虚拟机是否有良心,具体性能优劣还是得看后面的专项性能测试。
虚拟化架构: 显示宿主机来自什么虚拟化架构一般来说推荐```Dedicated > KVM >= Xen```虚拟化,其他虚拟化都会存在性能损耗,导致使用的时候存在性能共享/损耗,但这个也说不准,独立服务器才拥有完全独立的资源占用,其他虚拟化基本都会有资源共享,取决于宿主机的持有者对这个虚拟机是否有良心,具体性能优劣还是得看后面的专项性能测试。
NAT类型: 显示NAT类型具体推荐```Full Cone > Restricted Cone > Port Restricted Cone > Symmetric```,测不出来或者非正规协议的类型会显示```Inconclusive```一般来说只有特殊用途比如有特殊的代理、实时通讯、做FRP内穿端口等需求才需要特别关注其他一般情况下都不用关注本指标。
@@ -96,9 +96,9 @@ IPV4/IPV6 ASN: 显示宿主机IP所属的ASN组织ID和名字同一个IDC可
IPV4/IPV6 Location: 显示对应协议的IP在数据库中的地理位置。
IPV4 Active IPs: 根据 bgp.tools 信息查询当前CIDR分块中 活跃邻居数量/总邻居数量 由于是非实时的,可能存在延迟。
IPV4 Active IPs: 根据 bgp.tools 信息查询当前CIDR分块中 活跃邻居数量/总邻居数量 刷新间隔大概是15~20分钟还是有一定参考性的。(这个总数和比值不是可Ping通的IP数量是监控到有来自这个IP的请求到全球监控网内的记录比可ping通更能代表当前活跃的邻居数)
IPV6 子网掩码根据宿主机信息查询的本机IPV6子网大小
IPV6 子网掩码根据宿主机信息查询的本机IPV6子网大小如果你需要在本机进行独立的IPV6分配应该持有至少/80大小的子网才足够进行分配使用。数值计算为2的倍数数值越小越靠近2则可分配使用的IPV6子网范围越大。
### **CPU测试**
@@ -116,16 +116,14 @@ IPV6 子网掩码根据宿主机信息查询的本机IPV6子网大小
| 适用场景 | 适合快速测试,仅测试计算性能 | 适合综合全面的测试 |
| 排行榜 | [sysbench.spiritlhl.net](https://sysbench.spiritlhl.net/) | [browser.geekbench.com](https://browser.geekbench.com/) |
默认使用```Sysbench```进行测试,基准大致如下:
```Sysbench```的基准可见 [CPU Performance Ladder For Sysbench](https://sysbench.spiritlhl.net/) 天梯图具体得分不取决于测试的sysbench的版本。默认使用```Sysbench```进行测试,基准说明大致如下:
CPU测试单核```Sysbench```得分在5000以上的可以算第一梯队4000到5000分算第二梯队每1000分大致算一档。
CPU测试单核```Sysbench```得分在5000以上的可以算第一梯队称得上高性能每1000分大致算一档。
AMD的7950x单核满血性能得分在6500左右AMD的5950x单核满血性能得分5700左右Intel普通的CPU(E5之类的)在1000~800左右低于500的单核CPU可以说是性能比较差的了。
有时候多核得分和单核得分一样证明商家在限制程序并发使用CPU典型例子腾讯云。
```Sysbench```的基准可见 [CPU Performance Ladder For Sysbench](https://sysbench.spiritlhl.net/) 天梯图具体得分不分测试的sysbench的版本。
```GeekBench```的基准可见 [官方网站](https://browser.geekbench.com/processor-benchmarks/) 天梯图,具体得分每个```GeekBench```版本都不一样,注意使用时测试的```GeekBench```版本是什么。
多说一句,```GeekBench```测的很多内容,实际在服务器使用过程中根本用不到,测试仅供参考。当然```Sysbench```非常不全面但它基于最基础的计算性能可以大致比较CPU的性能。
@@ -163,13 +161,13 @@ AMD的7950x单核满血性能得分在6500左右AMD的5950x单核满血性能
对于各种测试参数对应方法的比较:
| 参数方法 | 测试准确性 | 测试速度 | 适应架构 | 依赖情况 |
|------------|------------|----------|----------|----------|----------|
| **stream** | 高 —— 结果稳定,更符合实际情况 | 快速 | 跨平台Linux/Windows/Unix | 自带依赖无需额外安装 |
| **sysbench** | 高 —— 可测试 CPU、内存、IO、线程等结果较可靠 | 中等 | 跨平台Linux、Windows 部分支持) | 需环境额外安装 |
| **winsat** | 中等偏高 —— Windows 内置工具,结果和环境相关 | 中等 | 仅限 Windows | 物理机器上自带,虚拟机不可用 |
| **mbw** | 中等 —— 结果可能受缓存/调度影响 | 非常快 | 跨平台(几乎所有类 Unix 系统) | 自带依赖无需额外安装 |
| **dd** | 低 —— 结果受缓存影响 | 快速 | 跨平台(几乎所有类 Unix 系统) | 需环境额外安装 |
| 参数方法 | 测试准确性 | 速度 | 适应架构 | 依赖情况 |
|----------|------------|----------|----------|----------|
| stream | 高, 结果稳定,更符合实际情况 | 快速 | 跨平台Linux/Windows/Unix | 自带依赖无需额外安装 |
| sysbench | 高, 结果较可靠 | 中等 | 跨平台Linux、Windows 部分支持) | 需环境额外安装 |
| winsat | 中等偏高, Windows 内置工具 | 中等 | 仅限 Windows | 物理机器上自带,虚拟机不可用 |
| mbw | 中等, 结果可能受缓存/调度影响 | 快 | 跨平台(几乎所有类 Unix 系统) | 自带依赖无需额外安装 |
| dd | 低, 结果受缓存影响 | 快速 | 跨平台(几乎所有类 Unix 系统) | 自带依赖无需额外安装 |
### **硬盘测试**
@@ -221,31 +219,129 @@ AMD的7950x单核满血性能得分在6500左右AMD的5950x单核满血性能
默认只检测跨国流媒体解锁。
一般来说正常的情况下一个IP多个流媒体的解锁地区都是一致的不会到处乱飘如果发现多家平台解锁地区不一致那么IP大概率来自IPXO等平台租赁或者是刚刚宣告和被使用未被流媒体普通的数据库所识别修正地域。由于各平台的IP数据库识别速度不一致所以有时候有的平台解锁区域正常有的飘到路由上的某个位置有的飘到IP未被你使用前所在的位置。
一般来说正常的情况下一个IP多个流媒体的解锁地区都是一致的不会到处乱飘如果发现多家平台解锁地区不一致那么IP大概率来自IPXO等平台租赁或者是刚刚宣告和被使用未被流媒体普通的数据库所识别修正地域。
由于各平台的IP数据库识别速度不一致所以有时候有的平台解锁区域正常有的飘到路由上的某个位置有的飘到IP未被你使用前所在的位置。
| DNS 类型 | 解锁方式判断是否必要 | DNS 对解锁影响 | 说明 |
| ------------ | ---------- | --------- | --------------------------------------- |
| 官方主流 DNS | 否 | 小 | 流媒体解锁主要依赖节点 IPDNS 解析基本不会干扰解锁。 |
| 非主流 / 自建 DNS | 是 | 大 | 流媒体解锁结果受 DNS 解析影响较大,需要判断是原生解锁还是 DNS 解锁。 |
| 官方主流 DNS | 否 | 小 | 流媒体解锁主要依赖测试节点 IPDNS 解析基本不会干扰解锁。 |
| 非主流 / 自建 DNS | 是 | 大 | 流媒体解锁结果受 DNS 解析影响较大,需要判断是原生解锁还是 DNS 解锁。|
所以测试过程中如果宿主机当前使用的是官方主流的DNS不会进行是否为原生解锁的判断。
所以测试过程中如果宿主机当前使用的是官方主流的DNS不会进行是否为原生解锁的判断解锁类型大部分受后面查询的IP质量的使用类型和公司类型的影响
对于IP质量解锁比较敏感的实际上是各大AI平台和本地流媒体以及reddit和spotify其他的跨国平台一般不易受IP质量影响解锁。
### **IP质量检测**
依赖项目:[https://github.com/oneclickvirt/securityCheck](https://github.com/oneclickvirt/securityCheck)
检测14个数据库的IP相关信息一般来说看使用类型和公司类型还有安全信息的其他判别足矣,安全得分真的图一乐。多个平台比较对应检测项目都为对应值证明当前IP确实如此不要仅相信一个数据库源的信息
检测18个数据库的IP相关信息多个平台比较对应检测项目都为对应值证明当前IP确实如此不要仅相信一个数据库源的信息:
* **使用类型 & 公司类型**显示IP归属和使用场景例如是否属于家庭用户、企业办公、托管服务或云/数据中心。
* **云提供商 / 数据中心 / 移动设备**判断IP是否来自云服务、数据中心或移动网络帮助识别共享或高风险IP。
* **代理 / VPN / Tor / Tor出口**检测IP是否用于隐藏真实身份或位置可能涉及匿名访问或滥用行为。
* **网络爬虫 / 机器人**:识别自动化访问或采集程序,对安全风险评估有参考价值。
* **匿名 / 滥用者 / 威胁 / 中继 / Bogon**显示IP历史行为特征和是否属于保留/未分配IP辅助判断IP可信度。
* **安全得分、声誉、信任得分、威胁得分、欺诈得分、滥用得分**各数据库对IP的量化安全评价仅供参考。
* **社区投票 & 黑名单记录**:展示用户反馈及公共黑名单信息,可快速识别潜在风险。
* **Google搜索可行性**检测IP访问Google搜索服务的可行性间接反映网络限制或屏蔽情况。
[ipinfo.io](https://ipinfo.io) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) [ipfighter.com](https://ipfighter.com/) [getipintel.net](http://check.getipintel.net/) [fraudlogix.com](https://fraudlogix.com)
多平台对比更可靠,不同数据库算法和更新频率不同,单一来源可能存在误判。多个数据库显示相似结果,说明这个结果更可靠。
以下为每个字段的对应的含义
| 字段类别 | 字段名称 | 字段说明 | 可能的值 | 评分规则 |
|---------|---------|---------|---------|---------|
| 安全得分 | 声誉(Reputation) | IP地址在安全社区中的信誉评分 | 0-100的数值 | 越高越好 |
| | 信任得分(Trust Score) | IP地址的可信任程度评分 | 0-100的数值 | 越高越好 |
| | VPN得分(VPN Score) | IP被识别为VPN的可能性评分 | 0-100的数值 | 越低越好 |
| | 代理得分(Proxy Score) | IP被识别为代理的可能性评分 | 0-100的数值 | 越低越好 |
| | 社区投票-无害 | 社区成员投票认为该IP无害的分数 | 非负整数 | 越高越好 |
| | 社区投票-恶意 | 社区成员投票认为该IP恶意的分数 | 非负整数 | 越低越好 |
| | 威胁得分(Threat Score) | IP地址的整体威胁程度评分 | 0-100的数值 | 越低越好 |
| | 欺诈得分(Fraud Score) | IP地址涉及欺诈活动的可能性评分 | 0-100的数值 | 越低越好 |
| | 滥用得分(Abuse Score) | IP地址被报告滥用行为的评分 | 0-100的数值 | 越低越好 |
| | ASN滥用得分 | 该IP所属ASN(自治系统)的滥用评分 | 0-1的小数可能带有风险等级标注(Low/Medium/High) | 越低越好 |
| | 公司滥用得分 | 该IP所属公司的滥用评分 | 0-1的小数可能带有风险等级标注(Low/Medium/High) | 越低越好 |
| | 威胁级别(Threat Level) | IP地址的威胁等级分类 | low/medium/high/critical等文本描述 | low为最佳 |
| 黑名单记录 | 无害记录数(Harmless) | 在各黑名单数据库中被标记为无害的次数 | 非负整数 | 数值本身无好坏 |
| | 恶意记录数(Malicious) | 在各黑名单数据库中被标记为恶意的次数 | 非负整数 | 越低越好 |
| | 可疑记录数(Suspicious) | 在各黑名单数据库中被标记为可疑的次数 | 非负整数 | 越低越好 |
| | 无记录数(Undetected) | 在各黑名单数据库中无任何记录的次数 | 非负整数 | 数值本身无好坏 |
| | DNS黑名单-总检查数 | 检查的DNS黑名单数据库总数量 | 正整数 | 数值本身无好坏 |
| | DNS黑名单-干净 | 在DNS黑名单中显示为干净(未列入)的数量 | 非负整数 | 越高越好 |
| | DNS黑名单-已列入 | 在DNS黑名单中已被列入的数量 | 非负整数 | 越低越好 |
| | DNS黑名单-其他 | 在DNS黑名单检查中返回其他状态的数量 | 非负整数 | 数值本身无好坏 |
一般来说看下面的使用类型公司类型还有安全信息的判别足矣,上面的安全得分只有多个数据库确认一致才可信,不看也没啥问题。(IDC: 一般买服务器识别成这个的多,就是正常的在数据中心机房广播使用的类型)
| 使用类型 | 说明 |
| ----------- | ---------- |
| hosting | 主机/服务器用途(IDC) |
| residential | 家庭/住宅网络(家宽) |
| FixedLineISPISP | 固定线路互联网服务提供商(家宽) |
| business | 企业办公网络(商宽) |
| cellular | 移动运营商网络(家宽) |
| education | 教育机构网络(教育网) |
| government | 政府机构网络(政府网) |
| military | 军事网络(政府网) |
| DataCenter | 数据中心网络(IDC) |
| WebHosting | 网站托管服务(IDC) |
| Transit | 互联网中继/传输网络(IDC) |
| CDN | 内容分发网络(IDC) |
| 公司类型 | 说明 |
| ------------ | ------------ |
| business | 企业公司(商宽) |
| hosting | 主机/数据中心公司(IDC) |
| FixedLineISPISP | 固定线路互联网服务提供商(家宽) |
| education | 教育机构(教育网) |
| government | 政府机构(政府网) |
其他安全信息字段:
| 字段类别 | 字段名称 | 字段说明 | 可能的值 | 评分规则 |
|---------|---------|---------|---------|---------|
| 云提供商 | 是否云提供商(Cloud Provider) | 该IP是否属于云服务提供商 | Yes/No | 无好坏之分,仅标识 |
| 数据中心 | 是否数据中心(Data Center) | 该IP是否位于数据中心 | Yes/No | 如果关注解锁No为最佳 |
| 移动设备 | 是否移动设备(Mobile) | 该IP是否来自移动设备网络 | Yes/No | 如果关注解锁Yes为最佳 |
| 代理 | 是否代理(Proxy) | 该IP是否为代理服务器 | Yes/No | No为佳 |
| VPN | 是否VPN | 该IP是否为VPN服务节点 | Yes/No | No为佳 |
| Tor出口 | 是否TorExit(Tor Exit Node) | 该IP是否为Tor网络的出口节点 | Yes/No | No为佳 |
| 网络爬虫 | 是否网络爬虫(Crawler) | 该IP是否被识别为网络爬虫 | Yes/No | No为佳 |
| 匿名 | 是否匿名(Anonymous) | 该IP是否提供匿名服务(如VPN/Proxy/Tor) | Yes/No | No为佳 |
| 攻击者 | 是否攻击者(Attacker) | 该IP是否被识别为攻击来源(如DDOS) | Yes/No | No为佳 |
| 滥用者 | 是否滥用者(Abuser) | 该IP是否有主动滥用行为记录 | Yes/No | No为佳 |
| 威胁 | 是否威胁(Threat) | 该IP是否被标记为威胁来源 | Yes/No | No为佳 |
| 中继 | 是否中继(Relay) | 该IP是否为中继节点 | Yes/No | No为佳 |
| Bogon | 是否Bogon(Bogon IP) | 该IP是否为伪造/未分配的IP地址 | Yes/No | No为佳 |
| 机器人 | 是否机器人(Bot) | 该IP是否被识别为机器人流量 | Yes/No | No为佳 |
| 搜索引擎 | Google搜索可行性 | 该IP能否正常使用Google搜索服务 | YES/NO | YES为正常 |
多平台对比更可靠,不同数据库算法和更新频率不同,单一来源可能存在误判,多个数据库显示相似结果,说明这个结果更可靠。
Abuser 或 Abuse 的滥用得分会直接影响机器的正常使用中国境内运营商一般默认不处理如果你的机器是中国IP无需理睬
如果 Abuse 记录存在且滥用得分高,说明该 IP 过去可能存在以下行为:
- 被用于 DDoS 攻击
- 发起大规模洪流攻击
- 进行端口扫描或全网扫描
这类历史记录会被举报并录入 Abuse 数据库。如果你接手的 IP 刚被他人滥用过,可能仍会有延迟的 Abuse 警告邮件发送至服务商。服务商可能会误判为你本人从事恶意行为进而清退机器且大多数情况下无法退款。对跨国流媒体服务而言Abuse 滥用得分还可能影响平台对该 IP 的信誉评分。
对于需要家宽进行流媒体解锁需求的用户(如电商需求),应关注「使用类型」与「公司类型」是否同时识别为 ISP。如果仅为单 ISP 或识别为非 ISP则后续数据库更新后IP 类型很可能被更正为 Hosting从而影响解锁效果。
大部分 IP 识别数据库按月更新。更新后IP 属性可能被修改,出现由 ISP → Hosting 的情况。对于一些敏感的平台,比如某些特定国家的流媒体(如 NetflixSpotify),某些区别对待不同国家的流媒体(如 TikTok),非家宽解锁的可能性较低但不是没有,如果你需要稳定解锁且追求其特殊功能解锁,才需要追求家宽流媒体解锁。如果仅仅是浏览观看,很多时候没必要追求家宽,
对于 IP 类型分类有必要仔细说说
家宽 IP
- 归属地与广播地一致,广播主体为当地电信运营商的 AS
- 必须通过国际带宽线路广播,才能被识别为家宽属性
原生 IP
- 归属地与持有人一致,但广播主体并非本地电信运营商
- 常见于数据中心使用自有 AS 号进行广播,即便采购到家宽 IP属性也会在一段时间后变更为原生
广播 IP
- 由 A 地的 AS 将 IP 广播到 B 地使用
- 广播传播需要时间,通常 1 周至 1 个月
- 各大运营商的归属地数据库更新可能需 1 至数月
- 若本地机房进行广播,家宽 IP 可能会被更正为原生或广播属性
说到这里,就必须说明凡是真家宽,那它访问目标站点的时候,肯定不会绕行回中国再到目标站点。真实的境外家庭宽带一定是就近出国、就近落地。
### **邮件端口检测**
@@ -275,12 +371,12 @@ AMD的7950x单核满血性能得分在6500左右AMD的5950x单核满血性能
| 等级 | 描述 |
|------|------|
| **Tier 1 Global** | 全球顶级运营商(如 AT&T、Verizon、NTT、Telia 等之间免费互联Settlement-Free Peering不依赖他人即可访问全球任意网络。 |
| **Tier 1 Regional** | 区域性顶级运营商,在特定区域具有一级能力,但在全球范围互联性稍弱。 |
| **Tier 1 Indirect** | 间接连接的 Tier 1非直接购买通过中间上游间接接入 Tier 1 网络。 |
| **Tier 2** | 需要向 Tier 1 付费购买上网能力的二级运营商,通常是各国主流电信商或 ISP。 |
| **CDN Provider** | 内容分发网络提供商,如 Cloudflare、Akamai、Fastly 等,主要用于内容加速而非传统上游。 |
| **Direct/Indirect Others** | 其他类型的直接或间接连接,如 IXInternet Exchange成员、私有对等互联等。 |
| **Tier 1 Global** | 全球顶级运营商(如 AT&T、Verizon、NTT、Telia 等之间免费互联Settlement-Free Peering不依赖他人即可访问全球任意网络。|
| **Tier 1 Regional** | 区域性顶级运营商,在特定区域具有一级能力,但在全球范围互联性稍弱。|
| **Tier 1 Indirect** | 间接连接的 Tier 1非直接购买通过中间上游间接接入 Tier 1 网络。|
| **Tier 2** | 需要向 Tier 1 付费购买上网能力的二级运营商,通常是各国主流电信商或 ISP。|
| **CDN Provider** | 内容分发网络提供商,如 Cloudflare、Akamai、Fastly 等,主要用于内容加速而非传统上游。|
| **Direct/Indirect Others** | 其他类型的直接或间接连接,如 IXInternet Exchange成员、私有对等互联等。|
上游质量判断:直接接入的高等级上游(特别是 Tier 1 Global越多通常网络连通性越好。但实际网络质量也受到以下因素影响
@@ -372,7 +468,7 @@ Dependency project: [https://github.com/oneclickvirt/basics](https://github.com/
**Load**: Shows system load
**Virtualization Architecture**: Shows what virtualization architecture the host comes from. Generally recommended: `Dedicated > KVM > Xen` virtualization. Other virtualization types have performance losses, causing performance sharing/loss during use. However, this isn't definitive - only dedicated servers have completely independent resource usage. Other virtualization basically involves resource sharing, depending on whether the host holder is conscientious about this virtual machine. Actual performance superiority still depends on subsequent specialized performance tests.
**Virtualization Architecture**: Shows what virtualization architecture the host comes from. Generally recommended: `Dedicated > KVM >= Xen` virtualization. Other virtualization types have performance losses, causing performance sharing/loss during use. However, this isn't definitive - only dedicated servers have completely independent resource usage. Other virtualization basically involves resource sharing, depending on whether the host holder is conscientious about this virtual machine. Actual performance superiority still depends on subsequent specialized performance tests.
**NAT Type**: Shows NAT type. Specifically recommended: `Full Cone > Restricted Cone > Port Restricted Cone > Symmetric`. Undetectable or non-standard protocol types show as `Inconclusive`. Generally, only special purposes like specific proxies, real-time communication, or FRP port forwarding need special attention to this indicator; other general situations don't need to focus on this metric.
@@ -382,9 +478,9 @@ Dependency project: [https://github.com/oneclickvirt/basics](https://github.com/
**IPV4/IPV6 Location**: Shows the geographic location of the corresponding protocol's IP in the database.
**IPV4 Active IPs**: Based on bgp.tools information, queries active neighbor count/total neighbor count in the current CIDR block. Since this is non-real-time, there may be delays.
**IPV4 Active IPs:** According to bgp.tools data, the refresh interval for the number of active neighbors/total neighbors within the current CIDR block is approximately 1520 minutes, which is fairly reliable. (This total and ratio do not represent the number of pingable IPs, but rather the number of IPs observed sending requests to the global monitoring network, which more accurately reflects the number of currently active neighbors.)
**IPV6 Subnet Mask**: Queries the local IPV6 subnet size based on host information.
**IPV6 Subnet Mask:** The local IPv6 subnet size is determined based on the host machines configuration. If you intend to allocate independent IPv6 addresses locally, you should possess at least a /80 subnet to ensure sufficient address space. The value is calculated as a power of 2 — the smaller the number, the closer it is to 2, and the larger the available IPv6 subnet range.
### CPU Testing
@@ -402,16 +498,14 @@ Supports command-line parameter selection between `GeekBench` and `Sysbench` for
| Use Case | Suitable for quick testing, only tests computational performance | Suitable for comprehensive testing |
| Leaderboard | [sysbench.spiritlhl.net](https://sysbench.spiritlhl.net/) | [browser.geekbench.com](https://browser.geekbench.com/) |
Default uses `Sysbench` for testing, with rough benchmarks as follows:
`Sysbench` benchmarks can be seen in the [CPU Performance Ladder For Sysbench](https://sysbench.spiritlhl.net/) tier chart. The specific score does not depend on the version of Sysbench used for the test. Default uses `Sysbench` for testing, with rough benchmarks as follows:
CPU test single-core `Sysbench` scores above 5000 can be considered first-tier, 4000-5000 points second-tier, roughly one tier per 1000 points.
A single-core CPU score of over 5000 in **Sysbench** can be considered first-tier and classified as high performance, with roughly one tier for every 1000 points.
AMD 7950x single-core full performance scores around 6500, AMD 5950x single-core full performance scores around 5700, Intel regular CPUs (E5 series) around 1000-800, single-core CPUs below 500 can be considered poor performance.
Sometimes multi-core and single-core scores are identical, proving the merchant is limiting program concurrent CPU usage, typical example being Tencent Cloud.
`Sysbench` benchmarks can be seen in the [CPU Performance Ladder For Sysbench](https://sysbench.spiritlhl.net/) tier chart. Specific scores depend on the sysbench version tested.
`GeekBench` benchmarks can be seen in the [official website](https://browser.geekbench.com/processor-benchmarks/) tier chart. Specific scores differ for each `GeekBench` version, pay attention to which `GeekBench` version was used during testing.
One more thing: `GeekBench` tests many things that are actually unused in server operations, tests are for reference only. Of course, `Sysbench` is very incomplete, but it can roughly compare CPU performance based on the most basic computational performance.
@@ -448,12 +542,12 @@ Based on the above table, this project's rough judgment method:
* **≈ 50 GB/s (≈ 51200 MB/s)** → Basically DDR5
| Parameter Method | Test Accuracy | Test Speed | Architecture Compatibility | Dependency Requirements |
|------------------|---------------|------------|---------------------------|------------------------|
| **stream** | High — Stable results, more realistic | Fast | Cross-platform (Linux/Windows/Unix) | Built-in dependencies, no additional installation required |
| **sysbench** | High — Can test CPU, memory, IO, threads, etc., reliable results | Medium | Cross-platform (Linux, partial Windows support) | Requires additional environment installation |
| **winsat** | Medium-High — Windows built-in tool, results environment-dependent | Medium | Windows only | Built-in on physical machines, unavailable on virtual machines |
| **mbw** | Medium — Results may be affected by cache/scheduling | Very Fast | Cross-platform (almost all Unix-like systems) | Built-in dependencies, no additional installation required |
| **dd** | Low — Results affected by cache | Fast | Cross-platform (almost all Unix-like systems) | Requires additional environment installation |
|----------|------------|----------|----------|----------|
| stream | High — Stable results, more realistic | Fast | Cross-platform (Linux/Windows/Unix) | Built-in dependencies, no additional installation required |
| sysbench | High — Reliable results | Medium | Cross-platform (Linux, partial Windows support) | Requires additional environment installation |
| winsat | Medium-High — Windows built-in tool | Medium | Windows only | Built-in on physical machines, unavailable on virtual machines |
| mbw | Medium — Results may be affected by cache/scheduling | Very Fast | Cross-platform (almost all Unix-like systems) | Built-in dependencies, no additional installation required |
| dd | Low — Results affected by cache | Fast | Cross-platform (almost all Unix-like systems) | Built-in dependencies, no additional installation required |
### Disk Testing
@@ -505,7 +599,9 @@ Dependency project: [https://github.com/oneclickvirt/CommonMediaTests](https://g
Default only checks cross-border streaming media unlocking.
Generally speaking, under normal circumstances, multiple streaming services for one IP should have consistent unlock regions without scattered locations. If multiple platforms show inconsistent unlock regions, the IP likely comes from platforms like IPXO rentals or has been recently announced and used, not yet recognized and corrected by streaming media common databases. Due to inconsistent IP database recognition speeds across platforms, sometimes some platforms unlock regions normally, some drift to certain router locations, and some drift to where the IP was before you used it.
Generally speaking, under normal circumstances, multiple streaming services for one IP should have consistent unlock regions without scattered locations. If multiple platforms show inconsistent unlock regions, the IP likely comes from platforms like IPXO rentals or has been recently announced and used, not yet recognized and corrected by streaming media common databases.
Due to inconsistent IP database recognition speeds across platforms, sometimes some platforms unlock regions normally, some drift to certain router locations, and some drift to where the IP was before you used it.
| DNS Type | Unlock Method Judgment Necessary | DNS Impact on Unlocking | Description |
| -------- | ------------------------------- | ----------------------- | ----------- |
@@ -514,22 +610,118 @@ Generally speaking, under normal circumstances, multiple streaming services for
So during testing, if the host currently uses official mainstream DNS, no judgment of whether it's native unlocking will be performed.
Platforms that are particularly sensitive to IP quality for unlocking include major AI platforms, local streaming services, Reddit, and Spotify. Other multinational platforms are generally less affected by IP quality when it comes to unlocking.
### IP Quality Detection
Dependency project: [https://github.com/oneclickvirt/securityCheck](https://github.com/oneclickvirt/securityCheck)
Detects IP-related information from 14 databases. Generally speaking, looking at usage type, company type, and security information's other discriminators is sufficient. Security scores are really just for fun. When multiple platforms show corresponding detection items all having corresponding values, it proves the current IP is indeed as such - don't trust information from just one database source.
Detect IP-related information from 18 databases. Multiple platforms comparing corresponding detection items all show corresponding values, proving that the current IP is indeed as such. Do not only trust information from a single database source:
* **Usage Type & Company Type**: Shows IP attribution and usage scenarios, such as whether it belongs to home users, enterprise office, hosting services, or cloud/data centers.
* **Cloud Provider / Data Center / Mobile Device**: Determines if IP comes from cloud services, data centers, or mobile networks, helping identify shared or high-risk IPs.
* **Proxy / VPN / Tor / Tor Exit**: Detects if IP is used to hide real identity or location, possibly involving anonymous access or abuse behavior.
* **Web Crawler / Bot**: Identifies automated access or collection programs, with reference value for security risk assessment.
* **Anonymous / Abuser / Threat / Relay / Bogon**: Shows IP historical behavior characteristics and whether it belongs to reserved/unallocated IPs, assisting in judging IP credibility.
* **Security Score, Reputation, Trust Score, Threat Score, Fraud Score, Abuse Score**: Various databases' quantified security evaluations of IPs, for reference only.
* **Community Voting & Blacklist Records**: Shows user feedback and public blacklist information, can quickly identify potential risks.
* **Google Search Feasibility**: Tests IP's feasibility for accessing Google search services, indirectly reflecting network restrictions or blocking situations.
[ipinfo.io](https://ipinfo.io) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) [ipfighter.com](https://ipfighter.com/) [getipintel.net](http://check.getipintel.net/) [fraudlogix.com](https://fraudlogix.com)
Multi-platform comparison is more reliable. Different databases have different algorithms and update frequencies; single sources may misjudge. Similar results from multiple databases indicate higher reliability.
The following are the meanings corresponding to each field
| Field Category | Field Name | Field Description | Possible Values | Scoring Rules |
|---------|---------|---------|---------|---------|
| Security Score | Reputation | Reputation score of IP address in the security community | Numerical value from 0-100 | Higher is better |
| | Trust Score | Trustworthiness score of IP address | Numerical value from 0-100 | Higher is better |
| | VPN Score | Likelihood score of IP being identified as VPN | Numerical value from 0-100 | Lower is better |
| | Proxy Score | Likelihood score of IP being identified as proxy | Numerical value from 0-100 | Lower is better |
| | Community Votes-Harmless | Score of community members voting the IP as harmless | Non-negative integer | Higher is better |
| | Community Votes-Malicious | Score of community members voting the IP as malicious | Non-negative integer | Lower is better |
| | Threat Score | Overall threat level score of IP address | Numerical value from 0-100 | Lower is better |
| | Fraud Score | Likelihood score of IP address being involved in fraudulent activities | Numerical value from 0-100 | Lower is better |
| | Abuse Score | Score of IP address being reported for abusive behavior | Numerical value from 0-100 | Lower is better |
| | ASN Abuse Score | Abuse score of the ASN (Autonomous System) to which this IP belongs | Decimal from 0-1, may include risk level notation (Low/Medium/High) | Lower is better |
| | Company Abuse Score | Abuse score of the company to which this IP belongs | Decimal from 0-1, may include risk level notation (Low/Medium/High) | Lower is better |
| | Threat Level | Threat level classification of IP address | Text descriptions such as low/medium/high/critical | low is best |
| Blacklist Records | Harmless Count | Number of times marked as harmless in various blacklist databases | Non-negative integer | Value itself has no good or bad |
| | Malicious Count | Number of times marked as malicious in various blacklist databases | Non-negative integer | Lower is better |
| | Suspicious Count | Number of times marked as suspicious in various blacklist databases | Non-negative integer | Lower is better |
| | Undetected Count | Number of times with no records in various blacklist databases | Non-negative integer | Value itself has no good or bad |
| | DNS Blacklist-Total Checks | Total number of DNS blacklist databases checked | Positive integer | Value itself has no good or bad |
| | DNS Blacklist-Clean | Number showing as clean (not listed) in DNS blacklists | Non-negative integer | Higher is better |
| | DNS Blacklist-Listed | Number already listed in DNS blacklists | Non-negative integer | Lower is better |
| | DNS Blacklist-Other | Number returning other statuses in DNS blacklist checks | Non-negative integer | Value itself has no good or bad |
Generally speaking, checking the usage type, company type, and security information below is sufficient. The security score above is only reliable when confirmed by multiple databases, so it's not a problem to skip it. (IDC: generally buy vps identified as this much, is normal in the data center room broadcasting the type of use)
| Usage Type | Description |
| ----------- | ---------- |
| hosting | Host/Server usage (IDC) |
| residential | Home/Residential network (Home broadband) |
| FixedLineISP, ISP | Fixed-line Internet Service Provider (Home broadband) |
| business | Enterprise office network (Business broadband) |
| cellular | Mobile carrier network (Home broadband) |
| education | Educational institution network (Education network) |
| government | Government institution network (Government network) |
| military | Military network (Government network) |
| DataCenter | Data center network (IDC) |
| WebHosting | Web hosting service (IDC) |
| Transit | Internet transit/transport network (IDC) |
| CDN | Content Delivery Network (IDC) |
| Company Type | Description |
| ------------ | ------------ |
| business | Business company (Business broadband) |
| hosting | Hosting/Data center company (IDC) |
| FixedLineISP, ISP | Fixed-line Internet Service Provider (Home broadband) |
| education | Educational institution (Education network) |
| government | Government institution (Government network) |
Other security information fields:
| Field Category | Field Name | Field Description | Possible Values | Scoring Rules |
|---------|---------|---------|---------|---------|
| Cloud Provider | Is Cloud Provider | Whether this IP belongs to a cloud service provider | Yes/No | No good or bad, identification only |
| Data Center | Is Data Center | Whether this IP is located in a data center | Yes/No | No is best if concerned about unblocking |
| Mobile | Is Mobile | Whether this IP is from a mobile device network | Yes/No | Yes is best if concerned about unblocking |
| Proxy | Is Proxy | Whether this IP is a proxy server | Yes/No | No is better |
| VPN | Is VPN | Whether this IP is a VPN service node | Yes/No | No is better |
| Tor Exit | Is TorExit (Tor Exit Node) | Whether this IP is a Tor network exit node | Yes/No | No is better |
| Crawler | Is Crawler | Whether this IP is identified as a web crawler | Yes/No | No is better |
| Anonymous | Is Anonymous | Whether this IP provides anonymity services (such as VPN/Proxy/Tor) | Yes/No | No is better |
| Attacker | Is Attacker | Whether this IP is identified as an attack source (such as DDOS) | Yes/No | No is better |
| Abuser | Is Abuser | Whether this IP has records of active abuse behavior | Yes/No | No is better |
| Threat | Is Threat | Whether this IP is marked as a threat source | Yes/No | No is better |
| Relay | Is Relay | Whether this IP is a relay node | Yes/No | No is better |
| Bogon | Is Bogon (Bogon IP) | Whether this IP is a forged/unallocated IP address | Yes/No | No is better |
| Bot | Is Bot | Whether this IP is identified as bot traffic | Yes/No | No is better |
| Search Engine | Google Search Feasibility | Whether this IP can use Google search service normally | YES/NO | YES is normal |
Multi-platform comparison is more reliable. Different databases have different algorithms and update frequencies. A single source may have misjudgments. If multiple databases show similar results, it indicates the result is more reliable.
Abuser or Abuse scores directly affect the normal use of machines.
If Abuse records exist and the score is high, it indicates that the IP may have been involved in the following behaviors in the past:
- Used for DDoS attacks
- Launched large-scale flood attacks
- Conducted port scanning or network-wide scanning
Such historical records will be reported and entered into the Abuse database. If the IP you take over has just been abused by others, delayed Abuse warning emails may still be sent to the service provider. The service provider may misjudge you as the person engaging in malicious behavior, and then terminate the machine, and in most cases, no refund will be given. For cross-border streaming services, Abuse scores may also affect the platform's reputation rating for that IP.
For users who need residential broadband for streaming unlock requirements (such as e-commerce needs), attention should be paid to whether "Usage Type" and "Company Type" are both identified as ISP. If it is only single ISP or identified as non-ISP, after subsequent database updates, the IP type is likely to be corrected to Hosting, thereby affecting unlock effectiveness.
Most IP identification databases are updated monthly. After updates, IP attributes may be modified, resulting in situations where ISP → Hosting occurs. For some sensitive platforms, such as streaming services in certain specific countries (like Netflix, Spotify), or streaming services that treat different countries differently (like TikTok), the possibility of non-residential unlock is low but not impossible. If you need stable unlock and pursue its special function unlock, you only need to pursue residential broadband streaming unlock. If you're just browsing and watching, there's often no need to pursue residential broadband.
It is necessary to elaborate on IP type classification
Residential Broadband IP
- The attribution location is consistent with the broadcast location, and the broadcast entity is the local telecom operator's AS
- Must be broadcast through international bandwidth lines to be recognized as residential broadband attributes
Native IP
- The attribution location is consistent with the holder, but the broadcast entity is not a local telecom operator
- Common in data centers using their own AS numbers for broadcasting. Even if residential broadband IPs are acquired, the attributes will change to native after a period of time
Broadcast IP
- IP broadcast from location A's AS to location B for use
- Broadcast propagation takes time, usually 1 week to 1 month
- Major operators' attribution location database updates may take 1 to several months
- If local machine rooms conduct broadcasting, residential broadband IPs may be corrected to native or broadcast attributes
Speaking of this, it must be stated that any true residential broadband, when accessing target sites, will definitely not route back to your country and then to the target site. Real overseas home broadband must exit nearby and land nearby.
### Email Port Detection
@@ -602,7 +794,7 @@ In daily use, I prefer to use servers with 1Gbps bandwidth, at least the speed o
**負荷**: システム負荷を表示します
**仮想化アーキテクチャ**: ホストがどの仮想化アーキテクチャから来ているかを表示します。一般的に推奨順序:`Dedicated > KVM > Xen`仮想化。その他の仮想化は性能損失があり、使用時に性能共有/損失が発生しますが、これは断定的ではありません。専用サーバーのみが完全に独立したリソース占有を持ちます。その他の仮想化は基本的にリソース共有があり、ホスト保有者がこの仮想マシンに対して良心的かどうかに依存します。実際の性能優劣は後続の専門性能テストを見る必要があります。
**仮想化アーキテクチャ**: ホストがどの仮想化アーキテクチャから来ているかを表示します。一般的に推奨順序:`Dedicated > KVM >= Xen`仮想化。その他の仮想化は性能損失があり、使用時に性能共有/損失が発生しますが、これは断定的ではありません。専用サーバーのみが完全に独立したリソース占有を持ちます。その他の仮想化は基本的にリソース共有があり、ホスト保有者がこの仮想マシンに対して良心的かどうかに依存します。実際の性能優劣は後続の専門性能テストを見る必要があります。
**NATタイプ**: NATタイプを表示します。具体的な推奨順序`Full Cone > Restricted Cone > Port Restricted Cone > Symmetric`。検出不可能または非標準プロトコルタイプは`Inconclusive`と表示されます。一般的に、特殊な用途、例えば特殊なプロキシ、リアルタイム通信、FRPポート転送などの需要がある場合のみ特別に注意が必要で、その他の一般状況では本指標に注意する必要はありません。
@@ -612,9 +804,9 @@ In daily use, I prefer to use servers with 1Gbps bandwidth, at least the speed o
**IPV4/IPV6 Location**: 対応プロトコルのIPのデータベース内地理位置を表示します。
**IPV4 Active IPs**: bgp.tools情報に基づき、現在のCIDRブロック内のアクティブ近隣数/総近隣数を照会します。非リアルタイムのため遅延がある可能性があります
**IPV4アクティブIP**bgp.tools情報によると、現在のCIDRブロック内のアクティブな隣接数/総隣接数の更新間隔はおおよそ15〜20分程度で、一定の参考価値があります。この総数と比率はPing応答のあるIP数ではなく、このIPからグローバル監視ネットワークへのリクエストが観測された記録に基づくもので、Ping応答よりも現在アクティブな隣接数をより正確に表しています
**IPV6 サブネットマスク**: ホスト情報に基づいてローカルIPV6サブネットサイズを照会します。
**IPV6サブネットマスク**ホストマシンの情報に基づいてローカルIPV6サブネットサイズを確認します。ローカルで独自にIPV6アドレスを割り当てたい場合、少なくとも/80サイズのサブネットを保有している必要があります。数値は2の倍数で計算され、値が小さいほど割り当て可能なIPV6サブネット範囲が広くなります。
### CPUテスト
@@ -632,16 +824,14 @@ In daily use, I prefer to use servers with 1Gbps bandwidth, at least the speed o
| 適用シナリオ | 迅速テストに適し、計算性能のみテスト | 総合的で全面的なテストに適用 |
| ランキング | [sysbench.spiritlhl.net](https://sysbench.spiritlhl.net/) | [browser.geekbench.com](https://browser.geekbench.com/) |
デフォルトで`Sysbench`でテストを行い、基準は大まかに以下の通りです:
`Sysbench`の基準は[CPU Performance Ladder For Sysbench](https://sysbench.spiritlhl.net/)階層図で確認可能、具体的なスコアは、テストに使用する Sysbench のバージョンに依存しません。デフォルトで`Sysbench`でテストを行い、基準は大まかに以下の通りです:
CPUテストシングルコア`Sysbench`スコア5000以上は第一階層、4000-5000点は第二階層、1000点毎に大体一階層と考えられます。
CPUテストシングルコアSysbenchスコア5000以上の場合、第一ランクに属し高性能と見なされます。おおよそ1000ポイントごとに一段階と考えられます。
AMD 7950xシングルコアフル性能スコアは6500前後、AMD 5950xシングルコアフル性能スコアは5700前後、Intel普通のCPUE5系などは1000~800前後、500以下のシングルコアCPUは性能が比較的劣ると言えます。
時々マルチコアスコアとシングルコアスコアが同じになることがあり、これは業者がプログラムの並行CPU使用を制限していることを証明します。典型例はTencent Cloudです。
`Sysbench`の基準は[CPU Performance Ladder For Sysbench](https://sysbench.spiritlhl.net/)階層図で確認可能、具体的なスコアはテストしたsysbenchのバージョンに依存しません。
`GeekBench`の基準は[公式サイト](https://browser.geekbench.com/processor-benchmarks/)階層図で確認可能、具体的なスコアは各`GeekBench`バージョンで異なり、使用時にテストした`GeekBench`バージョンに注意してください。
もう一つ付け加えると、`GeekBench`はテストする多くの内容が実際のサーバー使用過程では全く使われないため、テストは参考のみです。もちろん`Sysbench`は非常に不完全ですが、最も基本的な計算性能に基づいてCPUの性能を大まかに比較できます。
@@ -678,12 +868,12 @@ AMD 7950xシングルコアフル性能スコアは6500前後、AMD 5950xシン
* **≈ 50 GB/s (≈ 51200 MB/s)** → 基本的にDDR5
| パラメータ方法 | テスト精度 | テスト速度 | アーキテクチャ対応 | 依存関係 |
|------------|------------|----------|----------|----------|
| **stream** | 高 — 結果が安定し、実際の状況により適合 | 高速 | クロスプラットフォームLinux/Windows/Unix | 内蔵依存関係、追加インストール不要 |
| **sysbench** | 高 — CPU、メモリ、IO、スレッドなどをテスト可能、結果が信頼性高い | 中程度 | クロスプラットフォームLinux、Windows部分対応 | 環境への追加インストールが必要 |
| **winsat** | 中程度やや高 — Windows内蔵ツール、結果は環境に依存 | 中程度 | Windows限定 | 物理マシンに内蔵、仮想マシンでは利用不可 |
| **mbw** | 中程度 — 結果がキャッシュ/スケジューリングの影響を受ける可能性 | 非常に高速 | クロスプラットフォームほぼ全てのUnix系システム | 内蔵依存関係、追加インストール不要 |
| **dd** | 低 — 結果がキャッシュの影響を受ける | 高速 | クロスプラットフォームほぼ全てのUnix系システム | 環境への追加インストールが必要 |
|----------|------------|----------|----------|----------|
| stream | 高 — 結果が安定し、実際の状況により適合 | 高速 | クロスプラットフォームLinux/Windows/Unix | 内蔵依存関係、追加インストール不要 |
| sysbench | 高 — 結果が信頼性高い | 中程度 | クロスプラットフォームLinux、Windows部分対応 | 環境への追加インストールが必要 |
| winsat | 中程度やや高 — Windows内蔵ツール | 中程度 | Windows限定 | 物理マシンに内蔵、仮想マシンでは利用不可 |
| mbw | 中程度 — 結果がキャッシュ/スケジューリングの影響を受ける可能性 | 非常に高速 | クロスプラットフォームほぼ全てのUnix系システム | 内蔵依存関係、追加インストール不要 |
| dd | 低 — 結果がキャッシュの影響を受ける | 高速 | クロスプラットフォームほぼ全てのUnix系システム | 内蔵依存関係、追加インストール要 |
### ディスクテスト
@@ -735,7 +925,9 @@ NVMe SSDの1M (IOPS)値 < 1GB/s の場合、深刻なリソースオーバーセ
デフォルトでは国境を越えるストリーミングメディアのロック解除のみをチェックします
一般的に正常な状況下では一つのIPの複数のストリーミングメディアのロック解除地域はすべて一致しあちこち飛び回ることはありません複数のプラットフォームでロック解除地域が一致しない場合IPはIPXOなどのプラットフォームからのレンタルか最近宣告され使用されたものでストリーミングメディアの一般的なデータベースに認識修正されていない可能性が高いです各プラットフォームのIPデータベース認識速度が一致しないため時々あるプラットフォームではロック解除地域が正常あるプラットフォームではルート上のある位置に飛ぶあるプラットフォームではIPがあなたによって使用される前にいた位置に飛ぶことがあります
一般的に正常な状況下では一つのIPの複数のストリーミングメディアのロック解除地域はすべて一致しあちこち飛び回ることはありません複数のプラットフォームでロック解除地域が一致しない場合IPはIPXOなどのプラットフォームからのレンタルか最近宣告され使用されたものでストリーミングメディアの一般的なデータベースに認識修正されていない可能性が高いです
各プラットフォームのIPデータベース認識速度が一致しないため時々あるプラットフォームではロック解除地域が正常あるプラットフォームではルート上のある位置に飛ぶあるプラットフォームではIPがあなたによって使用される前にいた位置に飛ぶことがあります
| DNS タイプ | ロック解除方式判断の必要性 | DNSのロック解除への影響 | 説明 |
| --------- | ------------------------- | ---------------------- | ---- |
@@ -744,22 +936,118 @@ NVMe SSDの1M (IOPS)値 < 1GB/s の場合、深刻なリソースオーバーセ
そのためテスト過程でホストが現在使用しているのが公式主流のDNSの場合ネイティブロック解除かどうかの判断は行われません
IP品質によるアクセス制限に敏感なのは実際には主要なAIプラットフォームやローカルストリーミングサービスredditやspotifyなどでありその他の多国籍プラットフォームは一般的にIP品質の影響を受けにくい
### IP品質検出
依存プロジェクト[https://github.com/oneclickvirt/securityCheck](https://github.com/oneclickvirt/securityCheck)
14のデータベースのIP関連情報を検出します一般的に使用タイプと会社タイプそしてセキュリティ情報のその他識別を見れば十分でセキュリティスコアは本当にお遊びです複数のプラットフォームで対応する検出項目がすべて対応する値になっている場合現在のIPが確にそうであることを証明しますつのデータベースソースの情報のみを信じてはいけません
18個のデータベースのIP関連情報を検出し複数のプラットフォームで対応する検出項目がすべて対応する値である場合現在のIPが確にそうであることを証明します1つのデータベースソースの情報のみを信じないでください:
* **使用タイプ & 会社タイプ**: IP帰属と使用シナリオを表示し例えば家庭ユーザー企業オフィスホスティングサービスまたはクラウド/データセンターに属するかどうか
* **クラウドプロバイダー / データセンター / モバイルデバイス**: IPがクラウドサービスデータセンターまたはモバイルネットワークから来ているかを判断し共有または高リスクIPの識別に役立つ
* **プロキシ / VPN / Tor / Tor出口**: IPが真の身元や位置を隠すために使用されているかを検出し匿名アクセスや悪用行為に関与している可能性がある
* **ネットワーククローラー / ロボット**: 自動化されたアクセスまたは収集プログラムを識別しセキュリティリスク評価に参考価値がある
* **匿名 / 悪用者 / 脅威 / 中継 / Bogon**: IP履歴行動特徴と予約/未割り当てIPに属するかどうかを表示しIP信頼度判断を補助
* **セキュリティスコア評判信頼スコア脅威スコア詐欺スコア悪用スコア**: 各データベースのIPに対する定量化されたセキュリティ評価参考のみ
* **コミュニティ投票 & ブラックリスト記録**: ユーザーフィードバックと公共ブラックリスト情報を展示し潜在的リスクを迅速に識別可能
* **Google検索実行可能性**: IPがGoogle検索サービスにアクセスする実行可能性を検出しネットワーク制限やブロック状況を間接的に反映
[ipinfo.io](https://ipinfo.io) [scamalytics.com](https://scamalytics.com) [abuseipdb.com](https://www.abuseipdb.com/) [ip2location.com](https://ip2location.com/) [ip-api.com](https://ip-api.com) [ipregistry.co](https://ipregistry.co/) [ipdata.co](https://ipdata.co/) [ipgeolocation.io](https://ipgeolocation.io) [ipwhois.io](https://ipwhois.io) [ipapi.com](https://ipapi.com/) [ipapi.is](https://ipapi.is/) [ipqualityscore.com](https://www.ipqualityscore.com/) [bigdatacloud.com](https://www.bigdatacloud.com/) [dkly.net](https://data.dkly.net) [virustotal.com](https://www.virustotal.com/) [ipfighter.com](https://ipfighter.com/) [getipintel.net](http://check.getipintel.net/) [fraudlogix.com](https://fraudlogix.com)
マルチプラットフォーム比較がより信頼性が高く異なるデータベースのアルゴリズムと更新頻度が異なるため単一ソースは誤判断の可能性があります複数のデータベースが類似の結果を示す場合その結果はより信頼性が高いことを説明します
以下は各フィールドの対応する意味です
| フィールドカテゴリ | フィールド名 | フィールド説明 | 可能な値 | スコアリングルール |
|---------|---------|---------|---------|---------|
| セキュリティスコア | レピュテーション(Reputation) | セキュリティコミュニティにおけるIPアドレスの評判スコア | 0-100の数値 | 高いほど良い |
| | トラストスコア(Trust Score) | IPアドレスの信頼度スコア | 0-100の数値 | 高いほど良い |
| | VPNスコア(VPN Score) | IPがVPNとして識別される可能性のスコア | 0-100の数値 | 低いほど良い |
| | プロキシスコア(Proxy Score) | IPがプロキシとして識別される可能性のスコア | 0-100の数値 | 低いほど良い |
| | コミュニティ投票-無害 | コミュニティメンバーがこのIPを無害と投票したスコア | 非負整数 | 高いほど良い |
| | コミュニティ投票-悪意 | コミュニティメンバーがこのIPを悪意があると投票したスコア | 非負整数 | 低いほど良い |
| | 脅威スコア(Threat Score) | IPアドレスの全体的な脅威レベルスコア | 0-100の数値 | 低いほど良い |
| | 詐欺スコア(Fraud Score) | IPアドレスが詐欺行為に関与する可能性のスコア | 0-100の数値 | 低いほど良い |
| | 不正使用スコア(Abuse Score) | IPアドレスの不正使用行為が報告されたスコア | 0-100の数値 | 低いほど良い |
| | ASN不正使用スコア | このIPが属するASN(自律システム)の不正使用スコア | 0-1の小数リスクレベル表記付き(Low/Medium/High)の場合あり | 低いほど良い |
| | 企業不正使用スコア | このIPが属する企業の不正使用スコア | 0-1の小数リスクレベル表記付き(Low/Medium/High)の場合あり | 低いほど良い |
| | 脅威レベル(Threat Level) | IPアドレスの脅威レベル分類 | low/medium/high/criticalなどのテキスト記述 | lowが最良 |
| ブラックリスト記録 | 無害記録数(Harmless) | 各ブラックリストデータベースで無害とマークされた回数 | 非負整数 | 数値自体に良し悪しなし |
| | 悪意記録数(Malicious) | 各ブラックリストデータベースで悪意があるとマークされた回数 | 非負整数 | 低いほど良い |
| | 疑わしい記録数(Suspicious) | 各ブラックリストデータベースで疑わしいとマークされた回数 | 非負整数 | 低いほど良い |
| | 未検出数(Undetected) | 各ブラックリストデータベースで記録がない回数 | 非負整数 | 数値自体に良し悪しなし |
| | DNSブラックリスト-総チェック数 | チェックしたDNSブラックリストデータベースの総数 | 正整数 | 数値自体に良し悪しなし |
| | DNSブラックリスト-クリーン | DNSブラックリストでクリーン(未掲載)として表示された数 | 非負整数 | 高いほど良い |
| | DNSブラックリスト-掲載済み | DNSブラックリストに既に掲載されている数 | 非負整数 | 低いほど良い |
| | DNSブラックリスト-その他 | DNSブラックリストチェックで他のステータスを返した数 | 非負整数 | 数値自体に良し悪しなし |
一般的に以下の使用タイプ会社タイプそしてセキュリティ情報の判別で十分です上記のセキュリティスコアは複数のデータベースで一致が確認された場合のみ信頼できるため見なくても特に問題ありません。(IDC: サーバーを購入する際一般的にこの識別されることが多いデータセンターのサーバールームでブロードキャストに使用される通常のタイプである)
| 使用タイプ | 説明 |
| ----------- | ---------- |
| hosting | ホスト/サーバー用途(IDC) |
| residential | 家庭/住宅ネットワーク(家庭用回線) |
| FixedLineISPISP | 固定回線インターネットサービスプロバイダー(家庭用回線) |
| business | 企業オフィスネットワーク(ビジネス回線) |
| cellular | モバイル通信事業者ネットワーク(家庭用回線) |
| education | 教育機関ネットワーク(教育ネットワーク) |
| government | 政府機関ネットワーク(政府ネットワーク) |
| military | 軍事ネットワーク(政府ネットワーク) |
| DataCenter | データセンターネットワーク(IDC) |
| WebHosting | Webホスティングサービス(IDC) |
| Transit | インターネット中継/転送ネットワーク(IDC) |
| CDN | コンテンツ配信ネットワーク(IDC) |
| 会社タイプ | 説明 |
| ------------ | ------------ |
| business | 企業会社(ビジネス回線) |
| hosting | ホスト/データセンター会社(IDC) |
| FixedLineISPISP | 固定回線インターネットサービスプロバイダー(家庭用回線) |
| education | 教育機関(教育ネットワーク) |
| government | 政府機関(政府ネットワーク) |
その他のセキュリティ情報フィールド:
| フィールドカテゴリ | フィールド名 | フィールド説明 | 可能な値 | 評価ルール |
|---------|---------|---------|---------|---------|
| クラウドプロバイダー | クラウドプロバイダーかどうか(Cloud Provider) | このIPがクラウドサービスプロバイダーに属しているか | Yes/No | 良し悪しはなく識別のみ |
| データセンター | データセンターかどうか(Data Center) | このIPがデータセンターに位置しているか | Yes/No | アンブロックを重視する場合はNoが最適 |
| モバイルデバイス | モバイルデバイスかどうか(Mobile) | このIPがモバイルデバイスネットワークからのものか | Yes/No | アンブロックを重視する場合はYesが最適 |
| プロキシ | プロキシかどうか(Proxy) | このIPがプロキシサーバーか | Yes/No | Noが望ましい |
| VPN | VPNかどうか | このIPがVPNサービスードか | Yes/No | Noが望ましい |
| Tor出口 | TorExitかどうか(Tor Exit Node) | このIPがTorネットワークの出口ードか | Yes/No | Noが望ましい |
| Webクローラー | Webクローラーかどうか(Crawler) | このIPがWebクローラーとして識別されているか | Yes/No | Noが望ましい |
| 匿名 | 匿名かどうか(Anonymous) | このIPが匿名サービス(VPN/Proxy/Torなど)を提供しているか | Yes/No | Noが望ましい |
| 攻撃者 | 攻撃者かどうか(Attacker) | このIPが攻撃元(DDOSなど)として識別されているか | Yes/No | Noが望ましい |
| 悪用者 | 悪用者かどうか(Abuser) | このIPに能動的な悪用行為の記録があるか | Yes/No | Noが望ましい |
| 脅威 | 脅威かどうか(Threat) | このIPが脅威元としてマークされているか | Yes/No | Noが望ましい |
| 中継 | 中継かどうか(Relay) | このIPが中継ードか | Yes/No | Noが望ましい |
| Bogon | Bogonかどうか(Bogon IP) | このIPが偽造/未割り当てのIPアドレスか | Yes/No | Noが望ましい |
| ボット | ボットかどうか(Bot) | このIPがボットトラフィックとして識別されているか | Yes/No | Noが望ましい |
| 検索エンジン | Google検索の実行可能性 | このIPでGoogle検索サービスが正常に使用できるか | YES/NO | YESが正常 |
マルチプラットフォーム比較の方が信頼性が高い異なるデータベースはアルゴリズムと更新頻度が異なるため単一のソースには誤判定が存在する可能性がある複数のデータベースが類似した結果を示す場合その結果はより信頼性が高いことを示している
AbuserまたはAbuseスコアはマシンの正常な使用に直接影響する
Abuse記録が存在しスコアが高い場合そのIPが過去に以下の行為に関与していた可能性があることを示している:
- DDoS攻撃に使用された
- 大規模なフラッド攻撃を開始した
- ポートスキャンまたはネットワーク全体のスキャンを実施した
このような履歴記録は報告されAbuseデータベースに登録される引き継いだIPが他人によって悪用されたばかりの場合遅延したAbuse警告メールがサービスプロバイダに送信される可能性があるサービスプロバイダはあなた本人が悪意のある行為を行っていると誤判定しマシンを解約する可能性がありほとんどの場合返金は行われない国境を越えたストリーミングサービスの場合AbuseスコアはそのIPに対するプラットフォームの信頼評価にも影響を与える可能性がある
ストリーミング解除要件のために住宅ブロードバンドが必要なユーザー(Eコマース需要など)、「使用タイプ会社タイプの両方がISPとして識別されているかどうかに注意を払う必要がある単一ISPのみまたは非ISPとして識別されている場合その後のデータベース更新後IPタイプがHostingに修正される可能性が高く解除効果に影響を与える
ほとんどのIP識別データベースは月次で更新される更新後IP属性が変更されISP Hostingという状況が発生する可能性がある特定の国のストリーミングサービス(NetflixやSpotifyなど)異なる国を区別して扱うストリーミングサービス(TikTokなど)など一部の敏感なプラットフォームでは非住宅での解除の可能性は低いが不可能ではない安定した解除が必要でその特別な機能解除を追求する場合にのみ住宅ブロードバンドストリーミング解除を追求する必要がある単にブラウジングや視聴するだけであれば多くの場合住宅ブロードバンドを追求する必要はない
IPタイプの分類について詳しく説明する必要がある
住宅ブロードバンドIP
- 帰属地と放送地が一致し放送主体は地元の通信事業者のAS
- 国際帯域回線を通じて放送される必要があり住宅ブロードバンド属性として認識される
ネイティブIP
- 帰属地と保有者が一致しているが放送主体は地元の通信事業者ではない
- データセンターが独自のAS番号を使用して放送することが一般的住宅ブロードバンドIPを取得しても一定期間後に属性はネイティブに変更される
放送IP
- 場所AのASからIPを場所Bに放送して使用
- 放送の伝播には時間がかかり通常1週間から1ヶ月
- 主要な通信事業者の帰属地データベースの更新には1ヶ月から数ヶ月かかる場合がある
- 地元のマシンルームが放送を行う場合住宅ブロードバンドIPはネイティブまたは放送属性に修正される可能性がある
ここまで述べたので真の住宅ブロードバンドである場合ターゲットサイトにアクセスする際必ず日本に迂回してからターゲットサイトに到達することはないことを明記する必要がある真の海外家庭用ブロードバンドは必ず近隣で出国し近隣で着地する
### メールポート検出

2
go.mod
View File

@@ -16,7 +16,7 @@ require (
github.com/oneclickvirt/nt3 v0.0.8-20250811123903
github.com/oneclickvirt/pingtest v0.0.8-20250728015259
github.com/oneclickvirt/portchecker v0.0.3-20250728015900
github.com/oneclickvirt/security v0.0.6-20250823030124
github.com/oneclickvirt/security v0.0.6-20251028123803
github.com/oneclickvirt/speedtest v0.0.10-20250728015734
)

4
go.sum
View File

@@ -124,8 +124,8 @@ github.com/oneclickvirt/pingtest v0.0.8-20250728015259 h1:egoxZRZBOWN3JqBwqEsULD
github.com/oneclickvirt/pingtest v0.0.8-20250728015259/go.mod h1:gxwsxxwitNQiGq2OI0ZogYoOLwc8DtuOdSRe6/EvRqs=
github.com/oneclickvirt/portchecker v0.0.3-20250728015900 h1:AomzdppSOFB70AJESQhlp0IPbsHTTJGimAWDk2TzCWM=
github.com/oneclickvirt/portchecker v0.0.3-20250728015900/go.mod h1:9sjMDPCd4Z40wkYB0S9gQPGH8YPtnNE1ZJthVIuHUzA=
github.com/oneclickvirt/security v0.0.6-20250823030124 h1:3RjpJNfKV7anN6GJs0ky2BfXFHPUVrDxUomEqoB0x7I=
github.com/oneclickvirt/security v0.0.6-20250823030124/go.mod h1:RSMooIlb4H/kLrGWNvUyOgdzQKgYKVv+LzWGlsPsLW4=
github.com/oneclickvirt/security v0.0.6-20251028123803 h1:iOjLqpyzOR2QDrA7ei00upv1uWGEbf1dH4mRa2xlWIg=
github.com/oneclickvirt/security v0.0.6-20251028123803/go.mod h1:RSMooIlb4H/kLrGWNvUyOgdzQKgYKVv+LzWGlsPsLW4=
github.com/oneclickvirt/speedtest v0.0.10-20250728015734 h1:HKO7/JQ74ueXA8Wo8NIvcK9DphbEG/YTfAAVz/akSiY=
github.com/oneclickvirt/speedtest v0.0.10-20250728015734/go.mod h1:0W8vnMbA3iucXLXFdGfe9Ia6RPS0izRO7jvu/SnH1P8=
github.com/oneclickvirt/stream v0.0.2-20250924154001 h1:GuJWdiPkoK84+y/+oHKr2Ghl3c/MzS9Z5m1nM+lMmy4=

View File

@@ -39,7 +39,7 @@ import (
)
var (
ecsVersion = "v0.1.89"
ecsVersion = "v0.1.90"
menuMode bool
onlyChinaTest bool
input, choice string

View File

@@ -1,6 +1,6 @@
#!/bin/sh
# From https://github.com/oneclickvirt/ecs
# 2025.08.26
# 2025.10.08
# curl -L https://raw.githubusercontent.com/oneclickvirt/ecs/master/goecs.sh -o goecs.sh && chmod +x goecs.sh
# 或
@@ -152,7 +152,7 @@ goecs_check() {
os=$(uname -s 2>/dev/null || echo "Unknown")
arch=$(uname -m 2>/dev/null || echo "Unknown")
check_china
ECS_VERSION="0.1.88"
ECS_VERSION="0.1.89"
for api in \
"https://api.github.com/repos/oneclickvirt/ecs/releases/latest" \
"https://githubapi.spiritlhl.workers.dev/repos/oneclickvirt/ecs/releases/latest" \
@@ -164,8 +164,8 @@ goecs_check() {
sleep 1
done
if [ -z "$ECS_VERSION" ]; then
_yellow "Unable to get version info, using default version 0.1.88"
ECS_VERSION="0.1.88"
_yellow "Unable to get version info, using default version 0.1.89"
ECS_VERSION="0.1.89"
fi
version_output=""
for cmd_path in "goecs" "./goecs" "/usr/bin/goecs" "/usr/local/bin/goecs"; do
@@ -404,6 +404,15 @@ InstallSysbench() {
}
env_check() {
# 检测是否为 macOS 系统
if [ "$(uname -s)" = "Darwin" ]; then
_green "Detected macOS system"
_green "macOS has built-in tools, skipping dependency installation"
_green "Environment preparation complete."
_green "Next command is: ./goecs.sh install"
return 0
fi
if [ -f /etc/opencloudos-release ]; then
SYS="opencloudos"
elif [ -s /etc/os-release ]; then
@@ -583,16 +592,9 @@ env_check() {
_green "Installing ping"
${INSTALL_CMD} iputils-ping >/dev/null 2>&1 || ${INSTALL_CMD} ping >/dev/null 2>&1
fi
if [ "$(uname -s)" = "Darwin" ]; then
echo "Detected MacOS, installing sysbench iproute2mac..."
if command -v brew >/dev/null 2>&1; then
brew install --force sysbench iproute2mac
fi
else
if ! grep -q "^net.ipv4.ping_group_range = 0 2147483647$" /etc/sysctl.conf 2>/dev/null; then
echo "net.ipv4.ping_group_range = 0 2147483647" >> /etc/sysctl.conf 2>/dev/null
sysctl -p >/dev/null 2>&1
fi
if ! grep -q "^net.ipv4.ping_group_range = 0 2147483647$" /etc/sysctl.conf 2>/dev/null; then
echo "net.ipv4.ping_group_range = 0 2147483647" >> /etc/sysctl.conf 2>/dev/null
sysctl -p >/dev/null 2>&1
fi
_green "Environment preparation complete."
_green "Next command is: ./goecs.sh install"
@@ -609,6 +611,7 @@ show_help() {
可用命令:
./goecs.sh env 检查并安装依赖包
注意: macOS系统会自动跳过依赖安装
警告: 此命令会执行系统更新(可选择),可能:
1. 耗时较长
2. 导致网络短暂中断
@@ -636,6 +639,7 @@ show_help() {
Available commands:
./goecs.sh env Check and Install dependencies
Note: macOS systems will skip dependency installation
Warning: This command performs system update(optional), which may:
1. Take considerable time
2. Cause temporary network interruptions