检测IP变化

要确定客户端是否应该更新,它必须有一个可靠的方式来确定当前的IP地址是什么,以便比较最后一次更新的地址。以下有两种方式。

直接连接

客户端自行判断并获取其连接到互联网的公网IP地址。

网站IP检测

通过网站IP检测的方式,获取当前机器公网IP地址。

Oray DDNS提供CheckIP的服务,可通过下面地址检测: http://ddns.oray.com/checkip

更新协议

当客户端发现IP地址变化或是用户修改设置时,客户端应该进行更新。
所有的更新都基本于标准的HTTP请求发送。
服务器会传回一个返回代码,客户端需要解析。

HTTP请求

  • 主机名:ddns.oray.com

  • HTTP端口:80

  • HTTPS 端口:443

请求支持HTTP和基于SSL的HTTPS协议(HTTPS需要付费用户才能使用)
所有客户端必须发送一个完整的User-Agent文件头,用于区分不同的设备,空值或非法参数将导致请求失败。

例子

1.使用URL验证
适用于浏览器或应用程序(fetch, curl, lwp-request),可以在URL中包含验证信息。

http://username:password@ddns.oray.com/ph/update?hostname=yourhostname&myip=ipaddress
://username:password@ddns.oray.com/ph/update?hostname=yourhostname&myip=ipaddress

2.原始HTTP GET请求
实际的HTTP请求,类似下面的代码。
其中 base-64-authorization 请使用 Base64 加密 username:password 后的字符替换。

GET /ph/update?hostname=yourhostname&myip=ipaddress HTTP/1.0
Host: ddns.oray.com
Authorization: Basic base-64-authorization
User-Agent: Oray
HTTP/1.0
Host: ddns.oray.com
Authorization: Basic base-64-authorization
User-Agent: Oray

请注意必须使用GET请求,POST是不被允许的。

更新参数

目前仅允许提交以下参数

参数 说明
hostname 需要更新的域名,此域名必须是开通花生壳服务。多个域名使用,分隔,默认为空,则更新护照下所有激活的域名。例:hostname=test.oray.com,customtest.oray.com
myip 需要更新的IP地址,可以不填。如果不指定,则由服务器获取到的IP地址为准。

返回代码

代码列表

参数 说明
good 更新成功,域名的IP地址已经更新,同时会返回本次更新成功的IP,用空格隔开,如:good 1.2.3.4
nochg 更新成功,但没有改变IP。一般这种情况为本次提交的IP跟上一次的一样
notfqdn 未有激活花生壳的域名
nohost 域名不存在或未激活花生壳
nochg 更新成功,但没有改变IP。一般这种情况为本次提交的IP跟上一次的一样
abuse 请求失败,频繁请求或验证失败时会出现
!donator 表示此功能需要付费用户才能使用,如https
911 系统错误

花生壳http更新协议相关推荐

  1. 使用EJS脚本实现花生壳动态域名更新服务(二)

    此博客为9925.org的镜像,登录9925.org可以查看到最新博文. 原文出处:http://ily.so/AV3yQv 在<使用EJS脚本实现花生壳动态域名更新服务(一)>中,我们粗 ...

  2. 使用EJS脚本实现花生壳动态域名更新服务(一)

    此博客为9925.org的镜像,登录9925.org可以查看到最新博文. 原文出处:http://ily.so/FrQBne 花生壳提供了动态域名服务,动态域名可实现几乎实时生效的DNS解析服务,并且 ...

  3. DD-WRT自定义脚本更新花生壳DDNS

    N年以前买了一个tp-link 841n v7,一直用的还算可以吧,除了不定期重启路由器,不然网速慢的龟爬啊!这也是TP原厂固件的通病,于是刷了DD-WRT,话说DD确实很爽,除了功能强大之外,而且很 ...

  4. Ubnt EdgeMax 路由器使用花生壳的ddns更新方法

    使用SSH 登录 Ubnt,然后执行如下指令,将对应的参数修改成你自己的即可. configure set service dns dynamic interface pppoe1 service c ...

  5. 树莓派实现远程开机局域网电脑(WOL协议+etherwake+华硕主板Z97)秒变花生壳开机棒...

    一.花生壳映射树莓派 参考: http://www.cnblogs.com/EasonJim/p/6100181.html http://www.cnblogs.com/EasonJim/p/6100 ...

  6. 常见内网穿透-花生壳、神卓互联、FRP、ngork分析

    最近搜集和整理了当前主流的内网穿透工具,今天抽空来分析一下: 目前企业级主流的穿透技术是PHTunnel和Wangooe Tunnel技术 目前国内内网穿透企业级的服务商有花生壳和神卓互联,我接触过很 ...

  7. 私有云服务器搭建教程(保姆级)——台式电脑+ubuntu+docker+nextcloud+mysql+花生壳内网穿透

    文章目录 前言 一.Nextcloud是什么? 二.安装步骤 1. 安装 docker 1.1 更新apt 1.2 允许apt通过HTTPS使用存储库 1.3 添加Docker的官方GPG密钥 1.4 ...

  8. Mikrotik RouterOS-脚本-花生壳动态域名解析

    花生壳官方提供给用户的"如何在ROS中设置花生壳ddns(公网版)"错漏百出,根本无法使用. 为了解决此问题还特意学习了"Mikrotik RouterOS的脚本语法&q ...

  9. 如何访问云端的tcpserver_远程读写FTP文件,花生壳盒子+Serv-U快速实现远程访问...

    一场突发时疫,让远程办公成为应对突发事件的常态措施,随着在线化.数字化应用需求,远程办公也将逐渐成为企业的标配. 在没有公网IP.没办法设置映射的情况下,如何远程访问公司局域网的OA.ERP.视频监控 ...

最新文章

  1. 如何使用命令行拿到SAP Kyma的Lambda Function明细
  2. C语言讲义——字符串
  3. 【模板】差分约束算法
  4. java蓝桥杯 试题-基础练习-数列排序
  5. ubuntu tomcat上传目录权限_等了 3 年,Ubuntu Studio 终于有权限上传更新包
  6. git回退历史版本无法上传_Git实用教程(四) | Git本地库操作(查看提交历史、版本前进回退)...
  7. python操作redis集群是连接池么_python使用连接池操作redis数据库
  8. ASP.NET 自定义DataTable数据
  9. [WebApi] 捣鼓一个资源管理器--服务器端分割压缩图片
  10. 三阶魔方还原 - 只需7步6个公式
  11. 【托业】【新托业TOEIC新题型真题】学习笔记3-题库二-P5-6
  12. Ant Design Of react modal框动态控制footer展示或者隐藏
  13. window10虚拟机下载地址
  14. SpringBoot 存储图片 tomcat服务器存图片 数据库图片路径
  15. 入手佳能24-70mm f/2.8L
  16. 一个苦逼程序员日常的 10 个扎心瞬间
  17. 全球及中国化妆品市场销售格局与品牌竞争状况调研报告2022版
  18. 测向交叉定位matlab,一种基于角度信息的无源多站多目标测向交叉定位方法与流程...
  19. 使用matlab实现ISD悬架离散仿真分析
  20. 【软考网络管理员】2023年软考网管初级常见知识考点(2)- 数据通信技术

热门文章

  1. 如何用几何画板绘制立体圆锥体
  2. JavaScript 动态获取ajax 自动刷新接口内容
  3. 【LaTeX应用】LaTeX绘图
  4. 对DELL R720机子进行重做RAID 重装操作系统
  5. VCenter中安装虚拟机操作系统
  6. InstallShield Limited Edtion for VS2015
  7. UG10.0空间舱体四轴编程与建模视频教程
  8. 大众软件:2010中国电脑游戏产业报告
  9. Cache与内存二三事
  10. vcpkg + cmake + vscode 配置教程