# python-ngrok **Repository Path**: guyueCW/python-ngrok ## Basic Information - **Project Name**: python-ngrok - **Description**: Python 实现的反向代理服务 Ngrok客户端 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2022-04-29 - **Last Updated**: 2022-04-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # python-ngrok 基本上已经完善!并且24*7小时长时间工作,在期间我们多次尝试断网重连、渠道反复注册等,均无任何问题。 采用多线程异步处理,并发性能相当强悍! # 运行环境 Python 2.7.9 或 Python 3.4.2 以上 # 运行方法 直接运行即可. # 温馨提示 如果有小伙伴不想依赖环境运行,不妨可以试下PyInstaller,把py编译成可执行文件。 注:随着IPv6加速普及,各大移动终端及宽带、网站、应用不断加速支持IPv6,本项目现已跟进IPv4/IPv6双栈支持。 ## 更新日记 v1.56(2021/04/25) *** 1.本地数据分块转发 2.支持单线程异步协程[`python-ngrok_gevent.py`](https://github.com/hauntek/python-ngrok/blob/master/python-ngrok_gevent.py) - 需安装gevent库, 命令: `python -m pip install gevent` *** ## 更新日记 v1.52(2019/07/27) *** 1.添加IPv4/IPv6双栈服务连接及本地转发协议支持 - 支持数字格式地址及双栈域名地址解析,可分别设置服务连接及本地转发协议 - 域名双栈解析优先: IPv6 > IPv4 - 双栈协议参数说明: `[dualstack]` or `[dualstack_or]` - 服务连接协议参数: dualstack `[IPv4/IPv6=双栈, IPv4=IPv4, IPv6=IPv6]` - 本地转发协议参数: dualstack_or `[0=双栈, 1=IPv4, 2=IPv6]` 2.删除旧版不支持的域名解析函数及旧版查询隧道信息函数 *** ## 更新日记 v1.5(2018/09/19) *** 1.修复部分情况导致查询隧道信息出错 *** ## 更新日记 v1.46(2017/05/04) *** 1.支持配置文件运行,优先读取配置信息 - 运行命令: `./python-ngrok.py ngrok.config` 2.感谢lightclaves 贡献配置文件代码 *** ## 更新日记 v1.42(2017/03/15) *** 1.修复接收字节序过短,导致的异常事件 2.优化部分处理器的大小端字节对齐 *** ## 更新日记 v1.41(2017/03/04) *** 1.修复部分情况导致丢包,数据不完整问题 *** ## 更新日记 v1.38(2016/09/01) *** 1.添加子线程跟随主线程结束而结束 2.添加程序退出时发送客户退出消息 3.添加捕获键盘中断异常事件 4.更改断线后重新赋值心跳变量 *** ## 更新日记 v1.36(2016/08/29) *** 1.添加日记输出模块,调试输出格式化 2.修复本地映射地址无效转向定制的html页面 3.修复关闭上个线程读写,判断描述符是否有效 4.更改发送心跳周期 5.修复断线后重新赋值心跳变量 *** ## 更新日记 v1.32(2016/08/13) *** 1.修复关闭上个线程读写,某些极端情况出错 2.修复组包/拆包在其他版本字节流长度不一致 *** ## 更新日记 v1.31(2016/08/11) *** 1.修复本地转发完后,关闭上个线程读写 *** ## 更新日记 v1.3(2016/08/10) *** 1.修复可写事件,某些极端情况发送数据出错 2.修复处于被注册的期间,断网导致发送心跳出错 *** ## 更新日记 v1.2(2016/08/10) *** 1.转多线程异步处理,大幅提升即时并发性能 2.修复主线程cpu占用过高 3.修复堵塞和非堵塞发送 4.修复读写I/O判断 5.修复输出日记排序 6.优化断线重连机制 7.修复断线后变量无法赋值 8.修复本地转发完后导致远程挂起 9.添加本地映射地址无效转向定制的html页面 ***