小虫记之DDNS

 

  继上次解决iptables问题之后,又遇到了DDNS测试的问题。DDNS,顾名思义,就是动态DNS的意思,相对静态DNS的固定域名对应固定IP而言,动态DNS可以将固定域名和动态IP进行绑定,这样当IP地址变化后仍然可以通过域名访问到变化后的IP地址。

  假设如下情景:

  主机 HOSTA  HOSTB

  DNS服务器 DNS-SERVER

  HOSTA对应域名 WWW.HOSTA.DOMAIN.COM

  HOSTB对应域名 WWW.HOSTB.DOMAIN.COM

  DNS-SERVER上存有HOSTAHOSTB的域名及其对应的IP地址

 

  正常DNS访问过程:(以HOSTA访问HOSTB为例)

  1 HOSTA已知HOSTB的域名 WWW.HOSTB.DOMAIN.COM,但不知其IP地址

  2 HOSTA通过DNS协议查询DNS-SERVER获得HOSTBIP地址

  3 HOSTA使用HOSTBIP地址对其进行访问

 

  问题:如果HOSTBIP地址是动态获取的或者因为其他原因发生了改变,此时HOSTA还按照之前的DNS访问过程访问HOSTB的话,将会因为域名对应的IP地址没有更新而失败。这一问题可通过DDNS解决。

  使用DDNS访问过程:

  1 HOSTBIP地址发生变化后会利用DDNS协议将新的IP地址告诉DNS-SERVERDNS-SERVER将其域名WWW.HOSTB.DOMAIN.COM 对应的IP地址换为HOSTB的新的IP地址

  2 HOSTA仍然通过DNS协议向DNS-SERVER查询WWW.HOSTB.DOMAIN.COM 对应的IP地址,此时HOSTA获得HOSTB更新后的IP地址

  3 HOSTA使用HOSTB新的IP地址对其进行访问

 

  从上面的过程可以看出,DDNS起了关键作用。目前许多网关防火墙设备上都已提供这一服务。因为IP地址资源的紧缺,对于那些没有静态公网IP的网络用户来说,DDNS就成为他们对外发布自己服务的有利工具。

 

  目前提供DDNS服务的运营商有不少,像国内比较常用的花生壳。这些服务商大多也都提供免费DDNS服务,用户只需到其网站上进行注册就可以获取几个免费的域名。不同的服务商使用的协议是不同的,下面以DYNDNS为例来简单介绍一下其客户端进行域名更新的过程。

 

  1 我们需要到其官网上申请一个免费的域名用来进行测试。申请过程中可以在其网站上看到设备的外部IP,直接将该IP对应到我们申请的域名上。

  2 下载安装客户端软件INADYN,是一个开源客户端。

  3 ping我们刚申请的域名,可以看到设备对应的IP地址。

  4 改变设备的外部IP。这可以通过重新获取外部IP地址或其他方法完成(比如换个地方)。完成后同样可以在DYNDNS官网上查看设备的外部IP地址,确认已经改变。

  5 运行客户端软件进行更新。

Inadyn --background –u username -p password --update_period 60000 --alias host.dyndns-blog.com

参数中正确输入申请时填写的用户名,密码以及域名

  6 再次ping域名,查看IP地址是否是改变后的外部IP,如果是说明之前一步的更新操作成功。

 

  从协议的角度来看inadyn的更新操作如下:(IP地址用xxx.xxx.xxx.xxx代替,域名用yourdomain.com代替,用户名和密码用*****代替)

  1 首先获取设备的外部IP地址

  GET http://checkip.dyndns.org/ HTTP/1.0

  响应中包含有设备的外部IP

  <html><head><title>Current IP Check</title></head><body>Current IP Address: xxx.xxx.xxx.xxx</body></html>

  2 更新域名对应的IP地址。

  GET http://members.dyndns.org/nic/update?system=dyndns&hostname=yourdomain.com&myip=xxx.xxx.xxx.xxx&wildcard=ON&mx=yourdomain.dyndns-blog.com&backmx=NO&offline=NO HTTP/1.0

  Host: members.dyndns.org

  Authorization: *****

  User-Agent: inadyn/1.96 inarcis2002@hotpop.com

  响应返回成功信息

  good xxx.xxx.xxx.xxx

 

  更新过程是不是很简单啊!当然也可以使用https对连接进行加密,不过由于 免费+测试 的原因,就不搞得那么复杂了。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值