# FastestHost **Repository Path**: lchfj/fastest-host ## Basic Information - **Project Name**: FastestHost - **Description**: 通过修改 hosts 文件,自动切换网站访问最快IP的工具,联网模式下可用于 GitHub host 加速访问 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: https://lchfj.cn/fastesthost - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 2 - **Created**: 2023-11-19 - **Last Updated**: 2025-03-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: IP, GitHub, hosts, steam, dns ## README # Fastest Host Copyright (C) 2023 [lchfj.cn](https://www.lchfj.cn/) `FastestHost` is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. `FastestHost` is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with `FastestHost`. If not, see . ## 介绍 这是一个通过修改 hosts 文件,自动切换网站访问最快IP的工具。 最初是为了可以访问 Github,但可以拿到的 hosts 文件中的 IP 却不能确保一定可用,所以写了个工具用于测试这些 IP,并选择一个最快的来访问使用。 现行版本可以通过共享域名IP的方式来获取更多的结果进行测试使用,因为能获取到的IP地址数量是与使用本应用人数相关,所以开始阶段效果可能不是很理想,也希望大家帮忙进行推广。获取效果主要是与使用人员的地域范围和网络运营商数量相关,同一地域和网络环境下使用的人数反而不是很重要。 ## 模式说明 ### 1、联网运行 目前支持的配置有 Github、Steam; 联网模式通过与其他用户共享本机解析的IP地址来获取更多的IP地址来使用,所以会将本地解析的IP地址和测试结果发送到服务器中共享使用,如果介意可使用单机运行。 ### 2、单机运行 单机运行下仅使用DNS解析来获取IP地址,需要指定一个域名列表文件来获取要测试的域名,域名列表文件为文本文档,一行一个域名。 单机运行下,任何数据都不向服务器发送。但为了测试指定IP的连通性,也是会进行网络访问。 ## 主要运行流程 1、根据选择的运行模式,从网路或本机文件中加载要进行检测的域名。 2、对所有域名通过DNS进行解析,获取所有可以使用的IP地址。如果是联网运行,则会与联网获取的解析结果进行合并 3、对所有域名与IP进行测试(尝试对该域名发起多个 HTTPS 的 GET 请求) 4、如果为联网运行,则将测试结果发送到服务中 5、修改本机 hosts 文件。如果有测试通过的IP,则选取最快响应的进行修改;如没有通过测试的IP,则删除该条 HOSTS。 ## 问题处理 如有问题,可在 ```issues``` 中进行反馈。 如果希望增加联网可使用的配置,请提供配置对应的域名列表。 ## 特别说明 1、本应用由.net8.0 进行开发,并编译成 AOT 模式运行,本身应该不需要运行库支持。如提示需要,可前往[https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0](https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0) 下载 2、UAC弹框,因为需要修改系统hosts文件,必须提升权限才可进行。 ## 关于开源 客户端开源(不包括连接服务端的具体地址),服务端不开源。