博文

目前显示的是标签为“排错”的博文

用darkstat统计VPS上的流量

图片
感谢 https://0x3f.org/posts/darkstat-as-a-network-discharge-meter/ https://ilovn.com/2023/03/25/darkstat/ 安装 apt install -y darkstat 启用 darkstat -i 监听网卡 -p 网页端的端口号 如 darkstat -i eth0 -p 8964 页面端查看 http:// 你的vps的IP : 网页端的端口号 如 http:// 12.34.56.78 : 8964 效果类似下面这样 点 host 可以看到数字表格的统计信息. 点其中一条 可以看到更详细的信息. 能看到在本VPS上, 还有指定IP上, 分别用到了什么端口(包括TCP UDP), 以及分别跑了多少流量. 如果你有有更好的工具, 欢迎留言分享!

用浏览器 检测Reality伪装效果 是否搭建成功 排错Troubleshoot

图片
Reality的原理: 当 Reality 节点收到数据包的时候, 如果 Reality 协议的验证通过, 就走节点的翻墙逻辑; 如果 Reality 协议的验证不通过, 就把数据包转发到伪装站. 后续的整个交互过程就像是在和伪装站交互一样. 我们可以简单地用浏览器验证 Reality 伪装效果. 也相当于检测 从你自己到 Reality 节点之间的数据通路是否畅通. 以这样的一个 Reality 节点为例. IP  142.171.237.9 端口  18255 伪装站 learn.microsoft.com 在电脑的hosts文件中, 设置 learn.microsoft.com 解析的IP 为  142.171.237.9   然后在浏览器中, 访问 https://learn.microsoft.com: 18255 可以看到, TLS的锁是正常的. 验证证书, 也是正常的. 从你自己到Reality节点的数据路径是畅通的之后, 如果你的节点还不能用, 那么, 就应该检查你的Reality节点验证信息了 (UUID, 公钥) ======== update 如果是用了中转后的 Reality 节点 原 Reality 节点 IP  142.171.237.9 端口  18255 伪装站 learn.microsoft.com 中转 VPS  IP 142.171.223.56 端口 28828 那么, 在电脑的hosts文件中, 设置 learn.microsoft.com 解析的IP 为  142.171.223.56 然后在浏览器中, 访问 https://learn.microsoft.com: 28828 可以看到, TLS的锁是正常的. 验证证书, 也是正常的.

233 sing-box 脚本 TCP 端口转发 Reality 协议 排错 Troubleshoot

图片
233 boy 的 TCP 端口转发的教程 https://233boy.com/sing-box/sing-box-direct/ 下图中示意, 左边的 142.171.237.9 是被墙的VPS, 右边的 142.171.223.56 是用来做端口中转的VPS. 如果你照着教程操作一遍, 发现不能正常使用. 那么本文指导你如何排查问题所在. ======== 首先, 你要理解整个原理是什么. 左边的, 本来的reality协议节点, 底层是TCP直连, 那么是从你的 翻墙客户端(手机/电脑/...) 去连接  142.171.237.9  的 18255 端口. 现在被墙了, 那么无法直接TCP连接了. 右边的, 用于中转的VPS, 设置的 TCP端口中转 的本质是,  142.171.223.56  从端口 28828 收到的TCP数据, 会转发给  142.171.237.9  的 18255 端口.  所以, 你现在可以把本来准备发送给  142.171.237.9  的  18255  端口 的realiy数据包, 发送给  142.171.223.56  的  28828  端口; 142.171.223.56  从端口  28828  收到的TCP数据, 转发给  142.171.237.9  的  18255  端口. ======== 我们延着数据路径一段一段的排查. 1. 从我们的翻墙客户端(手机/电脑/...)连接中转VPS  142.171.223.56  的  28828  端口; a) 可以用 tcp.ping.pe 检测 142.171.223.56  的  28828  端口是否正常; b) 在你自己的电脑  tcping 检测 142.171.223.56  的  28828  端口是否可连接. 2. 在中转VPS上查 sing-box 的 access.log cat /var/log/sing...

在Linux上用socat进行网络环境测试 UDP端口

图片
前面介绍过怎么测试tcp端口, tcping https://zelikk.blogspot.com/2022/05/linux-socat-tcp-udp-ipv4-ipv6-localhost.html https://zelikk.blogspot.com/2024/09/socat-tcping.html 现在搭Hysteria2 HY2翻墙协议的越来越多, 那么我们怎么测试UDP端口是否正常工作呢? UPD 监听 还是用 socat socat -v UDP-LISTEN:端口号,fork PIPE socat -v UDP-LISTEN:4000,fork PIPE * 如果你的环境没有socat, 你需要安装一下 apt install -y socat 检测 网络在线检测 https://check-host.net/ 从另一个VPS Linux命令行检测 用到这个项目 https://github.com/wangyu-/UDPping 先下载测试脚本(python) wget -L https://github.com/wangyu-/UDPping/raw/refs/heads/master/udpping.py 执行方式为 python3 udpping.py IP地址 UDP端口 python3 udpping.py 134.195.211.170 4000 windows环境测试工具 https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/portqry-command-line-port-scanner-v2

在Linux上用socat进行网络环境测试 从外部测试TCP端口是否可用

图片
上一篇 里介绍了怎么在linux环境测试端口是否可用.  可以从 B linux VPS去测试 A linux VPS. 但是当我们使用常用的第三方测试 tcping.ping.pe, 或者从自己本地发起 tcping 测试 ( https://github.com/pouriyajamshidi/tcping ). 会遇到一个问题, socat 监听的端口只能连接一次. socat tcp4-listen:端口号 - 换句话说, tcping测试只有第一次连接成功, 然后linux端可以看到 socat 运行结束了, tcping也会看到后续测试都是失败的.

在自己的VPS上运行Trojan-go客户端 对接自己的服务端 排错 Troubleshoot

图片
有的时候你搭的梯子就是用不了,你不知道是梯子没搭好呢,还是你走到梯子中间的网络出了问题。 那就在你的VPS上跑一个Trojan-go的客户端,对接你的服务端来看一下。 具体实践 1. 下载Trojan-go的Linux客户端 * 最常见的系统环境应该是 linux-x64  比如,RackNerd, Cloudcone, Bandwagon, Hax, Woiden ... 访问  https://github.com/p4gefau1t/trojan-go/releases/latest 右键复制下载地址 下载  wget https://github.com/p4gefau1t/trojan-go/releases/download/v0.10.6/trojan-go-linux-amd64.zip 2. 解压Trojan-go的Linux客户端 用 unzip 解压 unzip trojan-go-linux-amd64.zip ls 看一下 你会看到和你在PC上使用时一样的几个文件 3. 设置Trojan-go的Linux客户端参数 和在你自己的环境下同样的用法,编辑config.json。注意Socks端口不要和你自己的VPS上已经使用的端口冲突了。下面以Socks的端口 10888 为例。 {   "run_type": "client",   "local_addr": "127.0.0.1",   "local_port": 10888 ,   "remote_addr": " trojan域名 ",   "remote_port": trojan端口 ,   "password": [" trojan密码 "] } 4. 运行Trojan-go的Linux客户端 ./trojan-go 这时,你的VPS上已经开了一个Socks代理了。 5. 使用你的这个Socks代理去访问网页 用到curl的-x参数指定代理  新开一个SSH窗口登录你的VPS。 然后执行 curl -x socks5://127.0.0.1: 10888  google.com 命令...

在自己的VPS上运行V2Ray客户端 对接自己的服务端 排错 Troubleshoot

图片
有的时候你搭的梯子就是用不了,你不知道是梯子没搭好呢,还是你走到梯子中间的路出了问题。 其实,对于WebSocket的V2Ray梯子,一般来说你只要用浏览器访问 https://你的域名/节点path 看能否得到400 Bad Request的结果就知道v2ray通不通。 在你的VPS上,可以用curl https://你的域名/节点path 来看结果。 实在不信邪,那就在你的VPS上跑一个V2Ray的客户端,对接你的服务端来看一下。 具体实践 1. 下载V2Ray的Linux客户端 * 最常见的系统环境应该是 linux-x64  比如,RackNerd, Cloudcone, Bandwagon, Hax, Woiden ... 访问 https://github.com/v2fly/v2ray-core/releases/tag/v4.45.2 右键复制下载地址 下载  wget -N https://github.com/v2fly/v2ray-core/releases/download/v4.45.2/v2ray-linux-64.zip 2. 解压V2Ray的Linux客户端 用 unzip 解压 unzip v2ray-linux-64.zip ls 一下,应该是这么几个文件 3. 设置V2Ray的Linux客户端参数 V2Ray的配置文件想要手写不是一件容易的事情,所以我这里推荐小白直接把自己本地翻墙客户端的config.json文件传上去。 如果你是用的v2rayN,那么config.json就在v2rayN.exe同目录下。 上传小文件的方法,对小白最友好的就是rz。 先安装一下 apt install -y lrzsz 然后执行rz命令 rz -y 如果你的SSH工具是Xshell等支持sz rz的,那么就会弹出来一个选择文件框,你选定你自己的config.json就好了。 这样把你自己本地的config.json传上去。 你可以看一下文件内容,注意一下Socks的端口,可能需要修改一下以免冲突。下面以Socks的端口 10811 为例。 4. 运行V2Ray的Linux客户端 ./v2ray 这时,你的VPS上已经开了一个Socks代理了。 5. 使用你的这个Socks代理去访问网页 用到curl的-x参数指定代...

在自己的VPS上运行NaiveProxy客户端 对接自己的服务端 排错 Troubleshoot

图片
有的时候你搭的梯子就是用不了,你不知道是梯子没搭好呢,还是你走到梯子中间的网络出了问题。 其实NaiveProxy,如果你的Caddyfile的格式是写的像官方要求的一样(或者你根本就是一键脚本搭出来的)那么你只要访问你的naive域名:端口 能显示伪装站,就说明搭好了。 在你的VPS上,可以用curl https://你的域名:端口 来看结果。 实在不信邪,那就在你的VPS上跑一个NaiveProxy的客户端,对接你的服务端来看一下。 具体实践 1. 下载NaiveProxy的Linux客户端 * 最常见的系统环境应该是 linux-x64 比如,RackNerd, Cloudcone, Bandwagon, Hax, Woiden ... 访问 https://github.com/klzgrad/naiveproxy/releases/latest 右键复制下载地址 下载  wget -N https://github.com/klzgrad/naiveproxy/releases/download/v108.0.5359.94-1/naiveproxy-v108.0.5359.94-1-linux-x64.tar.xz 2. 解压NaiveProxy的Linux客户端 用 tar -xf 解压 tar -xf naiveproxy-v108.0.5359.94-1-linux-x64.tar.xz ls 看一下会发现多了一个目录。cd进去,再ls 你会看到和你在PC上使用时一样的几个文件 3. 设置NaiveProxy的Linux客户端参数 和在你自己的环境下同样的用法,编辑config.json。注意Socks端口不要和你自己的VPS上已经使用的端口冲突了。下面以Socks的端口 10811 为例。 {   "listen": "socks://127.0.0.1: 10811 ",   "proxy": "https:// naive用户名 : naive密码 @ naive域名 : naive端口 ",   "log": "" } 4. 运行NaiveProxy的Linux客户端 ./naive 这时,你的VPS上已经开了一个Soc...

Cloudflare推荐的检测被墙和域名解析的工具站 comparitech.com dnschecker.org

图片
检测被墙 https://www.comparitech.com/privacy-security-tools/blockedinchina/ 检测域名解析 https://dnschecker.org/ 信息源: https://support.cloudflare.com/hc/en-us/articles/200169566-Troubleshooting-Cloudflare-domains-blocked-by-China

翻墙VPN梯子 VPS上的配置文件与节点参数的对应关系 及 VPS内部数据流向 Websocket + TLS 模式 Caddy前置 Caddy去除path

图片
有时候,一键脚本输出的vmess://或vless://链接不能导入翻墙客户端,或者导入后出现问题。有时候,在不同的翻墙客户端之间转移节点时使用链接或二维码出现不能转移或者转移后不能使用。 希望此文能帮肋你理解VPS上的配置文件与节点参数的对应关系,当使用链接或二维码出错时,可以手动填写节点参数。

使用 bash curl wget 一键脚本 报错Error 没反应 怎么办 Troubleshooting

图片
我们这种小白只会用一键脚本,经常是这样的使用形式: bash <(curl -好多参数 脚本的地址) 如果顺利当然最好,如果遇到问题,希望本文能帮到你。

在Linux上用socat进行网络环境测试 用lsof netstat ss检测TCP端口占用

图片
在搭梯子的过程中,有可能会遇到奇怪的事情。比如,搭在IPv6上面能成功,搭在IPv4上面就是不行。我们可以使用socat进行网络环境测试,用lsof netstat检测端口占用,排除梯子配置参数错了之类的影响。

如何正确提问 及 错误求助反面实例

图片
在Telegram群里解答问题,经常遇到提问者描述不清问题,而这些人往往并没有意识到自己描述问题的方式有问题。 遂记录一些实例如下。 理论指导 如何向开源社区提问题 https://github.com/seajs/seajs/issues/545 提問的智慧 https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way 如何有效地报告 Bug https://www.chiark.greenend.org.uk/~sgtatham/bugs-cn.html 如何向开源项目提交无法解答的问题 (此文内容是反讽) https://zhuanlan.zhihu.com/p/25795393 实例 A: 大佬,麻烦咨询一下,VPS有三个IP,搭建的V2ray节点,可以设置三个IP了,但是对外显示的就只有主IP 这个应该怎么解决一下 B: "对外显示的就只有主IP"具体指什么?截图说明一下。 A: 就是不管V2rayN客户端的IP设置怎么变化,查询IP都是主IP V2rayN客户端这里的IP我可以改成三个IP中的任意一个,查询本机IP的时候都是主IP [... 对话得以继续进行, 最终问题也得到了解决] ========================= A: 现在的问题是,我不需要域名的时候只在地址键入ip,同样是不能用的,这个ip在他那里可以ping通 B: 没听明白,请详细描述, 必要的话用截图辅助说明. 比如,你说的"地址"是什么地方? 浏览器的地址栏吗?  A: 这里 [... 对话得以继续进行, 最终问题也得到了解决] ========================= A: 请问一下,有什么邮箱是有主副账号的,并且副账号看不到发件人的地址的 B: 你是想说,副邮箱发出去的邮件别人看不到谁发的,还是说,副邮箱收的邮件看不到谁发的? A: 别人发来的邮件,其中的邮件地址副账号无法查看,可以看内容。 [... 对话得以继续进行, B向A提供了一个很有帮助的搜索的思路] ========================= A: 不确定,有个大佬教我vps必须要ipv6,可是我的移动电信都是过了都没有 B: 你想登录你的vps? 手机纯数据流量就有ipv6啊。访问 ...

连接 V2Ray Websocket + TLS 模式的过程 及 排错指引

图片
如果你的梯子以前能用,突然不能用,请看本篇排错教程。 如果你的梯子别人能用,就你不能用,请看本篇排错教程。 如果你的梯子一个设备能用(比如手机),但另一个设备不能用(比如电脑),请看本篇教程。

安装 V2Ray Websocket + TLS 模式 排错指引

图片
如果你是第一次搭梯子不成功,请看本篇排错教程。

iOS手机上的IPv6工具 iNetTools 可以免费使用

图片
Ping,Port Scan,支持IPv6。当然IPv4更加没问题。 记录常用服务器,记录最近的操作,方便使用。 Trace Route, DNS Lookup, Whois, Server Monitor, LAN Scan. 功能都可以免费使用,需要忍一下广告,有时候是全屏十几秒的那种广告。我看了一下自己的钱包,觉得能忍。