配置openwrt国内源

cat /etc/opkg/distfeeds.conf

# 版本号,进入软路由的时候会显示:
# OpenWrt 18.06.1, r7258-5eb055306f

# 查看cpu
# ar71xx可以通过原来文件的配置知晓

src/gz glinet_nand http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/targets/ar71xx/nand/packages
src/gz glinet_generic http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/targets/ar71xx/generic/packages
src/gz glinet_mikrotik http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/targets/ar71xx/mikrotik/packages
src/gz glinet_tiny http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/targets/ar71xx/tiny/packages

# cat /proc/cpuinfo 查看 cpu model, 这里显示的是: MIPS 24Kc V7.4
src/gz mips_24kc_base http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/packages/mips_24kc/base/
src/gz mips_24kc_luci http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/packages/mips_24kc/luci/
src/gz mips_24kc_packages http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/packages/mips_24kc/packages/
src/gz mips_24kc_routing http://mirrors.ustc.edu.cn/openwrt/releases/18.06.1/packages/mips_24kc/routing/

# 更新
opkg update
  • 默认的原文

root@GL-AR300M:~# cat /etc/opkg/distfeeds.conf
src/gz glinet_core https://fw.gl-inet.com/releases/kmod-3.4/ar71xx/nand
src/gz glinet_base https://fw.gl-inet.com/releases/packages-3.x/ar71xx/base
src/gz glinet_gli_pub https://fw.gl-inet.com/releases/packages-3.x/ar71xx/gli_pub
src/gz glinet_packages https://fw.gl-inet.com/releases/packages-3.x/ar71xx/packages
src/gz glinet_luci https://fw.gl-inet.com/releases/packages-3.x/ar71xx/luci
src/gz glinet_routing https://fw.gl-inet.com/releases/packages-3.x/ar71xx/routing
src/gz glinet_telephony https://fw.gl-inet.com/releases/packages-3.x/ar71xx/telephony
src/gz glinet_3.105 http://fw.gl-inet.com/releases/packages-3.x/ar71xx/sync_3.105
src/gz glinet_glinet https://fw.gl-inet.com/releases/packages-3.x/ar71xx/glinet
  • 语言包-中文

opkg install luci-i18n-base-zh-cn
  • 配置dnsmasq,最好不要用这个

LAN/WAN的[使用自定义的 DNS 服务器]会直接影响到 /etc/resolv.conf 会成为Dnsmasq的上游服务器
[接口 » LAN >> DHCP 服务器 >> 高级设置 >> DHCP 选项]表示通告不同的 DNS 服务器给客户端。即不使用路由器地址, 默认是路由器的地址


# dnsmasq是开启dns和dhcp服务器的, 如果使用AdGuardHome那么53端口就会被占用服务器
ps|grep dnsmasq
/usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf.cfg01411c -k -x /var/run/dnsmasq/dnsmasq.cfg01411c.pid

# 参看端口占用,默认是dnsmasq的,可以修改为adguardhome的
# 先关闭Dnsmasq的DNS服务[DHCP/DNS][高级设置][DNS 服务器端口]设置为0
netstat -anp|grep :53
/etc/init.d/dnsmasq start
# 查看所有服务
service

# 修改上游dnsfwq, 配置文件
vim /etc/dnsmasq.conf
# 重启时清除缓存
clear-on-reload
# 上游服务器, 无法解析黑名单, 还是推荐adhome
server=116.204.106.129
server=223.5.5.5
server=223.6.6.6
# 重启
/etc/init.d/dnsmasq restart
# 测试
nslookup baidu.com
nslookup wrt.leng2011.jcleng

# 系统的dns服务器, 只设置为本机
cat /etc/resolv.conf
nameserver 127.0.0.1


## 修改dhcp服务器
# 查看运行端口
netstat -anp|grep :67
  • 路由器配置使用dns服务器和dhcp

DNS配置
通常在路由器使用adguardhome是5553重定向到[作为dnsmasq的上游服务器], 端口还是5553, 其他不变
# 查询日志的客户端全部会变成 localhost 才正常

DHCP配置
# IPv4
网络--接口--LAN--DHCP服务器--高级设置--DHCP选项
输入一个6,接着英文字符的逗号,最后再输入DNS服务器地址192.168.8.1,比如:
6,192.168.8.1
# IPv6
网络--接口--LAN--DHCP服务器--IPV6设置--通告的DNS服务器处填入你的AGH IPV6地址
fe80::9683:c4ff:fe03:3055
# 关闭IPv6
网络--接口--设备--br-lan-配置--常规设备选项--启用 IPv6 去掉

我的ar300m固件使用

# 下载固件 openwrt-ath79-nand-glinet_gl-ar300m-nand-squashfs-factory.img
https://github.com/jcleng/gl-ar300m-ext-nand/releases
https://downloads.openwrt.org/releases/21.02.0-rc1/targets/ath79/nand/

# 按住reset按键之后插入电源,等到两个绿灯长亮之后放开
# 网线接入wan口,电脑手动设置地址 192.168.1.x段

# 访问192.168.1.1进入刷写界面, 上传img完整固件刷写即可

# 刷写完成之后自动启动,红灯闪烁,一致等待即可,闪烁就是开机启动,比较慢

# 注意: 如果存在主路由器是192.168.1.x段的,那么需要修改本路由的LAN口,设置为192.168.2.1,使用非主路由的ip段,否则不能上网
# 电脑和ap重新获取ip即可上网


Nand和Nor系统切换

# 方法1:设置启动计数
# 路由器将始终尝试启动Nand固件。 但如果它失败3次,它将尝试启动到Nor固件。 如果要引导到Nor固件,可以通过设置uboot env告诉路由器它已经无法启动3次。 为此,您可以在SSH终端中使用以下命令。
fw_printenv|grep bootcount
fw_setenv bootcount 3
reboot
# 无论您使用哪种固件,如果要引导至Nor固件,每次都需要执行此操作。 否则在固件启动后,它将重置bootcount变量,下次启动将始终尝试启动Nand固件。

# 方法2:使用开关
# 这仅适用于新的uboot(2017年3月起)。
# 首先ssh到路由器并设置uboot env boot_dev
fw_printenv|grep boot_dev
fw_setenv boot_dev on
reboot
# 然后,当路由器启动时,路由器将选择使用切换开关启动哪个固件。 1.左侧(靠近重置按钮) - > Nand flash 2.右侧 - > Nor flash
# 要禁用使用开关选择固件功能,请清除boot_dev变量。
fw_printenv|grep boot_dev
fw_setenv boot_dev
reboot
  • openwrt中继

多个ap进行控制,防止上游热点消失之后没有ap了

# 通常是先多加几个wifi,至少2个
# 然后再进行桥接, 会默认把第一个ap作为可连接的wifi

# 创建 [网桥设备] 名称br1
# 再创建lan1静态ip为不同段如192.168.7.1, 设备使用br1
# 然后设置[无线]第二个ap的[网络]使用lan1(之前是未指定), 注意第二个ap是不能外网的(且没有dhcp, 手动设置7段ip),只有第一个ap可以
# 重启
reboot
# 连接第二个wifi之后就可以通过7段ip的进行访问管理了

# 连接wifi
[网络][无线][radio0][扫描]连接进主路由,会生成一个[SSID: 主路由 | 模式: Client]的无线
编辑这个客户端,把[接口配置][常规配置][网络]指派到wwan上,保存并生效之后,可以在[网络][接口]里面看到WWAN接口[协议: DHCP 客户端][IPv4: 192.168.1.15/24]是主路由的地址

# 共享wifi到lan, 多的[无线可以删除]
[网络][无线][radio0][添加]
[接口配置][常规配置][网络][lan],配置ESSID网络名称, 然后配置对应的[无线安全], 密码[密钥],保存生效即可

# 桥接使用随机mac: 23.05+以上支持
[无线][无线概况][模式: Client][编辑][接口配置][高级设置][MAC 地址][随机生成]

../../_images/Screenshot_20231126_231848.png

  • x86 lede

src/gz openwrt_koolshare_mod_core https://openwrt.proxy.ustclug.org/snapshots/targets/x86/64/packages
src/gz openwrt_koolshare_mod_base https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/base
src/gz openwrt_koolshare_mod_luci https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/luci
src/gz openwrt_koolshare_mod_packages https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/packages
src/gz openwrt_koolshare_mod_routing https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/routing
src/gz openwrt_koolshare_mod_telephony https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/telephony
  • mips_24kc lede

wget https://openwrt.proxy.ustclug.org/releases/22.03.5/targets/ath79/nand/openwrt-22.03.5-ath79-nand-glinet_gl-ar300m-nand-squashfs-factory.img

src/gz openwrt_koolshare_mod_core https://openwrt.proxy.ustclug.org/releases/22.03.5/targets/ath79/nand/packages/
src/gz openwrt_koolshare_mod_base https://openwrt.proxy.ustclug.org/releases/22.03.5/packages/mips_24kc/base
src/gz openwrt_koolshare_mod_luci https://openwrt.proxy.ustclug.org/releases/22.03.5/packages/mips_24kc/luci
src/gz openwrt_koolshare_mod_packages https://openwrt.proxy.ustclug.org/releases/22.03.5/packages/mips_24kc/packages
src/gz openwrt_koolshare_mod_routing https://openwrt.proxy.ustclug.org/releases/22.03.5/packages/mips_24kc/routing
src/gz openwrt_koolshare_mod_telephony https://openwrt.proxy.ustclug.org/releases/22.03.5/packages/mips_24kc/telephony
  • busybox/toybox

https://busybox.net/downloads/binaries/1.17.2/
https://landley.net/toybox/bin/

# 批量创建软链接到当前目录
./toybox-aarch64 | xargs echo -n | xargs -d " " -I{} ln -s $(pwd ./toybox-aarch64)/toybox-aarch64 {}
# 要查看当前安装的固件可以读取哪些文件系统的话,请输入
cat /proc/filesystems

# 对应的编译选项 [Kernel modules->Filesystems]
CONFIG_PACKAGE_kmod-fs-ext4=y
CONFIG_PACKAGE_kmod-fs-exfat=y
CONFIG_PACKAGE_kmod-fs-btrfs=y
CONFIG_PACKAGE_kmod-fs-ntfs=y
CONFIG_PACKAGE_kmod-fs-vfat=y
  • 使用uci命令修改openwrt配置

uci show
uci show network

# 设置lan口数据, 才能进行ip访问
uci set network.lan.proto='static'
uci set network.lan.ipaddr='172.18.0.101'
uci set network.lan.netmask='255.255.255.0'
uci set network.lan.gateway='172.18.0.1'
uci set network.lan.dns='8.8.8.8'
# 提交配置
uci commit network

# 重启网络以生效
/etc/init.d/network reload