随身wifi折腾入门(番外)-- debian优化使用

教程经验 · 2023-04-18 · 2478 人浏览

注意:ipv6部分未完篇,但方法可行,如有建议可评论区留言,后面随缘更新...

本来这篇文章是为了ipv6热点而写的教程,后面发现方法很多但是争议也多,因此干脆作为日常使用及优化的记录篇,在本篇可以看到使用sim卡、切卡、网桥、led控制、更改usb模式等多个玩法,可按需学习使用...

环境与工具

本文使用 酷安@jsbsbxjxh66 大佬的ufi001b-debian超频版1.2Ghz Debian进行修改

使用esim卡环境(如使用实体卡可跳过切esim卡步骤)

使用电脑进行连接(需打开cmd进行adb操作,以及ssh工具)

制作网桥

本节修改内容:
网关:192.168.2.1
选卡:esim
网桥:br0

新建网桥br0

先使用 adb shell 删除全部的连接,如 nmcli c del wifi usb

使用ssh或者adb shell连接后,使用指令新建个网桥,并新建两个从机,为usb与wifi,执行指令:

nmcli c add type bridge ifname br0 con-name br0 ipv4.method manual ipv4.addresses 192.168.2.1/24 ipv4.gateway '' ipv4.dns '223.5.5.5'
nmcli c add type ethernet ifname usb0 con-name usb-share
nmcli c add type bridge-slave ifname usb-share con-name usb-share master br0

修改默认网关

修改 /etc/dnsmasq.conf 最后两行

listen-address=192.168.2.1
dhcp-range=192.168.2.10,192.168.2.254,12h

执行重启 adb reboot ,重启后再次输入 adb shell 进入终端,此时usb是无IPV4分配的,执行指令

systemctl enable dnsmasq.service
systemctl start dnsmasq.service

再次重启后,即可分配到usb的ipv4,可以通过ssh连接

添加wifi网络

通过ssh连接debian后,执行 nmtui ,选择 编辑连接 ,选择网桥br0点进去,手动添加一个wifi连接。

常用修正

接下来的内容按需采取,ipv6部分存在争议,可自行尝试

替换 HT40 驱动(可选)

将驱动文件上传到root目录,执行指令覆盖原驱动即可

mv wcn36xx.ko /lib/modules/5.15.0-handsomekernel+/kernel/drivers/net/wireless/ath/wcn36xx/

替换基带文件

使用sftp连接至debian,将之前全分区备份中的 NON-HLOS.bin 文件使用7z打开或者软碟通打开,将里面的IMAGE拖出来,并通过sftp上传到debina root目录

执行指令,替换 /lib/firmware 内的驱动文件

mv IMAGE/* /lib/firmware/

切换esim卡

sim:sel 为esim卡的位置,如果要切换到sim卡槽,一般为 sim:sel2 ,可以用指令看一下列表内是否有sim:sel2

ls /sys/class/leds/

如果没有 sim:sel2 则默认外置卡槽,可按需切换esim

输入指令 mmcli -m 0 ,如果显示有内容但显示 sim-missing ,此时则为卡槽模式,可插入自己的卡。

切换esim卡可直接修改 /etc/rc.local 文件,使开机自动修改

!/bin/sh -e
echo 255 > /sys/class/leds/sim\:sel/brightness
modprobe -r qcom-q6v5-mss
sleep 1
modprobe qcom-q6v5-mss
sleep 1
systemctl restart rmtfs
sleep 1
systemctl restart ModemManager
exit 

保存后输入 reboot 重启系统,重启后输入 mmcli -m 0 ,如出现 state: connected 即为连接正常。

同时在重启后检查wifi是否以及开启,执行 nmcli 后是否出现modem连接信息,如果出现连接ip等信息即为一切顺利(如下图)。如果前面不顺利,后面设置ipv6转发会出问题。

重启sim卡

如果出现输入 mmcli -m 0 后,显示卡未连接disconnect或者未发现卡,可以使用sim卡重启大法尝试一下。如果多次出现,可以试试看加入到开机启动脚本中 rc.local(自行添加sleep 1延时)

systemctl stop ModemManager
qmicli -d /dev/wwan0qmi0 --uim-sim-power-off=1
qmicli -d /dev/wwan0qmi0 --uim-sim-power-on=1
systemctl start ModemManager

查看emmc芯片寿命

棒子debian系统可通过执行指令查看emmc寿命,数值仅参考,也有部分型号查看为0x00的,为芯片未定义,0x01为最佳寿命,同理数值越大寿命越低,该值仅供参考

cat /sys/class/mmc_host/mmc0/mmc0\:0001/life_time

切换为USB模式

执行指令可断开棒子usb共享,更改为host主机模式,可用于棒子专用拓展坞使用

echo host > /sys/kernel/debug/usb/ci_hdrc.0/role

相反的,也可以切换回网络共享模式

echo gadget > /sys/kernel/debug/usb/ci_hdrc.0/role

快速开启一个wifi

如果棒子无wifi或者误删,可以用这个指令在adb shell内快速创建一个wifi热点,名字为4G-wifi,密码为123456789

nmcli d wifi hotspot ifname wlan0 con-name wifi ssid 4G-wifi band bg channel 11 password 123456789

关闭全部led指示灯

如果觉得led灯太闪(没壳的会显得很亮),可以执行指令关闭led,同时可以放rc.local开机启动自动关闭led灯

echo none > /sys/class/leds/red\:os/trigger
echo none > /sys/class/leds/blue\:wifi/trigger
echo none > /sys/class/leds/green\:internet/trigger

AP启用ipv6共享(待补充)

输入指令启用ipv6转发,执行过程中可能会掉线ssh,建议在 adb shell 内执行

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf 
echo "net.ipv6.conf.all.forwarding=1" >> /etc/sysctl.conf 
echo "net.ipv6.conf.all.proxy_ndp=1" >> /etc/sysctl.conf 
echo "net.ipv6.conf.all.accept_ra=2" >> /etc/sysctl.conf 
sysctl -p 
nmcli connection up br0
systemctl restart dnsmasq.service
nmcli connection up usb

安装依赖

apt install radvd ndppd dhcpcd5

编写配置文件

br0为要监听的网络

/etc/radvd.conf.demo
interface br0 {
    AdvSendAdvert on;
    MinRtrAdvInterval 3;
    MaxRtrAdvInterval 10;
    AdvManagedFlag off;
    AdvOtherConfigFlag off;
    prefix REPLACEIPV6 {
        AdvOnLink on;
        AdvAutonomous on;
        AdvRouterAddr off;
    };
};
/etc/ndppd.conf.demo
route-ttl 30000
proxy wlan0 {
    router yes
    timeout 500
    rule REPLACEIPV6  {
        auto
    }
}
/etc/dhcpcd.conf
interface br0
    ipv6
    ipv6rs
    ipv6ra_other_information

启动服务

systemctl restart radvd
systemctl restart ndppd
systemctl restart dhcpcd

理论上v6部分就结束了,但是试过不同设备有几率并不能分发地址,还存在争议,也可以参考这位大佬的文章开启v6共享:https://zyyme.com/msm8916-wifi.html

本篇暂时完结,不研究debian了,后续随缘更新...

教程 Linux 刷机
Theme Jasmine by Kent Liao
beian
皖公网安备34122202000364号