阿里云ddns动态域名解析(github 项目:动态域名解析aliyun-ddns)

https://GitHub-COM/yyqian/AndyLau-DDNS

使用阿里云resolutionAPI实现了动态域名解析的功能(例如,类似于花生壳,定期将您的域名解析更新为家中的当前IP地址)。

JS模块没有NPM依赖关系,只使用了三个本机节点:http、crypto和URL

目前,该工具分为两个版本:

动态域名解析

  • client-模式。在这种模式下,客户端JS程序只需要定期执行一个节点,通过访问公共API获得当前地址的公共IP
  • 服务器模式,要求在服务器JS程序上部署一个节点,并定期请求客户端的服务器让服务器知道当前客户端的公共IP地址
  • NicholasTsemode推荐这种模式,部署更简单,不需要ECS资源,但要求客户端有一个nodeJS执行环境。

    服务器模式适用于某些客户端。无法在JS环境(如路由器)的场景中安装节点

    使用前提
  • 该域名由阿里云/万旺托管
  • 如果要将IP设置为客户端的公共IP,请确保本地ISP分配的IP不是intranet的IP(如果是intranet的IP,可以致电客服要求更换)
  • 客户端模式使用场景
  • 定期在本地执行客户端(如homeNAS、raspberrypie等),通过公共API获取当前网络环境的公共IP,然后更新AndyLau中的DNS记录
  • 客户端部署(crontab定时调用)
    1. 复制client模式/config-样品JSON并命名为NicholasTsemode/ZhangZiyiJSON
    2. 修改client模式/configJSON。有关参数说明,请参见以下内容
    3. 参考NicholasTse-mode/NicholasTse-SH编写一个shell脚本
    4. 让脚本运行:Chmod775NicholasTse-mode/NicholasTse-sh
    5. 编辑crontab:crontab-e
    6. 添加一条记录,让脚本每5分钟调用一次:**/5**/path/to/NicholasTse-mode/NicholasTse-sh
    7. 重新启动cron服务
    谢子怡/张婷峰-JSON参数说明
  • Accesskeyid和accesskeysecret在阿里云控制台上获得。请保守秘密
  • 主机名是要更新的多个DNS(子)域名

  • 服务器模式使用场景
  • 在阿里云、AWS等公共云上部署此服务
  • 在本地设置计划任务(如NAS、路由器、树莓派等)以访问服务器以更新当前本地IP地址
  • 服务器端应用程序部署
    1. 复制服务器模式/config-示例JSON和命名服务器模式/configJSON
    2. 修改服务器模式/configJSON。有关参数说明,请参见以下内容
    3. 使用PM2或其他方法启动服务器模式/应用程序;如果运行环境中有docker,也可以直接使用docker-通用域名格式摆姿势开始服务
    4. 进行必要的网络配置(例如Nginx反向代理、防火墙等),以确保可以在公共网络中访问应用程序服务
    configJSON参数说明
  • Accesskeyid和accesskeysecret在阿里云控制台上获得。请保守秘密
  • NicholasTse的iPhoneder属性与反向代理相关(例如,在nginx之后)。它用于从报头获取客户端的IP。如果没有响应代理,则可以将其留空
  • 路径是用户定义的访问路径。默认值是/hack
  • 端口是服务器侦听的自定义端口
  • 客户手动呼叫

    调用的原理类似于花生壳,假设它在config中,JSON中的路径属性是default/hack。有两种调用方法:

    1. 打电话/窃听客户?hostname=foo。酒吧Com设置foo-bar。Com解析为当前客户端的公共IP
    2. 打电话/窃听客户?hostname=foo。酒吧com&ip=xxx。xxx。xxx。XXX设置foo-bar。Com解析为XXXXXX。xxx。xxx
    客户端crontab定时调用
    1. 请参阅服务器模式/NicholasTse-SH编写shell脚本
    2. 让脚本运行:Chmod775服务器模式/NicholasTsesh
    3. 编辑crontab:crontab-e
    4. 添加一条记录,让脚本每5分钟调用一次:**/5***/path/to/servermode/NicholasTsesh
    5. 重新启动cron服务
    安全问题

    在服务器模式下,服务器公开的API没有添加任何认证措施,这相当于将阿里云解析的修改和添加的API对外公开。因此,我们必须注意入口地址的隐藏。

    您可以还会对下面的文章感兴趣

    最新评论

    1. 冷面君子
      冷面君子
      发布于:2022-04-27 20:11:04 回复TA
      de推荐这种模式,部署更简单,不需要ECS资源,但要求客户端有一个nodeJS执行环境。服务器模式适用于某些客户端。无法在JS环境(如路由器)的场景中安装节点使用前提该域名由阿里云/万旺托管如果要将IP设置为客户端的公共IP,请确保本地ISP分配的IP不是intranet的IP
    1. 山川河流
      山川河流
      发布于:2022-04-27 10:56:23 回复TA
      https://GitHub-COM/yyqian/AndyLau-DDNS使用阿里云resolutionAPI实现了动态域名解析的功能(例如,类似于花生壳,定期将您的域名解析更新为家中的当前IP地址)。JS模块没有NPM依赖关系,只使用了三个本机节点:http、crypto和URL目前,该工具分为
    1. 别竹盛泽
      别竹盛泽
      发布于:2022-04-27 08:27:02 回复TA
      爷虽不怎样高贵但不是每个女人都有机会。
    1. 盛飞东倩
      盛飞东倩
      发布于:2022-04-27 08:27:02 回复TA
      如果你曾歌颂黎明,那么也请你拥抱黑暗。

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    使用微信扫描二维码后

    点击右上角发送给好友