草庐IT

rust-obsolete

全部标签

用Rust手把手编写一个Proxy(代理), 动工

用Rust手把手编写一个Proxy(代理),动工项目++wmproxy++gitee传送门github传送门设计流程图flowchartLRA[客户端]-->|Http|B[代理端]-->C[代理服务端]-->D[服务端]B-->|直达|DA-->|Https|BA-->|Socks5|B代理端和代理服务端之间可用自有格式来实现多路复用以减少连接的建立断开的开销,目前暂未实现代理服务端。类结构proxy.rs负责代理结构的存储,监听类型,监听地址,是否有父级地址,认证账号密码等。flag.rs监听类型的二进制结构,可同时支持多结构比较http/https/socks5,如果解析http失败则尝

6. 用Rust手把手编写一个wmproxy(代理,内网穿透等), 通讯协议源码解读篇

用Rust手把手编写一个wmproxy(代理,内网穿透等),通讯协议源码解读篇项目++wmproxy++gite:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy事件模型的选取OS线程,简单的一个IO对应一个系统级别的线程,通常单进程创建的线程数是有限的,在线程与线程间同步数据会相当困难,线程间的调度争用会相当损耗效率,不适合IO密集的场景。事件驱动(Eventdriven),事件驱动基本上是最早的高并发的IO密集型的编程模式了,如C++的libevent,RUST的MIO,通过监听IO的可读可写从

7. 用Rust手把手编写一个wmproxy(代理,内网穿透等), HTTP及TCP内网穿透原理及运行篇

用Rust手把手编写一个wmproxy(代理,内网穿透等),HTTP及TCP内网穿透原理及运行篇项目++wmproxy++gite:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy内网、公网内网:也叫做局域网,通常指单一的网络环境。例如你家里的路由器网络、网吧、公司网络、学校网络。网络大小不定,内网中的主机可以互联互通,但是越出这个局域网访问,就无法访问该网络中的主机。公网:就是互联网,其实也可以看做一个扩大版的内网,比如叫城际网,省域网,国网。有单独的公网IP,任何其它地址可以访问网络的可以直接访

10. 用Rust手把手编写一个wmproxy(代理,内网穿透等), HTTP内网穿透支持修改头信息

用Rust手把手编写一个wmproxy(代理,内网穿透等),HTTP内网穿透支持修改头信息项目++wmproxy++gite:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy修改header参数但凡代理之类,基本上都有修改头参数的需求,就比如要获取客户端的真实IP,需要写入x-forward-for表示客户端的真实IP,要不然经过转发后的HTTP无法获取真实的客户端地址。所以需要在转发的同时能进行处理头部信息的相关参数。故内网端不能仅做流量转发。而且客户端可能直接以纯HTTP2的协议请求内网的数据,

12. 用Rust手把手编写一个wmproxy(代理,内网穿透等), TLS的双向认证信息及token验证

12.用Rust手把手编写一个wmproxy(代理,内网穿透等),TLS的双向认证信息及token验证项目++wmproxy++gite:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy什么是TLS双向认证TLS双向认证是指客户端和服务器端都需要验证对方的身份,也称mTLS。在建立Https连接的过程中,握手的流程比单向认证多了几步。单向认证的过程,客户端从服务器端下载服务器端公钥证书进行验证,然后建立安全通信通道。双向通信流程,客户端除了需要从服务器端下载服务器的公钥证书进行验证外,还需要把客户端

11. 用Rust手把手编写一个wmproxy(代理,内网穿透等), 实现健康检查

11.用Rust手把手编写一个wmproxy(代理,内网穿透等),实现健康检查项目++wmproxy++gite:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy健康检查的意义健康检查维持着系统的稳定运行,极大的加速着服务的响应时间,并保证服务器不会把消息包转发到不能响应的服务器上,从而使系统快速稳定的运转在LINUX系统中,系统默认TCP建立连接超时时间为127秒。通常网络不可达或者网络连接被拒绝或者网络连接超时需要耗时的时长较长。此时会超成服务器的响应时间变长很多,而且重复发起不可达的连接尝试也

微软开源 windows-drivers-rs,用 Rust 开发 Windows 驱动程序

MicrosoftAzure首席技术官兼著名Windows软件开发人员MarkRussinovich在社交平台上宣布,启动了一个名为windows-drivers-rs的新开源项目。该项目可帮助开发人员使用Rust开发Windows驱动程序,旨在支持WDM(WindowsDriverModel)和WDF(WindowsDriverFramework)驱动程序开发模型。当前版本的资源库主要由Rustcrates组成,具体包括:wdk-build:用于配置Cargo构建脚本以进行WDK的绑定生成和下游链接的库。虽然此crate的编写目的是灵活地适应不同的WDK版本和不同的WDF版本,但目前仅针对N

Rust编程语言入门之模式匹配

模式匹配模式模式是Rust中的一种特殊语法,用于匹配复杂和简单类型的结构将模式与匹配表达式和其他构造结合使用,可以更好地控制程序的控制流模式由以下元素(的一些组合)组成:字面值解构的数组、enum、struct和tuple变量通配符占位符想要使用模式,需要将其与某个值进行比较:如果模式匹配,就可以在代码中使用这个值的相应部分一、用到模式(匹配)的地方match的ArmmatchVALUE{PATTERN=>EXPRESSION,PATTERN=>EXPRESSION,PATTERN=>EXPRESSION,}match表达式的要求:详尽(包含所有的可能性)一个特殊的模式:_(下划线):它会匹配

微软开源 windows-drivers-rs,用 Rust 开发 Windows 驱动程序

导读MicrosoftAzure首席技术官兼著名Windows软件开发人员MarkRussinovich在社交平台上宣布,启动了一个名为windows-drivers-rs的新开源项目。该项目可帮助开发人员使用Rust开发Windows驱动程序,旨在支持WDM(WindowsDriverModel)和WDF(WindowsDriverFramework)驱动程序开发模型。当前版本的资源库主要由Rustcrates组成,具体包括:wdk-build:用于配置Cargo构建脚本以进行WDK的绑定生成和下游链接的库。虽然此crate的编写目的是灵活地适应不同的WDK版本和不同的WDF版本,但目前仅针

第1章 Rust安装

Rust是一门安全的语言,最近也加入到Linux内核中,因此后续这门语言会越来越流行,所以准备学习下,本篇介绍Rust在Window平台上的安装过程。目录安装步骤1.到官网下载安装包2.搭建VisualStudioCode开发环境安装步骤1.到官网下载安装包安装Rust-Rust程序设计语言下载来是一个10左右的在线安装器rustup-init.exe双击rustup-init运行安装器WelcometoRust!ThiswilldownloadandinstalltheofficialcompilerfortheRustprogramminglanguage,anditspackageman