Skip to main content

Router 上常用的命令

温度

cat /sys/class/thermal/thermal_zone0/temp
# or
/sbin/tempinfo

也可参考:https://bughero.net/archives/openwrt_cpu_temp.html

备份和恢复

a. Overlay

如果在没有重刷固件的情况下,我建议仅对 /overlay 进行打包并备份
https://www.v2ex.com/t/131986#r_1326334

# 备份
tar -czvf /tmp/overlay_backup.tar.gz /overlay

# 恢复
rm -rvf /overlay/*
cd / && tar -xzvf /tmp/overlay_backup.tar.gz

b. firmware

https://www.v2ex.com/t/131986#r_1326324

# 查看 firmware 分区所对应的 mtd 设备
cat /proc/mtd

# 比如:
dev: size erasesize name
mtd0: 00040000 00020000 "u-boot"
mtd1: 00040000 00020000 "u-boot-env"
mtd2: 00040000 00020000 "caldata"
mtd3: 00080000 00020000 "pot"
mtd4: 00200000 00020000 "language"
mtd5: 00080000 00020000 "config"
mtd6: 00300000 00020000 "traffic_meter"
mtd7: 00200000 00020000 "kernel"
mtd8: 07700000 00020000 "ubi"
mtd9: 07900000 00020000 "firmware"
mtd10: 00040000 00020000 "caldata_backup"

# 这里就是mtd9
# 备份固件文件 firmware_backup.bin,在 /tmp 目录下
dd if=/dev/mtd9 of=/tmp/firmware_backup.bin

# 恢复该固件, 将 firmware_backup.bin 上传至 /tmp,恢复完成路由器会自行重启
mtd -r write /tmp/firmware_backup.bin firmware

c. 通用 NOR 备份

https://openwrt.org/zh/docs/guide-user/installation/generic.backup

nftables

创建规则

劫持 UDP 53 到 530 端口:

# 创建表
nft add table ip dns-hack

# 创建链
nft add chain ip dns-hack prerouting { type nat hook prerouting priority -0 \; }

# 添加规则
nft add rule ip dns-hack prerouting udp dport 53 redirect to 530

删除规则

# 删除表
nft delete table ip dns-hack

# 删除链
nft delete chain inet fw4 dstnat

列出指定 表,链 下的 handle

nft --handle list chain inet fw4 dstnat

# inet: 协议族(可以是 ip, ip6, inet 等)
# fw4: 表名
# dstnat: 链名

e.g:

table inet fw4 {
chain dstnat { # handle 18
type nat hook prerouting priority dstnat; policy accept;
meta nfproto { ipv4, ipv6 } udp dport 53 counter packets 563 bytes 40847 redirect to :530 comment "!homeproxy: DNS hijack" # handle 500
}
}

删除指定 表,链 下的 handle

nft delete rule inet fw4 dstnat handle 500

AES Benchmark

主要用来查看加解密性能,这对想要打造一个高速国际公路很有帮助
https://openwrt.org/docs/guide-user/perf_and_log/benchmark.openssl

单核:

openssl speed -evp aes-128-gcm

多核:

openssl speed -multi $(cat /proc/cpuinfo |grep processor | wc -l) -evp aes-128-gcm