找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 25882|回复: 246

Padavan各源码融合教程,新增xtls支持

 火.. [复制链接]
本帖最后由 keke1023 于 2021-9-1 21:13 编辑

新增了对xtls的支持,源码来自于xumng123
https://github.com/xumng123/rt-n56u
感谢@vb1980 持续对代码做出的测试和改进,他在原本的基础上新增了对xray的编译,而我之前就直接替换了v2的bin,所以是殊途同归啦
https://github.com/vb1980/Padavan-KVR

本文涉及的Padavan源码如下:
https://github.com/hanwckf/rt-n56u
https://github.com/chongshengB/rt-n56u
https://github.com/padavanonly/rt-n56u
https://github.com/immortalwrt/padavan
其中hanwckf的源码最先支持了7915无线芯片,也就是支持了wifi6的机型比如CR660x和JCG Q20/Q10 Pro
padavanonly在hanwckf的基础上增加修改出了7615/7915对kvr的支持
chongshengB的源码具有一些别人没有的插件,使用比较方便
immortalwrt在一些细节上有优化

将他们四个人的源码融合起来,虽然是一件复杂且工作量大的事,毕竟有75000+个文件,但这件事里面并非有多少技术含量
主要是要感谢hanwckf在无线驱动和机型适配方面,以及chongshengB在插件方面,还有padavanonly在kvr方面的探索与开源

刚开始融合的时候想的比较简单,以为源码各个部分的关系比较分明,可能就是user文件夹下添加插件源码更改总的Makefile,然后对应的在www里添加前端的asp就行,
结果经历了几次古怪的失败后(无法启动,页面显示异常,无线异常),这才开始静下心来仔细看每一份源码之间的区别

然后发现不同源码之间的差异可真是大。。有些是写法不同目的相同,有些则是实现的方法都不一样了
我们最终的目的是要有padavanonly的kvr,要有chongshengB的插件,以及hanwckf的其他部分

工具链都是一样的,区别都在trunk文件夹:
configs文件夹完全采用padavanonly,因为config文件里包含了对kvr的编译开关
libc文件夹完全相同
libs文件夹完全采用hanwckf,因为他所采用的各个lib的版本都最新,我比较喜欢追新
linux-3.4.x文件夹完全采用immortalwrt,新增了闪存型号的支持和MMC/SD卡的支持
proprietary文件夹完全采用padavanonly,此处是无线驱动部分,因为要支持kvr就需要修改无线驱动,这里只能用padavanonly的
vendors文件夹比较特别,chongshengB的源码里这个文件夹包含了很多无线驱动方面的内容,比如各种lna和pa搭配的eeprom文件,但是hanwckf/padavanonly是没有的,无线驱动方面一概以padavanonly的为准
但是希望有对vendors这个文件夹比较了解的朋友能给分析一下,我还没更细致的去理解这部分
build_firmware_modify需要采用padavanonly版本(指定回退的无线驱动版本)并从chongshengB版本复制插件添加部分
trunk的Makefile采用chongshengB版本,因为包含了go的编译
trunk文件夹下其他文件均可采用padavanonly版本

插件是都集中在user文件夹的,所以user文件夹以chongshengB为基础添改:
        chnroute修改Makefile不需要每次重新下载(可以不改,我只是为了自己编译不同固件方便)
        dnsmasq可替换为hanwckf的升级版本
        dropbear可替换为hanwckf的升级版本
        frp修改Makefile不需要每次重新下载编译(可以不改,我只是为了自己编译不同固件方便)
        htop可替换为hanwckf的升级版本

        httpd需要以chongshengB的为基础按照hanwckf+padavanonly的修改
                \user\httpd\ralink.c采用hanwckf的
                \user\httpd\variables.c添加7915部分及两个80211KV,80211R
                \user\httpd\web_ex.c添加7915部分

        iptables可替换为hanwckf的升级版本,同时要替换miniupnpd,有指定依赖关系

        rc需要以padavanonly的为基础按照chongshengB修改
                \user\rc\rc.c增加插件脚本运行
                \user\rc\rc.h增加插件定义
                \user\rc\services.c增加插件服务
                \user\rc\watchdog.c增加插件看门狗

        scripts需要以padavanonly的为基础按照chongshengB修改
                \user\scripts\autostart.sh从chongshengB添加
                \user\scripts\copyscripts.sh从chongshengB添加
                \user\scripts\dev_init.sh增加对ld.so.conf的定义
                \user\scripts\ld.so.conf从chongshengB添加
                \user\scripts\Makefile增加autostart.sh,copyscripts.sh,ld.so.conf
                \user\scripts\mtd_storage.sh注释掉gfwlist部分

       share需要以padavanonly的为基础按照chongshengB修改
                \user\shared\cflags.mk增加插件部分
                \user\shared\defaults.c增加插件部分
                \user\shared\notify_rc.h使用chongshengB的版本

        v2修改Makefile直接跳过编译采用二进制文件,可用xray(可以不改,我只是为了自己编译不同固件方便)

       www需要以chongshengB的为基础按照padavanonly修改
                \user\www\n56u_ribbon_fixed\Advanced_WAdvanced_Content.asp增加7915和kvr
                \user\www\n56u_ribbon_fixed\Advanced_WAdvanced2g_Content.asp增加7915和kvr
                \user\www\n56u_ribbon_fixed\Advanced_Wireless_Content.asp采用padavanonly的
                \user\www\n56u_ribbon_fixed\Advanced_Wireless2g_Content.asp采用padavanonly的
                \user\www\n56u_ribbon_fixed\Advanced_WMode_Content.asp采用padavanonly的
                \user\www\n56u_ribbon_fixed\Advanced_WMode2g_Content.asp采用padavanonly的
                \user\www\n56u_ribbon_fixed\wireless.js采用padavanonly的
                \user\www\n56u_ribbon_fixed\wireless_2g.js采用padavanonly的
                其他的js文件有互相的关联,所以轻易不要替换或者改动,很容易出错导致显示问题

       Makefile需要以chongshengB的为基础按照padavanonly增加ralinkiappd,也就是控制kvr的程序

最后再来回顾一下,如果要添加有前端页面的插件,就需要修改httpd,rc,scripts,share,www和总的Makefile,因为一个插件包括了前端显示的参数,系统注册的服务,运行时的脚本,系统内的参数,前端的asp页面以及编译开关,是这么多内容构成一个可视化插件的整体

增加适配机型的config就简单的多了,从chongshengB的config里复制出来MSG1500-7615的部分,然后跟类似机型对比修改,这里比较麻烦的就是闪存定义这里要对比一个nand闪存的,而无线部分又要对照一个7615的,还有usb部分,基本上都是些不是很要紧的增改,前面的事都做了,这里简直是毫无难度

融合出来的源码已经上传到github,也有三四个坛友都编译通过并测试使用了,想必没有什么大问题,有兴趣的朋友可以自己融合自己需要的部分,或者直接用融合后的代码
https://github.com/keke1023/Padavan
另:之前我说B70编译出来5G有问题,可能问题出在我这台机子本身的硬件,也许7612是可以用的,等待我再找个机子验证吧


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 17恩山币 +23 收起 理由
简*** + 1 送你一块“恩山”牌肥皂,喏,就在你脚下、.
dus*** + 1 感谢你的分享,无论怎样,你都是最无私的人.
shin*** + 1 大佬能加下aliyundrive-webdav这个插件吗
ro*** + 1 感谢分享。。。。
lu*** + 1 一看就是觉得高端、大气、上档次!
高*** + 1 一看就是觉得高端、大气、上档次!
weln*** + 2 不要怂、就是干!
小猫*** + 1 不要怂、就是干!
tova*** + 2 风清云淡、飘逸悠然……极爽!
lihy*** + 1 强大的恩山!(以下重复1万次)
草莓*** + 1 一看就是觉得高端、大气、上档次!
SkyT*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
kenj*** + 1 感谢分享~~~~~~
qql*** + 2 完美
go*** + 2 完美~
daji*** + 2 谢谢楼主辛勤融合,造福大家!
czc*** + 2 可以啊,不过可以加个流水线编译。

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
刷首页刷到了 感谢讲解!

点评

哈哈我今天终于抽空写出来了~刚刚发布~  详情 回复 发表于 2021-8-30 23:08
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
yuyuyg 发表于 2021-8-30 23:03
刷首页刷到了 感谢讲解!

哈哈我今天终于抽空写出来了~刚刚发布~
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

kvr只支持7615和7915吗?
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

大佬牛逼,膜拜大佬
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

精品贴,前排广告位。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
好活,彳亍
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

好久不见,大神
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
晓立宝贝 发表于 2021-8-31 01:02
好久不见,大神

哈哈哈真的耶,最近我写了不少技术分享你可以看看呀~
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
240038901 发表于 2021-8-30 23:19
kvr只支持7615和7915吗?

别的没测,b70还坏了…我也不清楚,但是是有这个选项的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
佐须之男 发表于 2021-8-30 23:49
精品贴,前排广告位。

最近跟CR660X杠上了,结果今天发现涨价了哈哈哈

点评

Cr660x,90包邮收过两台,Q20,99收的。  详情 回复 发表于 2021-8-31 21:47
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
支持大神,666
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

这么大的工作量
必须要顶起来
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
vb1980 发表于 2021-8-31 07:21
支持大神,666

感谢测试~
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
前几天弄了k2p的,zerotier无效,违禁软件无效。固件只有9M多,正常加这两个有14M

点评

r3g也是一样的  发表于 2021-12-3 17:11
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-27 04:38

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表