【音樂】Enya - May It Be

原視頻《Poker Face》 由 北美carl 發過了
3
分享 2020-05-10

2 个评论

霏艺Faye 图书管理员
https://pincong.rocks/video/1892
这个帖子 讲解了 rust编程  实现 用户态的 Linux mac ios Android 下的wireguard

我在这里讲解下windows下怎么办。。。
参考开源项目
https://github.com/songgao/water

其他系统,就不累述了
直接看 windows
https://github.com/songgao/water/blob/master/syscalls_windows.go
重点是 openDev 这个函数,
config.PlatformSpecificParams.ComponentID
config.PlatformSpecificParams.InterfaceName
在 https://github.com/songgao/water/blob/master/params_windows.go 
有需要的自己修改

syscall.CreateFile 相当于 你打开了这个虚拟网卡。。。

可以自己阅读理解,反正就是注册表操作了

懒的同学,可以不读,直接照抄。。。




自己写VPN,其实真的不难。。。

通过刚才的操作就可以建立虚拟网卡。。。
再像普通的文件读写一样操作这个虚拟网卡
1.从虚拟网卡读取数据
2.封装数据以后,用物理网卡发送
3.从物理网卡接收网络数据
4.解封装以后,回写到虚拟网卡

这里,当然可以把数据写到tor发送
也可以写到v2ray发送
也可以写到shadowsocks发送
也可以自己写协议

就像wireguard自己定了一个协议。。。

要发言请先登录注册

要发言请先登录注册