07
2025
05
10:03:51

内网穿透和组网高级玩法 - vnt进阶

随着我不断的摸索,今天又找到了一种比较有意思的玩法:不创建虚拟网卡完成组网

如果大家有其他更好玩的,欢迎在下方给我留言,我平常就喜欢玩一些新奇的东西。


无Root进阶组网

上一篇文章中有说到,要实现组网的话,得用到Root/管理员权限。而实际上我们有些机器是没有root/管理员权限的,或者有root但是出于安全考虑不想开放Root;对于这种情况,又该如何组网呢?

不用担心,VNT官方已经支持了这种没有权限不能创建虚拟网卡的场景。在我们下载的程序包解压后,会得到两个文件:

  • • vnt-cli : 这个是默认需要Root权限的,也会默认创建vnt-tun虚拟网卡的
  • • vn-link-cli:这个程序不需要Root,也不会创建虚拟网卡。今天咱们就用它来玩玩无Root组网

测试环境:

还是之前的测试环境,先列出来,对后续的启动配置好理解一些:

  • • 家里N100-Nas:OMV系统,IP 192.168.31.30,对应网段 192.168.31.0/24
  • • 家里J1900-Nas:飞牛FNOS,IP 192.168.31.20,对应网段 192.168.31.0/24
  • • 公司笔记本:IP 192.168.1.15,对应网段 192.168.1.0/24

家里N100-Nas启动

使用vn-link-cli启动的命令:

./vn-link-cli -k nas_shengji_waner -n omv-n100 -o 192.168.31.0/24
# 启动参数和之前一样,就不做过多解释了,有不懂的朋友,建议先看一下我上一篇笔记

启动后记住屏幕上打印的IP地址,比如我的是:ip=10.26.0.2,这个表示给Nas分配的组网IP,后面在Windows上要用到。


公司笔记本启动 : 点对点

使用vn-link-cli启动的命令:

.\vn-link-cli.exe -k nas_shengji_waner -n win11 --vnt-mapping "tcp:9091-10.26.0.2:9091"

关于命令行中的启动参数:--vnt-mapping "tcp:9091-10.26.0.2:9091"是我们完成无Root组网的关键。

我们将这个参数拆开来解释一下

  • • 先看最后面的10.26.0.2:9091, 这个IP表示我Nas的组网IP,9091是我在Nas上搭建的transmission服务端口
  • • 再看前面的9091,这个表示将Nas上的9091端口 映射到 我公司电脑上的 9091端口。这个映射端口我们也可以根据自己喜好修改
  • • 再看最前面的 tcp: 这里有有两个选择tcp/udp,但是咱们一般访问都是用的tcp,只有一些游戏的端口会用到udp

所以这个参数的意思就是:将我家里Nas上的transmission服务映射到公司电脑上的9091端口,那么当我访问 公司电脑的 9091端口时,就等价于访问家里的transmission服务。

实践出真知!

此时我在公司电脑上,浏览器打开:http://127.0.0.1:9091

图片

打开了我家里的transmission服务,操作也完全没问题,如同在家直接操作nas一样。

唯一要注意的就是,通过这种方式组网,必须使用 127.0.0.1这个IP来访问映射端口。


公司笔记本启动:点对网

点对网,是能指访问家里其他设备上的服务。使用vn-link-cli启动的命令:

.\vn-link-cli.exe -k nas_shengji_waner -n win11 --vnt-mapping "tcp:9091-10.26.0.2:9091" --vnt-mapping "tcp:3510-192.168.31.1:8080" -i 192.168.31.0/24,10.26.0.2

这里增加了两个参数:

  • • --vnt-mapping "tcp:3510-192.168.31.1:8080",这个参数表示将家里的路由器映射到公司电脑上的3510端口
  • • -i 192.168.31.0/24,10.26.0.2,这个参数表示将192.168.31.1这个IP的数据转发到10.26.0.2这个组网IP上,也就是转到家里的Nas

实践出真知!

此时我在公司电脑上,浏览器打开:http://127.0.0.1:3510

图片

立即打开了我家里的小米路由,登录操作也完全没有问题。

最后

  • • 这种组网方式,准确的说应该就叫 端口映射
  • • 官方的说法叫:无权限无tun模块组网
  • • 基于虚拟网卡(tun模块)的组网,当然是最方便的,不需要过多的配置端口。但无Root组网也有它的一些用处,各取所需吧。

另外,我还想到了其他的一些玩法:

  • • 在VPS通过上述方式,映射几个端口出来,再将自己的域名打到映射端口:那么就实现了不安装vnt程序,也可随时随地通过域名访问家里的服务啦
    • • 这种方式类似于FRP,但是我觉得比FRP会更方便,因为新增映射端口时只需要在VPS上配置即可,所以更灵活些。
  • • 在VPS使用虚拟网卡组网方式,配合nginx的http和stream模块,再将自己的各个子域名分流打到nginx,nginx通过upstream打到虚拟网卡,则实现了无需端口配置即可访问家里任意设备任意服务的场景,而且也不用安装vnt程序。

上述仅限于想法,还未实现。因为vnt的功能实在太强大了,我还正在研究vnt的网对网功能,没空去实验。若有朋友愿意或者已经实验过上述想法的话,可以给我留言。




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/11097.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: