Clouodon Blog
    • 版块
    • 最新
    • 热门
    • 用户
    • 友链
    • 注册
    • 登录

    openppp2简易使用教程

    已定时 已固定 已锁定 已移动 软件教程
    openppp2
    1 帖子 1 发布者 106 浏览 1 关注中
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • clouldonC 离线
      clouldon
      最后由 clouldon 编辑

      1.openppp2项目简介

      介绍一种VPN-openppp2,目前来看不会被墙,而且支持内网穿透,虚拟子网,UDP多线路宽频聚合,CDN转发,国内自动BGP分流等等更多功能看github
      仓库:https://github.com/liulilittle/openppp2
      使用指南:https://github.com/liulilittle/openppp2/blob/main/README_CN.md

      下文将openppp2简称为ppp
      ppp目前在IPv6上支持不好,不太能跑在IPv6上,使用前得把IPv4优先或者禁用IPv6(Window客户端),如果是直连比较吃线路,除非个人会调整网络调优,或是使用CDN转发。
      其在Linux下运行支持较为良好,而在Windows上常常会遇到奇奇怪怪的问题(IPv6问题导致无法进行有效通讯),作者已给出部分解决方法,见使用指南。

      原版安装参考原文-快速开始

      2.脚本简介及服务端安装

      因为最近使用了AI写了一键脚本,在Debian系统里面还是可用的。

      wget -4 -O ppp_install.sh https://raw.githubusercontent.com/zouazhi/zouazhi/main/ppp/ppp_install.sh && chmod +x ppp_install.sh && ./ppp_install.sh
      

      脚本地址:https://github.com/zouazhi/zouazhi/blob/main/ppp/ppp_install.sh
      拉取脚本之后,

      ✅ 脚本启动,进入主循环
      openppp2一键脚本
      请选择操作:
      1) 服务端-自动交互安装[完整安装ppp及配置,系统服务]
      2) 服务端-自行修改配置[跳过配置文件,直通系统服务]
      3) 通用-更新[更新openppp2二进制文件并重新配置服务]
      4) 通用-重启[重启ppp服务]
      5) 通用-停止[停止ppp服务]
      6) 通用-查看运行状况[查看ppp.log和系统服务状态]
      7) 通用-卸载ppp[删除文件-删除重载系统服务]
      8) 退出脚本
      请输入选项[1-8]: 
      

      2.1全新服务端安装

      数字1就会安装jq、uuidgen 和 unzip,拉取启动脚本,和部分改好的配置文件,和系统服务功能。
      工作目录默认放在opt/ppp下,此时可以选择(1自行修改或(2交互式输入,如下所示。

      ✅ ppp.sh 启动脚本 拉取完成
      ✅ ppp.sh 启动脚本 已具有可执行权限
      是否自行修改 appsettings.json 文件?
      1) 是(脚本将暂停)
      2) 否(通过脚本输入 IP、端口和 GUID)
      请输入选项 (1/2): 
      

      以下介绍两个1-1和1-2的不同

      2.2修改配置文件和交互

      (2交互较为简单,只需要输入数字2,然后输入IP,端口,GUID,后续会进行配置文件的补全,并完成启动,完成这一步的的直接转到[[#3.客户端使用]]
      对于自行修改配置文件
      (1则需要修改opt/pppppsettings.json里面tcp,udp监听端口(默认20000)以及udp下的"servers": ["1.1.1.1:20000"],"client"下的"guid",和"server"(默认为ppp://1.1.1.1:20000),其中1.1.1.1即为入口的IP,20000即为工作端口。

      附GUID生成网站:https://www.guidgen.com/

      该脚本拉取的配置文件是经修改的精简版本,方便快速启动并默认开启内网穿透,更多内容请看上文仓库原文配置文件及使用说明。

      2.3自行修改配置文件后续

      该为选择1-1之后脚本暂停之后重新执行脚本,即为主循环中的2。
      优先参考原文
      重新执行脚本:

      bash /root/ppp_install.sh
      

      即会自动拉取启动脚本和系统服务。

      2.4服务端启动脚本及系统服务

      若是选择服务端的启动脚本为下所示,放置于/opt/ppp/ppp.sh内

      ./ppp --mode=server > ./ppp.log
      

      脚本内系统服务为引用改sh文件进行服务运行,系统服务如下所示

      [Unit]
      Description=PPP PRIVATE NETWORK™ 2
      After=network.target network-online.target
      
      [Service]
      Type=simple
      User=root
      Group=root
      WorkingDirectory=/opt/ppp
      ExecStart=/bin/bash /opt/ppp/ppp.sh
      Restart=always
      RestartSec=20
      StartLimitBurst=5
      SyslogIdentifier=ppp
      
      [Install]
      WantedBy=multi-user.target
      

      即可以使用service ppp stop等service系统服务命令进行控制

      相应的查看当前运行状况可以采用检查service ppp status和/opt/ppp/ppp.log来判断运行状况。
      其中/opt/ppp/ppp.log其实为实时运行图:

      PPP                                                                             
      --------------------------------------------------------------------------------
      Application started. Press Ctrl+C to shut down.                             
      Max Concurrent        : 1                                                   
      Process               : 149273                                              
      Triplet               : linux:X86_64                                        
      Cwd                   : /opt/ppp             
      Template              : /opt/ppp/appsettings.json  
      Public IP             : ::               
      Interface IP          : ::                  
      Service 1             : [::]:20000/ppp+tcp   
      Service 2             : [::]:20000/ppp+udp  
      Hosting Environment   : server:production                                      
      VPN                              
      ----------------------------------------------------------------------------
      Duration              : 00:35:46   
      Sessions              : 0        
      TX                    : 0.000000 B   
      RX                    : 0.000000 B    
      IN                    : 21.000000 B   
      OUT                   : 6.154297 KB   
      

      实际上,openppp2的启动命令为./ppp --mode=server,在终端输入即可得到实时运行的流量变化,客户端数等内容,但其为前台运行,本脚本将其运行页面写入ppp.log以便管理
      同样你也可以使用screen等工具使其在后台启动(目录下自行./ppp --mode=server),此时并不需要系统服务,望读者注意。

      3.客户端使用

      客户端和服务端使用同一套二进制文件,同样对于配置文件,其中包括服务端部分和客户端部分,最简化的配置文件只需包含各自服务端/客户端的配置内容。
      上文所提到的配置文件已经包括客户端,服务端两部分,即是通用的。所以直接从服务端拉取配置文件即可,对于每个不同的客户端,其GUID不能相同,但从服务端拉取的配置文件是修改过的,且当前主机为第一客户端,所以不用修改,与其他小伙伴共享时也需修改其GUID。另外对于下文启用了--tun-vnet=yes的--tun-ip=10.0.0.5 同时在线的子网IP也不能相同。

      3.1Windows

      Windows用户若存在IPv4/IPv6双栈问题请阅读原文并尝试使用以下命令,或者直接禁用IPv6。

      原文

      命令 功能 格式
      --system-network-reset 网络重置 --system-network-reset
      --system-network-optimization 性能优化 --system-network-optimization
      --system-network-preferred-ipv4 设置IPV4网络优先 --system-network-preferred-ipv4
      --system-network-preferred-ipv6 设置IPV6网络优先 --system-network-preferred-ipv6
      --no-lsp 禁用LSP --no-lsp

      优先参考原文

      1. 现于releases中下载openppp2-windows-amd64.zip
      2. 解压后去除cmcc_cidr.txt, crtc_cidr.txt, ip.txt, starrylink.net.key, starrylink.net.pem, appsettings.json,然后放入服务器拉取的appsettings.json。
      3. 新建bat文件start.bat填入以下命令
      start ppp.exe --mode=client --config=./config/修改这里.json --auto-pull-iplist --tun-ip=10.0.0.5 --tun-gw=10.0.0.0 --tun-mask=24 --tun-host=yes --link-restart=3  --tun-vnet=yes --tun-static=no --block-quic=yes --set-http-proxy=no --tun-mux-acceleration=3 --tun-ssmt=4/st 
      

      其中--tun-host为控制网络走VPN
      --tun-static为是否启用udp静态隧道
      --config=./config/修改这里.json为配置文件目录,此为例子,按需修改。如果配置文件名为appsettings.json则为--config=./appsettings.json。
      更多命令参考原文
      然后点击start.bat即可

      3.2Linux客户端

      对于Linux其运行和提到的服务端相似,而启动命令可以参照下

      ./ppp --mode=client --config=./ggvHK.json --tun-ip=10.0.0.88 --tun-gw=10.0.0.0 --tun-mask=24 --tun-host=no --link-restart=3 --tun-mux-acceleration=3 --tun-static=no --tun-ssmt=4/st --block-quic=yes > ./ppp.log
      

      可以使用一键脚本写入,将启动sh文件将服务端的--mode=server改为--mode=client即可。

      3.3启动后

      启动后可以用ping去简易判断连接情况,不受--tun-host影响

      PS C:\Users\2233\Desktop> ping 10.0.0.1
      
      正在 Ping 10.0.0.1 具有 32 字节的数据:
      来自 10.0.0.1 的回复: 字节=32 时间=73ms TTL=127
      来自 10.0.0.1 的回复: 字节=32 时间=67ms TTL=127
      来自 10.0.0.1 的回复: 字节=32 时间=70ms TTL=127
      来自 10.0.0.1 的回复: 字节=32 时间=73ms TTL=127
      

      对于IPv6问题的用户可以采用http代理的模式替代,可以使用启动命令的--set-http-proxy=yes进行系统代理,或自行代理。配置文件默认使用8080端口进行http代理(sock5帮我删掉了)。

      "http-proxy": {
                  "bind": "0.0.0.0",
                  "port": 8080
              }
      

      点击查看启动图

      1 条回复 最后回复 回复 引用 0

      你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

      厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。

      有了你的建议,这篇帖子会更精彩哦 💗

      注册 登录
      • 第一个帖子
        最后一个帖子