饥荒联机吧 关注:159,143贴子:2,589,232
  • 21回复贴,共1

本地专有服务器+frp+proxychains搭建

只看楼主收藏回复

已有的专有服务器+frp搭建的技术,有以下不足:
1. 需要使用c_connect命令加入来获得最佳性能。如果直接从游戏大厅中搜索,无法获得frp穿透的好处,这不利于开设公共服务器来和陌生人一起玩。
2. 无法显示延迟。
本帖子提供一个尝试性的解决方案,以windows为例。分为如下几步:
①在自己的电脑上搭设专用服务器。我是按照官方教程来做的。https://forums.kleientertainment.com/forums/topic/64212-dedicated-server-quick-setup-guide-windows/
②使用frp建立映射关系,可以参考已有教程进行搭建。注意和普通的frp使用不同,需保证客户端配置上的remote_port与local_port保持一致。
③在同一台云服务器上搭建socks。我是使用dante-server搭建的。
④在本机下载proxychains-windows (https://github.com/shunf4/proxychains-windows/releases/tag/0.6.8), 按照响应指示安装、配置③中socks。配置好之后,使用proxychains_win32_x64 StarDSTServers.bat命令启动服务器。
其中的原理应该是把本机与克雷服务器的交流进行由云端进行代理,所以克雷会认为服务器开在云服务器上。感兴趣的大佬可以尝试并且帮忙验证一下。因为这个过程比较繁琐,小白做起来难免遇到各种问题,不建议尝试。


IP属地:北京1楼2024-06-29 22:18回复
    一、专有服务器搭建
    这个虽然教程比较多,但是我尝试的steamcmd以及命令行来启动的版本。给大家详细介绍一下。主要是为了配合第四步。
    1. 安装steamcmd,这是命令行版本的steam。从这个链接https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip里下载压缩包,把其中的steamcmd.exe解压缩到D:\steamcmd中。这一步之后,会有D:\steamcmd\steamcmd.exe
    2. 在C盘文档\Klei文件夹下,新建文件StartDSTServers.bat,在里面输入以下内容:
    d:\steamcmd\steamcmd.exe +login anonymous +app_update 343050 validate +quit
    cd /D "d:\steamcmd\steamapps\common\Don't Starve Together Dedicated Server\bin64"
    start dontstarve_dedicated_server_nullrenderer_x64 -console -cluster MyDediServer -shard Master
    start dontstarve_dedicated_server_nullrenderer_x64 -console -cluster MyDediServer -shard Caves
    3. 客户端正常建存档。设置mod。生成之后,把响应的存档文件夹重命名为“ MyDediServer ”,然后剪切到C盘文档\Klei\DoNotStarveTogether文件夹下。
    4. 生成一个cluster_token.txt, 这个和普通的教程是一样的。放到MyDediServer下。


    IP属地:北京3楼2024-06-30 01:06
    回复
      二、frp搭建。
      下载frp,在云服务器和本机上分别配置frps.ini 和frpc.ini。具体参考其他教程吧。
      以下是一个示例的frpc.ini的配置。
      [common]
      server_addr = XXX
      server_port = XXX
      [dst_master_udp]
      type = udp
      local_ip = 127.0.0.1
      local_port = 10999
      remote_port = 10999
      [dst_cave_udp]
      type = udp
      local_ip = 127.0.0.1
      local_port = 10998
      remote_port = 10998
      这里的master的local port和remote port应该都等于MyDediServer/Master/server.ini中的端口。cave同理。
      完成这一步之后尝试一下是否能够通过c_connect成功链接服务器,并检查洞穴是否可用。


      IP属地:北京4楼2024-06-30 01:14
      回复
        三、在同一个服务器上搭建socks
        我是参考https://www.digitalocean.com/community/tutorials/how-to-set-up-dante-proxy-on-ubuntu-20-04#step-1-installing-dante 搭建的。大家可以仿照着搭建一下。


        IP属地:北京5楼2024-06-30 01:15
        回复
          四、proxychains的安装、配置和使用。
          下载之后
          ①在环境变量Path中加入所保存的文件夹。
          ②在C:\ProgramData中新建文件夹Proxychains,在其中新建文件proxychains.conf。将https://raw.githubusercontent.com/shunf4/proxychains-windows/master/proxychains.conf中的内容复制进去。并且在最后加入一行:socks5 你的云服务IP 第三步socks端口 第三步用户名 第三步密码
          ③验证,在cmd中,尝试运行proxychains_win32_x64 curl http://www.baidu.com 有输出就视为成功。


          IP属地:北京6楼2024-06-30 01:24
          回复
            五、启动!
            在CMD中使用proxychains_win32_x64 StarDSTServers.bat命令启动服务器即可。


            IP属地:北京7楼2024-06-30 01:27
            回复
              没人吗?感觉搞公益服的大佬可能需要这个,甚至人人都可以开公益服。


              IP属地:北京来自iPhone客户端8楼2024-07-01 01:24
              回复
                没有公网的物理机要么内网穿透,要么组虚拟局域网,这两种方式实现后都需要用直连代码进入服务器,因此只适合小伙伴之间玩,不适合公开档。


                IP属地:江西来自Android客户端9楼2024-07-01 10:17
                收起回复
                  至于延迟问号的问题,反而无关紧要


                  IP属地:江西来自Android客户端10楼2024-07-01 10:20
                  回复
                    这个方法也可以在大厅搜索不卡是吧


                    IP属地:广东来自Android客户端11楼2024-08-02 13:38
                    回复
                      这样设置会导致下载更新也走frp吧


                      IP属地:江苏12楼2024-11-24 13:59
                      收起回复
                        有个 server dstapi com的网站,实现方式是做一个假的ip检测服务器通过改host换掉科雷的服务器实现的改大厅地址。


                        IP属地:江苏13楼2024-11-24 14:04
                        收起回复
                          proxychains支持udp吗?


                          IP属地:江苏14楼2024-11-24 23:33
                          收起回复
                            仔细看了一下,你这个,是要自备独立云服,搞了socks5和frp两套代理,如果用樱花frp之类就用不了了


                            IP属地:江苏16楼2024-11-30 16:19
                            收起回复