{{format('0')}} {{format('312')}} {{format('2833')}}

记一次华硕RT-N66U/R路由器DDNS实现方法 [ 技术杂谈 ]

九叶的小窝 文章 正文

As Long As You Love Me.
分享

九叶

{{nature("2022-06-26 11:26:23")}}更新

1. 问题

半个月前我在异地调试老家里的软路由想扩容 / 根目录容量

然后挂载分区链接之后忘记取消路径链接了

不小心输入了[font color="#DC143C"]rm -rf xxx[/font]命令

直接等同于[font color="#DC143C"]rm -rf xxx[/font]系统炸了 但是网络等其他的服务都暂无异常 我深知自己干了什么哈哈

只要老家里断电就断网 因为有人在租我的私人服务器所以我一定不能让网络出问题

在昨天我就回家 等他们有时间了 晚上十一点开始重装软路由的系统

我拿出笔记本后发现 我忘记带键盘了!! 我没键盘咋重装啊

还好软路由的引导是坏的 我插入引导盘 可以进入PE 我通过屏幕键盘成功刷写固件

然后!!!! 然后!!!! 又是分区!!! 我分区扇区大小写错了!!!!!! 导致系统又进不去了

但是在当下的情况更加严重 因为系统引导没问题 我没有键盘无法进入BIOS更改启动项

所以直接放弃 将目光对准家里的旁路由下手

通过旁路由跑linux命令更新IP到DNSPod

就有了这个笔记

2. 解决

2.1 准备工作

2.1.1 登录DNSPod获取Access Token

登录DNSPod后点此链接

image.png

2.1.2 开启RT-N66U/N的SSH功能

高级设置 -> 系统管理 -> SSH Daemon -> Enable SSH 改为LAN或者LAN+WAN

(如果有外网访问需要则开启LAN+WAN)

image.png

2.2 获取DomainId 和 RecordId

curl 'https://dnsapi.cn/Domain.List' -d 'login_token=19xxxx,20b06f04b6fd377exxxx&format=json'

详细入参及返回代码解释

从返回的json格式中寻找

domains -> name 为你需要的域名 复制他的ID

例如我这边为 825116xx

拿到DomainId后我们需要通过DomainId获取RecordId

curl 'https://dnsapi.cn/Record.List' -d 'login_token=19xxxx,20b06f04b6fd377exxxx&domain_id=825116xx'

详细入参及返回代码解释

例如我这边为 1108811xxx

2.3 在jfss分区创建脚本

使用windows自带的powershell ssh连接软路由或者通过其他ssh工具操作

PS C:\Users\JiuyeXD> ssh Jiuye@192.168.1.1 -p 22
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
ECDSA key fingerprint is SHA256:Hu8aWxdf5D4hiif8wwDBCNRVz57VoEcZI2aTyHaPdV4.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.1' (ECDSA) to the list of known hosts.
Jiuye@192.168.1.1's password:

ASUSWRT-Merlin RT-N66U 380.67-X7.6 Fri Aug 18 03:10:12 UTC 2017
Jiuye@RT-N66R-B1E0:/tmp/home/root# cd /
Jiuye@RT-N66R-B1E0:/# cd jffs
Jiuye@RT-N66R-B1E0:/jffs# cd scripts/
Jiuye@RT-N66R-B1E0:/scripts# vi dnspod.sh

打开文本编辑器 键入下列代码

#!bin/sh
ip=$(curl http://members.3322.org/dyndns/getip)
curl -s -X POST  https://dnsapi.cn/Record.Modify -d 'login_token=19xxxx,20b06f04b6fd377exxxx&format=json&record_line=默认&domain_id=825116xx&value='$ip'&record_type=A&record_id=1108811xxx&sub_domain=二级域名'

然后退出并保存

# 设置权限
chmod -x dnspod.sh

进入网页后台

一般设置 -> Tools -> Scripts

将脚本添加为WANSTART和超时时间(多久执行一次)

添加完成即可自动更新

脚本类型 参数 脚本地址 操作
WANSTART /jffs/scripts/dnspod.sh [ - ]
超时时间 600 /jffs/scripts/dnspod.sh [ - ]

image.png

评论 0
0
{{userInfo.data?.nickname}}
{{userInfo.data?.email}}
TOP 2
Minecraft | [1.12.2] 核电工艺模拟器 1.2.25 —— 汉化版

{{nature('2021-12-07 15:29:00')}} {{format('2454')}}人已阅读

TOP 3
SSM搭建Spring单元测试环境

{{nature('2021-01-31 20:01:00')}} {{format('1047')}}人已阅读

TOP 4
dispatcher-servlet.xml文件配置模板

{{nature('2020-12-11 21:17:00')}} {{format('962')}}人已阅读

TOP 5
Windows平台Nacos启动报错无法创建Bean实例

{{nature('2021-04-22 15:16:00')}} {{format('941')}}人已阅读

目录

标签云

Linux DDNS

一言

# {{hitokoto.data.from || '来自'}} #
{{hitokoto.data.hitokoto || '内容'}}
作者:{{hitokoto.data.from_who || '作者'}}
自定义UI
配色方案

侧边栏