本文档帮助您诊断和解决PyProxy使用中遇到的常见问题。
❌ [ERROR] 连接服务器失败: [Errno 11001] getaddrinfo failed
解决方案:
- 检查网络连接是否正常
- 确认服务器地址是否正确
- 检查DNS设置
- 尝试使用IP地址替代域名
❌ [ERROR] SSL错误: [SSL: CERTIFICATE_VERIFY_FAILED]
解决方案:
- 在配置文件中设置
verify_ssl: false - 检查系统时间是否正确
- 更新系统SSL证书
❌ [ERROR] Trojan认证失败
解决方案:
- 确认密码是否正确(区分大小写)
- 检查配置文件中的密码字段
- 联系服务器管理员确认账户状态
现象: 网页加载缓慢,下载速度不理想
解决方案:
- 检查网络环境和带宽
- 调整配置文件中的超时设置:
performance: read_timeout: 600 write_timeout: 60 buffer_size: 16384
- 尝试不同的服务器
- 检查本地网络状况
现象: 连接经常中断,需要重新连接
解决方案:
- 启用心跳监控:
heartbeat: enabled: true interval: 3 timeout: 5 max_failures: 2
- 检查网络稳定性
- 调整超时设置
❌ [ERROR] [Errno 10048] 通常每个套接字地址只允许使用一次
解决方案:
- 更改配置文件中的端口:
local: port: 1081 # 使用其他端口
- 检查并关闭占用端口的程序:
netstat -ano | findstr :1080 - 重启系统释放端口
❌ [ERROR] [Errno 13] Permission denied
解决方案:
- 以管理员身份运行程序
- 检查防火墙设置
- 确认有足够的系统权限
❌ ModuleNotFoundError: No module named 'yaml'
解决方案:
- 安装缺失的依赖:
pip install pyyaml requests colorama
- 运行设置脚本:
python scripts/setup.py
现象: 特定网站无法打开或加载失败
解决方案:
- 检查路由配置:
routing: direct_domains: - "*.example.com" # 添加到直连列表
- 清除DNS缓存:
ipconfig /flushdns
- 尝试手动指定代理或直连
现象: 国内网站访问慢,IP显示为代理IP
解决方案:
- 检查直连域名列表:
routing: direct_domains: - "*.baidu.com" - "*.qq.com" - "*.taobao.com"
- 重启代理程序使配置生效
python tests/comprehensive_test.py这个工具会自动诊断常见问题并提供解决建议。
在配置文件中设置:
log:
level: "DEBUG"
verbose_traffic: true
show_http_details: true# Windows
netstat -ano | findstr :1080
# Linux/Mac
netstat -tuln | grep :1080# 测试直连
curl "https://httpbin.org/ip"
# 测试代理
curl --socks5 127.0.0.1:1080 "https://httpbin.org/ip"在报告问题时,请提供以下信息:
-
系统信息
- 操作系统版本
- Python版本
- PyProxy版本
-
配置文件(隐藏敏感信息)
trojan: server: "***" port: 8888 password: "***"
-
错误日志 启用DEBUG模式并提供完整错误信息
-
网络环境
- 是否使用VPN
- 防火墙设置
- 网络类型(家庭/企业/公共)
# 运行诊断脚本
python tests/comprehensive_test.py > diagnosis.txt
# 查看日志
tail -f logs/pyproxy.log使用Wireshark等工具分析网络流量:
- 开始抓包
- 启动PyProxy
- 访问测试网站
- 分析SSL握手和数据传输
Windows防火墙:
- 控制面板 → 系统和安全 → Windows Defender防火墙
- 点击"允许应用通过防火墙"
- 添加Python.exe到允许列表
第三方防火墙:
- 将Python.exe添加到白名单
- 允许1080端口入站连接
测试代理链的每个环节:
- 本地SOCKS5代理 (127.0.0.1:1080)
- Trojan连接到服务器
- 服务器到目标网站
系统级优化:
- 增加TCP连接数限制
- 调整网络缓冲区大小
- 优化DNS设置
程序级优化:
performance:
connection_pool_size: 20
read_timeout: 300
write_timeout: 30
buffer_size: 16384- README.md - 基础使用指南
- configuration.md - 配置详细说明
- api.md - API参考文档
- GitHub Issues - 报告Bug和功能请求
- 社区论坛 - 用户交流和经验分享
- 官方文档 - 最新版本信息
- 阅读错误信息 - 仔细查看控制台输出
- 检查配置文件 - 确认所有设置正确
- 运行测试工具 - 使用内置诊断功能
- 查看日志文件 - 启用详细日志记录
- 搜索已知问题 - 查看文档和FAQ
- 创建最小复现 - 使用简单配置测试
### 问题描述
简要描述遇到的问题
### 复现步骤
1. 配置文件设置
2. 启动命令
3. 触发问题的操作
### 期望结果
描述期望的正常行为
### 实际结果
描述实际发生的情况
### 环境信息
- 操作系统: Windows 10
- Python版本: 3.9.0
- PyProxy版本: 1.1.0
### 日志信息
粘贴相关日志内容
### 已尝试的解决方案
列出已经尝试过的解决方法
- 每周运行一次综合测试
- 定期检查日志文件大小
- 监控系统资源使用情况
# 备份工作配置
cp configs/standard.yaml configs/backup_$(date +%Y%m%d).yaml- 关注PyProxy版本更新
- 定期更新Python和依赖包
- 检查服务器配置变化
- 记录平均延迟变化
- 监控连接成功率
- 观察内存和CPU使用
通过这些故障排除方法,您应该能够解决大部分常见问题。如果问题仍然存在,请参考其他文档或寻求社区帮助。