osnosn

  博客园 :: 首页 :: 博问 :: 闪存 :: :: 联系 :: 订阅 订阅 :: 管理 ::

刷openwrt固件_Newifi_D2/Y1_对应设备_固件文件名

转载注明来源: 本文链接 来自osnosn的博客,写于 2019-12-24, 更新2023-05.

Newifi mini, 对应 Y1

Newifi 3, 对应 D2

  • 1个千兆WAN/4个千兆LAN/1个USB3.0/2.4G+5G WIFI/4条天线
  • http://downloads.openwrt.org/
  • 找 Stable Release
  • ramips/mt7621/d-team_newifi-d2-squashfs-sysupgrade.bin
    • d-team_newifi-d2-initramfs-kernel.bin 不用这个。
      这个kernel可以用来直刷设备的flash,或者用来制作启动映像。
      有个参考 【openwrt之initramfs-kernel】。
  • 注: Newifi D2的5G wifi只能工作在36-44,149-161这些频道之间。其他频道5G不工作。

  • 官方openWRT-22.03.3
    • overlay总空间/剩余空间: 25.4MB/24.6MB。账号: root/无。默认IP: 192.168.1.1 。
  • P3TERX/OpenWrt-Newifi_D2】比较新。
    • 2023-01 测试, 记录。
    • overlay总空间/剩余空间: 9.6MB/8.9MB。账号: root/password。默认IP: 10.0.0.1 。
    • 服务: "系统"中,"TTYD","时间同步","磁盘管理","挂载点(文件系统)"。
      "服务"中,shadowsocksR+,上网时间控制,DDNS,迅雷快鸟,网络唤醒,KMS服务,frpc内网穿透,UPnP。
      "网络存储"中,usb打印服务,硬盘休眠,FTP服务,网络共享smbd,挂载外部smb目录。
      "网络"中,访客网络(wifi),TurboACC网络加速。
  • 【2022.9.9 更新】新路由3/小娱 Lean源码 支持一键更新固件
  • Hyy2001X/AutoBuild-Actions-BETA/releases
    • 2023-01 测试, 记录。
    • overlay总空间/剩余空间: full 512KB/110KB, Clash 5.7MB/5.2MB, Lite 9.1MB/8.4MB。账号: root/password。默认IP: 192.168.1.1 。
    • Lite版的服务: "系统"中,"web管理","TTYD","挂载点(文件系统)"。
      "服务"中,广告屏蔽大师Plus+,AdGrard Home,shadowsocksR+,上网时间控制,解锁网易云灰色歌曲,DDNS,smartDNS,网络唤醒,KMS服务,UPnP。
      "网络存储"中,usb打印服务,硬盘休眠,Webd网盘,FTP服务,网络共享smbd。
      "VPN"中,ZeroTier
      "网络"中,Natter,Socat,网速控制,SQM/QoS,TurboACC网络加速,多线多拨,负载均衡。
      Lite版,长时间不重启(超过7个月,也可能是4个月),会死机(无法连接wifi,电脑有线插LAN口无法获取IP,无法登录luci,ping不通wan,wan口不停收发数据包,导致交换机卡死.)。断电重启openwrt就恢复了。
    • Clash: "服务"中多了"OpenClash","阿里云盘WebDav","微信推送","iperf3服务","udpxy","uHttpd","MWan3分流"。
      "网络存储"中多了"aria2"。"VPN"中多了"PPTP","IPsec"。
    • Full: "服务"中少了"OpenClash",多了"阿里云盘WebDav","微信推送","iperf3服务","udpxy","uHttpd","MWan3分流","frpc内网穿透"。
      "网络存储"中多了"aria2"。"VPN"中多了"PPTP","IPsec"。
  • fichenx/OpenWrt
  • IvanSolis1989/OpenWrt-DIY
  • Newifi3-D2刷自定义Openwrt固件指北
  • kizimirua/NEWIFI-D2-OpenWrt
  • kizimirua/NEWIFI-D2-OP
  • a0575/Newifi3d2-OpenWrt
  • ASUS 【hfxunlp/TMRAF

其他

自用,刷官版步骤,(备忘)

Y1 (2023-01 刷机)

  • 通过breed刷入 22.03.3 版。需要等很久。Y1的刷写1分钟,等第一次启动约5分钟,耗时较长。再次重启只要1.5分钟。
  • 设置root密码。关WIFI。改lan IP,避开光猫IP。overlay总/剩余: 10MB/9.5MB。
  • 联网,opkg update
  • 替换 wpad-openssl 包,做 radius 服务。【这里】。
    • remove wpad-basic-wolfssl, 先装hostapd-common,再装wpad-openssl。
      考虑原来使用的是 wolfssl库,用sdk重新编译一个 wpad-wolfssl 的包。避免再多装一个900多kb 的 libopenssl 库。
      英文或数字证书,wpad-wolfssl 支持 OK。
      但是,如果证书中包含中文,wpad-wolfssl 支持不好,客户端通过证书登陆失败,有时会导致hostapd进程退出。
      证书中是否含有中文,wpad-openssl 支持都 OK。
  • 创建 /etc/hostapd/ 配置文件。【这里】。
  • 装入 3proxy 包。【这里】。overlay总/剩余: 10MB/6.3MB。
  • 安装 usb 支持包。ext4支持。见【newifi_D2_新3_lede_插U盘扩容overlay_装可道云
  • 装 upnp (按需)。
  • 这样手工安装比较麻烦,考虑用imagebuilder打包一个自定义bin文件
    但,不知道官方bin中有些什么包。
    方法1:可以先刷到Y1设备上,用命令opkg list-installed获取包列表。
    方法2,推荐:通过设备中的 /usr/lib/opkg/status文件获取包列表。
    Y1的bin是 "u-boot legacy uImage" 格式,lzma压缩的。
    有文章说,应该用 mkimage -l xxx.bin 来读取。安装apt install u-boot-tools之后,发现读取失败,更别说提取文件了。
    又有文章【Help unpacking U-boot firmware】,说可以用【ReFirmLabs/binwalk】来读取。
    安装apt install binwalk之后,确实可以读取了。 binwalk这个包是python3写的,依赖包挺多,装下来占用150MB硬盘空间。
    这篇文章也提到了binwalk【从固件里反编译dtb为dts】。
    binwalk -e xxxx.binbinwalk -Me xxxx.bin 解包。
    在解压出来的文件系统目录中,找到 .../squashfs-root/usr/lib/opkg/status, 应该可以得知原来有些什么ipk包。
    这样就可以在这个基础上,添加/删减ipk,制作自己的bin文件了。见【用ImageBuilder打包自定义img】。
    • 里头有个squashfs的文件,用mount -r -o loop xxx.squashfs test/挂载失败。可以用 unsquashfs -f 强制解开里头的文件。和 binwalk 解出的是一样的。没必要自己解压了。
    • 里头有个"40"文件,其中包含 dtb 的设备信息表(需截取)。可以使用 dtc 命令,对 dtb和 dts文件相互转换。dts是个可读的文本文件。使用apt install device-tree-compiler
      生成的dts文件不包含任何注释,并展开和替换了dtsi中的引用。【使用dtc将dtb转换成dts】。
  • 两种方法获取官方bin中的缺省包。
    用"方法1",得到的列表比较多,有140多个,其中包含很多依赖包。
    用"方法2",得到的列表比较精简,只有30多个。
    我实际使用"方法2"获取缺省包,制作自定义bin,刷入之后,再用 opkg list-installed 获取列表,和原版是一样的,除了我另加入的包。也是140多个。
  • imagebuilder 创建过程:
    把需要替换的 hostapd-common, wpad-wolfssl或 wpad-openssl 两个包,copy 到 imagebuilder 的 /packages/ 目录中。
    因为 packages 目录中的新包的版本号,比官版的新,所以打包时,会使用这个新包。
    在 imagebuilder 中创建 /ext_root/ 目录。在此目录中添加额外文件,
    创建 /ext_root/etc/hostapd/ 目录,在里头放入配置文件 hostapd.conf 等相关文件,【这里】。
    再创建 /ext_root/lib/upgrade/keep.d/hostapd-radius文件, 内容为 /etc/hostapd/,备份配置时包含这个目录。
    再创建 /ext_root/etc/3proxy/ 目录。在此目录中添加配置文件,【这里】。
    再创建 /ext_root/lib/upgrade/keep.d/3proxy文件, 内容为 /etc/3proxy/,备份配置时包含这个目录。
    再创建 /ext_root/etc/rc.local文件, 加入启动命令,用于替换原版的 rc.local 。
    再创建 /ext_root/root/task/task5min.sh 脚本文件。用于定时任务。【这里】。
    再创建 /ext_root/etc/crontabs/root 文件。chmod 600,内容为*/5 * * * * /bin/sh /root/task/task5min.sh,建立定时任务。
    再创建 /ext_root/lib/upgrade/keep.d/root-task文件, 内容为 /root/task/,备份配置时包含这个目录。
    如果要修改 /etc/config/ 中的配置,见【openwrt_imagebuilder_修改缺省配置_system_network_firewall_root密码_制作免配置固件】。
    make image PROFILE="lenovo_newifi-y1" FILES="ext_root" PACKAGES="-wpad-basic-wolfssl wpad-openssl coreutils-shuf htop bind-dig curl rsync diffutils luci-app-wireguard block-mount kmod-fs-exfat kmod-fs-ext4 kmod-fs-vfat kmod-usb-storage 3proxy ...." 参数,生成新的bin包。
    "...." 是 "liblucihttp0 cgi-io luci-lib-base luci-app-opkg rpcd luci-lib-ip libubus-lua libiwinfo-lua luci-mod-system luci-theme-bootstrap px5g-wolfssl luci-mod-status luci-app-firewall lua luci-ssl rpcd-mod-file rpcd-mod-luci luci-proto-ppp luci-mod-admin-full luci-base luci-proto-ipv6 uhttpd liblua5.1.5 luci-lib-nixio liblucihttp-lua luci-lib-jsonc luci rpcd-mod-iwinfo luci-mod-network uhttpd-mod-ubus rpcd-mod-rrdns"
    没装 wget-ssl 。
    通过breed刷入。overlay 总/剩余: 6.8/6.4MB。
    分别插入usb2.0/3.0的U盘,都能正常挂载,支持exfat,vfat,ext4。
  • 另做一个bin,加上 vim vim-full etherwake ncat telnet-bsd ntpdate file proxychains-ng nmap 。(空间6.3/5.8MB)。
    再加coreutils-sleep wget-ssl luasql-sqlite3 xfrpc
    xfrpc 默认是disabled。coreutils-sleep支持ms毫秒级,可以用lua的nixio中的sleep代替。
    插个 U盘,再装 sqlite3-cli nmap-ssl file proxychains-ng tmux wget-ssl
  • 早些时候,做过一次剩余空间对比
    同样是替换一个包,增加两个包。(-wpad-basic-wolfssl wpad-wolfssl libopenssl 3proxy)
    手工用 opkg 安装,overlay 总/剩余 10MB/7.1MB。
    用 imagebuilder 生成bin,通过breed刷入,overlay 总/剩余 9MB/8.5MB。
  • 把其他比较大的包装到U盘上。【opkg安装软件到u盘】。

D2 (2023-01 刷机)

  • op-22.03.3 版。用 make image PROFILE="d-team_newifi-d2" FILES="ext_root" PACKAGES="-wpad-basic-wolfssl wpad-openssl coreutils-shuf htop bind-dig curl rsync diffutils luci-app-frpc luci-app-wireguard luci-app-ddns luci-app-upnp adguardhome block-mount kmod-fs-exfat kmod-fs-ext4 kmod-fs-vfat kmod-usb-storage-uas 3proxy ...." 参数,生成新的bin包。
    "...." 是 "cgi-io libiwinfo-lua liblua5.1.5 liblucihttp0 liblucihttp-lua libubus-lua lua luci luci-app-firewall luci-app-opkg luci-base luci-lib-base luci-lib-ip luci-lib-jsonc luci-lib-nixio luci-mod-admin-full luci-mod-network luci-mod-status luci-mod-system luci-proto-ipv6 luci-proto-ppp luci-ssl luci-theme-bootstrap px5g-wolfssl rpcd rpcd-mod-file rpcd-mod-iwinfo rpcd-mod-luci rpcd-mod-rrdns uhttpd uhttpd-mod-ubus"
    通过breed刷入。overlay 总/剩余: 10.4MB/10.0MB。
    分别插入usb2.0/3.0的U盘,都能正常挂载,支持exfat,vfat,ext4。(通常usb3会支持storage-uas,更快)
    • 其中,
      htop : 进程查看器
      tmux : 终端复用器
      diffutils : diff 命令, 方便对比不同版本的配置文件。
      bind-dig : dig 命令, 自己写ddns脚本用。
      coreutils-shuf : 随机排列,随机数,自建的脚本中用到。
      rsync : 文件同步,方便备份op的配置
      wget-ssl : 完整版wget,支持https走代理
      luci-app-upnp luci-app-ddns : UPNP(有公网ipv4用), 动态域名(IPv4,v6)
      luci-app-watchcat : 网络看门狗。它默认ping 8.8.8.8;这是不可能ping通的,需要修改一下。
      adguardhome : 广告过滤
      block-mount kmod-usb-* kmod-fs-* : 挂载硬盘, U盘支持, 文件系统支持。
      3proxy : 精巧的 http 和 socks5 代理
      fdisk e2fsprogs : 分区 mkfs.ext4的支持。
  • 通过breed刷入。D2的刷写2.5分钟,等待第一次启动1.6分钟。再次启动50秒。
    用op系统自带的固件升级,有时会启动不了。
    overlay 总/剩余空间: 11.4/10.9MB(-wpad-basic-wolfssl wpad-wolfssl adguardhome 3proxy)。
  • 使用 wpad-wolfssl包,用hostapd命令启动radius服务进程。
    如果证书中信息全是英文或数字,wolfssl 支持OK,客户端通过证书登陆OK。
    但是,如果证书中包含中文,wolfssl 支持不好,客户端通过证书登陆失败,有时会导致hostapd进程退出。导致之后的WiFi无法通过任何认证。
    换用 wpad-openssl ,证书中无论是否含中文,支持都没问题
    如果坚持使用 wpad-wolfssl ,可以启动一个每5分钟执行一次的检查脚本。防止其退出。
    #!/bin/sh
    a=$(ps w|grep '/usr/sbin/hostapd -s -B -P /var/run/hostapd-radius.pid /etc/hostapd/hostapd.con[f]')
    if [ -z "$a" ]; then
      echo $(date +%F_%T%z) 'missing,restart.' >> /root/log.hostapd-radius
      /usr/sbin/hostapd -s -B -P /var/run/hostapd-radius.pid /etc/hostapd/hostapd.conf
    fi
    
  • 不用luci-app-frpc,改用xfrpc。默认xfrpc是disabled。自己写脚本启动更方便。
    xfrpc-2.1.606 还不太成熟,需要再等等。

---end---


转载注明来源: 本文链接 https://www.cnblogs.com/osnosn/p/12091292.html 来自osnosn的博客.

posted on 2019-12-24 14:34  osnosn  阅读(3903)  评论(0编辑  收藏  举报