通过openvpn使用steam进行远程畅玩

2020年3月10日 0 作者 筱枫

前阵子通过openvpn远程跳入家中的局域网,于是想到可以不可以用openvpn来让steam通过远程畅玩的方式,让身在公司的我闲暇之余跑大型单机

折腾下来是可以实现想法的,但是并未测试延迟之类

首先,要将openvpn的接口类型改成TAP

默认的类型是TUN,虽然可以让steam扫描到家中的电脑,但是流式传输的时候提示无法链接,网上搜索了一番后,发现是TUN类型造成的问题,关于TUN和和TAP类型的区别,可以详见这篇文章

OpenVPN用TAP还是TUN好呢

其实说通了很简单,TUN是工作在第三层,TAP是工作在第二层,可以提供更加强大的功能,但是效率会低一些

PS:改成TAP后,安卓上面的openvpn就无法使用了,详见这篇文章:Why does the Android app not support TAP-style tunnels?

那么我是怎么解决这个问题的呢?再开一台服务器就好了😂


到这一步,steam就可以正式游玩了,但是我又遇到了另外的一个问题

由于我是通过网络唤醒启动主力机,然后通过远程桌面进去打开steam的,当我关闭远程桌面链接后,用steam的流式传输就会出现:would you like to accept secure desktop input from steam

问题主要是断开远程桌面后就会回到锁屏界面,然后steam因为安全,这个时候就必须要在主力机上面确认方可使用

但是我人不在主力机旁边,所以自然是无法进行操作的

我本来打算直接开着远程桌面,然后通过steam链接的——但是这样有一个新的问题,windows远程桌面无法初始化directx9,所以很多游戏玩不成

经过一番搜索,我找到了解决办法


在远程桌面连上的主力机界面,通过管理员身份打开powershell或者cmd然后执行

tscon <your session id> /dest:console

随即便会提示远程桌面已断开,然后这样就可以通过steam进行畅玩了,具体延迟目前还没有测试,但也满足了我的折腾之心

如何查看sessionID?

可以使用任务管理器,在详细信息选项卡中任选一列右击,然后选择“选择列”

接着勾选会话ID即可

详情可参阅如下两篇文章

Move RDP session to console

如何关闭远程桌面后仍处于可交互状态