最近在公司遇到一个非常糟心的事,电脑开着代理一段时间之后会没网,最开始一直不知道原因, 连网线和WiFi都一样, 开始连接没什么问题, 过一段时间之后就开始连不上代理, 浏览器搜索就报错:
你尚未连接
代理服务器可能有问题,或地址不正确。
ERR_PROXY_CONNECTION_FAILED
奇怪的是,
- 我在家里面就不存在这个问题
- 在公司不开代理, 网络基本正常
- 在公司开代理, 过一会就断了,报上面的错,codex啥的经常断连
- 每次断了, 我切换到公司另一个WiFi, 又能好一段时间
- 过一会又坏了, 我就又得切WiFi
我要气死了, 一直以为是公司网的问题, 真的怒了, 困扰了我两周了这个问题, 尝试了各种办法都解决不了, 甚至试过连手机热点, 也无济于事
后来经过不断排查找日志以及让codex帮忙, 最终发现 真正的罪魁祸首是 思源笔记的后台进程 SiYuan-Kernel.exe 大量占用 TCP 连接,导致 Windows 短端口耗尽,最终让浏览器连本机代理失败
现象
浏览器报错是:
ERR_PROXY_CONNECTION_FAILED
最开始,确认是不是公司WiFi断网
测试公司WiFi网关和公网 IP:
Pinging 192.168.2.1 with 32 bytes of data:
Packets: Sent = 20, Received = 20, Lost = 0 (0% loss)
Minimum = 1ms, Maximum = 3ms, Average = 1ms
公网 DNS 测试也正常:
Pinging 223.5.5.5 with 32 bytes of data:
Packets: Sent = 20, Received = 20, Lost = 0 (0% loss)
Minimum = 21ms, Maximum = 37ms, Average = 23ms
这说明公司WiFi本身并不是完全断网
但代理偶发失败:
proxy 6: 000/0.006336/Failed to connect to www.baidu.com port 443 via 127.0.0.1 after 6 ms: Could not connect to server
失败的不是远程代理服务器,而是本机代理链路
之后叫codex帮我看一下日志(我不知道在哪看)
关键的日志来自 Windows Tcpip 事件
系统日志里出现多次 TCP/IP 端口耗尽警告:
2026/7/6 8:49:28 Tcpip 4231
有关从全局 TCP 端口空间分配一个短端口号的请求失败,因为所有此类端口都在使用中
还有:
2026/7/6 9:03:32 Tcpip 4227
TCP/IP 无法建立传出连接,因为选定的本地终结点最近用于连接到相同的远程终结点
当以高速率打开和关闭传出连接时,会导致所有可用的本地端口被使用
以及 UDP 端口耗尽:
2026/7/6 14:31:42 Tcpip 4266
有关从全局 UDP 端口空间分配一个短端口号的请求失败,因为所有此类端口都在使用中
这基本解释了为什么 Chrome 会连不上 127.0.0.1:7890
因为连接本机代理也需要分配本地临时端口
如果 Windows 临时端口池被耗尽,即使目标是 127.0.0.1,也可能失败
然后查看一下端口动态范围
执行:
netsh int ipv4 show dynamicport tcp
netsh int ipv4 show dynamicport udp
结果:
Protocol tcp Dynamic Port Range
---------------------------------
Start Port : 1024
Number of Ports : 13977
Protocol udp Dynamic Port Range
---------------------------------
Start Port : 49152
Number of Ports : 16384
TCP 动态端口范围是:
1024 - 15000
总共只有 13977 个端口
正常 Windows 默认 TCP 动态端口范围通常是从 49152 开始,数量 16384
我这台机器的 TCP 动态端口范围明显被改过,端口池偏小
为啥被改了我也不知道, 我对这东西没有啥研究
找到占用连接最多的进程
到这一步差不多知道是什么原因了, 其实也不太知道, 但是codex分析着就是因为被占用了, 于是乎找他要了个命令, 查看占用端口最多的进程
统计 TCP 连接数:
$rows = netstat -ano -p tcp | Select-String '^\s*TCP' | ForEach-Object {
$parts = ($_ -split '\s+') | Where-Object { $_ }
if ($parts.Count -ge 5) {
[pscustomobject]@{
Local = $parts[1]
Remote = $parts[2]
State = $parts[3]
PID = $parts[-1]
}
}
}
$rows |
Group-Object PID |
Sort-Object Count -Descending |
Select-Object -First 20
结果非常夸张:
PID Count Process
----- ----- ----------------
21320 13874 SiYuan-Kernel
也就是说,SiYuan-Kernel.exe 一度占用了 13874 条 TCP 连接。
而当前 TCP 动态端口池总共才 13977 个
这几乎就是把端口池吃满了
节选:
192.168.2.181:4176 101.132.62.140:443 ESTABLISHED 21320
192.168.2.181:4177 101.132.62.140:443 ESTABLISHED 21320
192.168.2.181:4178 101.132.62.140:443 ESTABLISHED 21320
192.168.2.181:4179 101.132.62.140:443 ESTABLISHED 21320
192.168.2.181:4180 101.132.62.140:443 ESTABLISHED 21320
...
192.168.2.181:10991 101.132.62.140:443 ESTABLISHED 21320
192.168.2.181:10992 101.132.62.140:443 ESTABLISHED 21320
192.168.2.181:10993 101.132.62.140:443 ESTABLISHED 21320
后面发现原因, 101.132.62.140这个东西指向的好像是硅基流动的ip, 思源笔记新上一个功能我配置了个嵌入模型, 结果地址写错了导致的应该是
为什么切WiFi会临时恢复?
问codex, 他给的解释是这样的

为什么家里没事?
想了一下确实有迹可循, 给我自己都气笑了, 因为想让自己养成勤看笔记勤记笔记的习惯, 思源笔记设置成了开机自启动, 但是在家里的时候,因为要打游戏, 所以会把没用的后台清掉, 所以一会家就会把思源笔记关掉 😅
这次由思源笔记引发的血案就结束了, 刚刚给思源笔记更新之后也没遇到过这个问题了 , 困扰了我两周的问题就至此结束了
话说站里可以AICG吗?
我想快点升二级啊啊啊啊啊
我也在用siyuan,为什么siyuan会有这么多tcp连接
这种问题,曾经在好多个软件上看到过
@自动驾驶的龙珠 #3
我现在的怀疑这样的,
他的新版本有一个功能,可以添加嵌入模型进行索引, 我添加的时候没注意路径把硅基流动嵌入模型的完整路径写上去了, 导致他一直失败,
目前怀疑是这个原因导致的, 昨天更新了一下, 然后把路径重新写了一下 就没这个问题了
@EthanArcher #4
第一次踩这个坑, 困扰了我两周, 怀疑过公司的网 怀疑过自己的电脑 就是没怀疑过思源笔记
原来我回复自己也是有鸡腿的吗
这样会不会挨举报啊 违规吗
竟然还有这样的坑,属实有点意想不到了……现在感觉很多软件都不是很稳定,可能因为都在 Vibe Coding,哈哈,当然以前就算不是 AI 写也是有这么多 bug
感谢分享,以后遇到同样的症状我就有方向去排查了
这个算bug吗,报告一下作者呢