小米路由器SSH下安装DDNS-GO

文章目录


前言

什么是DDNS?

DDNS(Dynamic Domain Name Server)是动态域名服务的缩写。

目前路由器拨号上网获得的多半都是动态IP,DDNS可以将路由器变化的外网IP和固定的域名绑定,从而用户可以在外网通过该固定域名来访问路由器。

一般路由器系统都支持DDNS,但支持的域名服务商比较少,一般有花生壳等,明显不够用,这里我们安装DDNS-GO插件来实现DDNS。

DDNS-GO 是一个开源的动态域名解析工具,使用 Go 语言编写,旨在为用户提供一个简单、高效且易于使用的动态 DNS 服务,支持阿里云、腾讯云、Cloudflare、华为云、百度云、Porkbun、GoDaddy、Namecheap、NameSilo、Dynadot 等主流域名服务商

一、下载&安装DDNS-GO

本文用到的ddns-go 及scp工具都已经关联到文章资源上了

github项目地址:https://github.com/jeessy2/ddns-go/releases

AX6000路由器是64位,下载ddns-go_6.8.1_linux_arm64.tar.gz 的插件。

可以通过uname -m 来查看ARM 架构还是 AMD 架构

如果返回结果是 aarch64,则表示服务器是 ARM 架构;如果返回结果是 x86_64,则通常表示是 AMD 或 Intel 等 x86 架构

下载成功DDNS-GO后,解压上传到路由器/data/ddns-go目录,默认肯定没有的,我们需要新建这个目录:

mkdir /data/ddns-go

然后使用SCP工具将解压后的文件上传到路由器的 /data/ddns-go 目录下

上传ddns-go文件后,给这个文件赋权:

bash 复制代码
chmod +x /data/ddns-go/ddns-go

安装ddns-go命令:

bash 复制代码
/data/ddns-go/ddns-go -l :9876 -f 600 -c /data/ddns-go/ddns-go.yaml -s install

参数的含义如下:

-l :9876: 监听地址,表示 DDNS-GO 将在路由器的 9876 端口上提供 Web 服务。

-f 600: 同步间隔时间,表示每 600 秒(10 分钟)进行一次域名解析的同步操作。

-c /data/ddns-go/ddns-go.yaml: 指定配置文件路径,使用 /data/ddns-go/ddns-go.yaml 作为配置文件。

-s install: 安装并启动 DDNS-GO 服务。

DDNS-GO默认的端口就是9876,指定配置文件路径是测试发现,默认配置没有读写权限,所有有这个操作。

二、配置ddns-go

首先得有一个域名,我这里使用的是阿里云。也可以用其他服务商的。

注册AccessKey

首先登录个人的阿里云账号,我的是RAM账户。各位的可以使用主账户进行使用AccessKey。

点击ACCESSKEY管理

创建你的AccessKey,并记录下来。

使用路由器IP + 9876 端口访问插件,第一次登录,用户名和密码将成为管理员账号和密码

将AK和SK填写进去

然后选择IPv4或IPv6配置域名保存即可

设置开机启动

在/data/ddns-go目录下创建一个sh文件

bash 复制代码
vim /data/ddns-go/check_ddns.sh 

添加如下内容

bash 复制代码
#!/bin/sh

if netstat -tunlp | grep ':9876' > /dev/null; then
    echo "DDNS-GO 已在运行,无需启动。"
else
    echo "DDNS-GO 未运行,正在启动..."
    /data/ddns-go/ddns-go -l :9876 -f 600 -c /data/ddns-go/ddns-go.yaml -s install > /data/ddns-go/ddns-go.log 2>&1 &
fi

将脚本添加到定时任务中

bash 复制代码
crontab -e 
#追加如下内容
*/5 * * * * /data/ddns-go/check_ddns.sh 
相关推荐
互联网搬砖老肖2 小时前
运维打铁: MongoDB 数据库集群搭建与管理
运维·数据库·mongodb
Antonio9152 小时前
【音视频】HLS简介与服务器搭建
运维·服务器·音视频
輝太くん3 小时前
ssh远程服务器
ssh
艾伦_耶格宇3 小时前
【docker】-1 docker简介
运维·docker·容器
R.X. NLOS3 小时前
VS Code远程开发新方案:使用SFTP扩展解决Remote-SSH连接不稳定问题
运维·服务器·ssh·debug·vs code
cuijiecheng20184 小时前
Ubuntu下布署mediasoup-demo
linux·运维·ubuntu
jingyu飞鸟7 小时前
linux系统源代码安装apache、编译隐藏版本号
linux·运维·apache
2401_858286118 小时前
OS15.【Linux】gdb调试器的简单使用
linux·运维·服务器·开发语言·gdb
c30%0010 小时前
内网渗透——红日靶场五
运维·服务器
zjw_rp10 小时前
centos停止维护后更换yum源
linux·运维·centos