背景
如何通过公网连接家里的个人电脑呢?
答:有一个公网IP就可以了,IPv4和IPv6都行。通常,IPv6是免费的,而IPv4由于资源较为紧张,一般都是收费的。
难道本文到这里就结束了吗?
答:显然不是!IP的设定是针对机器的,从可读性和记忆性上对人不太友好。为了解决这个问题,DNS也就应运而生。将DNS域名与公网IP绑定后,访问域名就和访问IP的效果一样,这就解决了可读性和记忆性问题。
那么,有域名和公网IP就行了吗?
答:不行。由于运营商的种种原因,家用宽带的IP是经常变化的,需要我们不断的将域名绑定到新的IP上,这显然是极为麻烦的。DDNS就是这个作用。
环境介绍
- DNS域名:阿里云域名,其他域名也行
- ddns-go:一个ddns开源项目,可自己参考DNS域名的API实现
- 操作系统:windows11
ddns-go
下载方式
下载地址:github下载地址
安装方式
安装方式参考项目说明,具体操作如下:
- 下载并解压 ddns-go
- 以管理员打开cmd,运行.\ddns-go.exe -s install。这一步是直接安装、运行、并设置为开机自启动。
配置方式
- 浏览器访问ddns-go管理页面:http://127.0.0.1:9876
- 登录需要输入用户名和密码,如果是第一次登录,会直接注册并登录
- 如下图所示:AccessKey ID/Secret可以认为是管理DNS域名的用户名和密码,在对应的DNS服务商获取;Domains是DNS域名,其中获取IP方式默认即可;其他中的用户名,就是登录时的用户名,注释有问题。若后续登录不上,可修改 C:\Users\<用户名>\.ddns_go_config.yaml,然后重启ddns-go即可。
获取DNS服务商的AccessKey ID/Secret
以阿里云域名为例:
- 登录阿里云RAM访问控制界面:阿里云RAM访问控制链接
- 创建用户,并勾选使用永久AccessKey访问
- 选择添加权限
- 以最小权限的思想,在策略类型中输入dns,并选择其中的云解析DNS只读访问和管理权限
- 将该RAM用户的AccessKey ID/Secret复制到ddns-go的管理界面即可
最终效果呈现
- 阿里云云解析DNS有个人电脑的IPv4和IPv6记录
- ddns-go管理页面有上送阿里云的日志记录
《完》