openppp2 是一个工作在 OSI/3 Layer 网络通信层的虚拟以太网工具链的开源软件,在查阅本文之前,人们可以查阅以下资料。
开源仓库:
liulilittle/openppp2: PPP PRIVATE NETWORK™ 2 VPN Next Generation Reliable and Secure Virtual Ethernet Access Solution! (github.com)
引用:
openppp2 组网(虚拟子网)-CSDN博客
openppp2 开源项目编译方法_openipc编译-CSDN博客
初识开源项目 openppp2-CSDN博客
关于 C/C++ 1Z(17)开源项目 openppp2 协同程式切换工作流-CSDN博客
openppp2搭建及简单使用教程 - Clouldon Blog (nicetive.site)
openppp2 与其它开源类似的工具链是不同的,它只有一个主控可执行程序,通过CLI命令行接口来指定其环回运行模式。
例如:客户端、服务器模式
命令行接口帮助
通用命令行参数详解:
--mode 指定环回运行模式
client: 客户端模式
server: 服务器模式
--config 指定配置模板文件,缺省路径为:./appsettings.json
--lwip 启用 lwip 网络协议栈,否则为 ctcp 网络协议栈
Windows: lwip [首选]
Linux/MacOS X: ctcp [首选]
--nic 指示首选物理承载网络接口,该接口不存在会重新评估设备,可用物理承载网卡
--tun 指定虚拟网卡名称,缺省为:ppp
--tun-ip 设置虚拟网卡,IP接口地址
--tun-gw 设置虚拟网卡,网关服务器地址
--tun-mask 设置虚拟网卡,子网掩码 [CIDR无间路由格式]
例:24 = 255.255.255.0、25 = 255.255.255.128
--tun-vnet 启用虚拟子网 [组网],但服务器必须启用子网支援
--tun-host 指示PPP为当前设备的首选承载网络接口(默认网关)
就像:WLAN共享需要启用为承载网络模式
--tun-flash 启用高级QoS 策略控制,它可减少一些网络延时及抖动
--tun-static 启用静态隧道路由交换,游戏用户通常建议启用它
--dns 设置虚拟网卡,DNS服务器列表地址
--block-quic 是否允许阻止:IETF/QUIC HTTP/3流量,根据实际需要评估,通常建议阻止
--bypass-ip-list 设置需要绕过的IP路由列表
人们亦可以通过操作系统命令行接口,在PPP运行时动态调配内核路由表。
--dns-rules 指示内置DNS分流规则文件路径
--firewall-rules 指示内置防火墙规则文件路径
--help 帮助信息
--pull-iplist 从APNIC/IRR注册机构公示的IP地址路由表之中拉取指定区域的IP路由文件
格式:文件/区域
例子:--pull-iplist myip.txt/JP
参数:
文件,缺省为:ip.txt
区域:缺省为:CN
APNIC/IRR参考:http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest
不同平台之间命令行接口选项差异:
Linux 平台
--tun-route 启用兼容路由控制模式
在一些 Linux 发行版本遇到,自动路由配置问题时,启用本选项
--tun-ssmt 启用SSMT超线程技术
规则:[[4]/[mq]]
4:为线程数
mq:为多队列模式,
st:为单队列模式【缺省】
举例:--tun-ssmt=8/st
MQ/ST 模式之间区别:
MQ:尽可能的压榨设备CPU机能,以为提供更佳TCP/IP并行链接吞吐能效
ST:尽可能的压榨设备CPU机能,以为提供更佳TCP/IP单个链接吞吐能效
但两者均可以利用到所有的CPU能效
以X5-Z8300为例,以 openppp2 开源仓库提供的默认模板配置
全核能效: 多链接:350 ~ 450Mbps,单链接:200 ~ 270Mbps
--tun-promisc 启用虚拟网卡混杂模式,SNAT软路由用户通常建议启用它
MacOS X 平台
--tun-promisc 启用虚拟网卡混杂模式,网络共享用户通常建议启用它
Windows 平台
--system-network-reset 重置系统网络设置,等效:netsh winsock reset
--system-network-preferred-ipv4 设置系统网络首选IPV4
--system-network-preferred-ipv6 设置系统网络首选IPV6
--system-network-optimization 优化系统网络设置,提高系统网络吞吐能效
--no-lsp 禁止指定程序加载,LSP/NSP网络分层驱动
一些有些游戏保护驱动,对于LSP/NSP存在限制时
可以使用它,禁止这些游戏程序加载LSP/NSP驱动。
--tun-lease-time-in-seconds 设置虚拟网卡DHCP自动续租时间(单位秒)
--set-http-proxy 自动设置浏览器HTTP代理服务器
命令行接口选项,专用环回模式类别:
客户端:
--lwip
--nic
--tun
--tun-ip
--tun-gw
--tun-mask
--tun-vnet
--tun-host
--tun-flash
--tun-static
--tun-route
--tun-promisc
--tun-lease-time-in-seconds
--dns
--set-http-proxy
--block-quic
--bypass-iplist
--dns-rules
--tun-ssmt
--no-lsp
--system-network-reset
--system-network-preferred-ipv4
--system-network-preferred-ipv6
--system-network-optimization
服务器:
--mode
--config
--tun-flash
--firewall-rules