[旧日志恢复……]
如果要在公司或者其他地方访问家中的树莓派,在自己有闲置域名的情况下如果能通过域名访问那么是再方便不过了。
由于在家使用一般都是ADSL,拥有固定IP基本是很困难的一件事情,动态域名解析就成了唯一的选择。提供动态域名解析的之前有花生壳,但是使用花生壳的服务个人感觉整个过程并不是特别友好,在树莓派上的配置文件个人觉得还是比较不方便的。相比之下 DNSPod 的真是让人省心了很多,它所提供的API调用十分方便,通过API可以进行创建域名记录、修改域名记录等操作,并且官方提供了Python脚本,只需要简单的配置就能实现动态域名解析的效果。插一句,DNSPod提供的API真是让这项需求变得简单了许多。
虽然已经有了官方的脚本,我自己简单的进行了一些小小的改造,代码可以在我的 Github 上。这里主要修改的是配置方式和获取外网IP的方法。在这里我是用的是ip138提供的获取外网IP的方法:
1 |
http://iframe.ip138.com/ic.asp |
通过请求此页面之后,可以通过文本解析得到此页面中包含的树莓派的外网IP地址,之后写入DNSPod上建立的记录之中。使用此脚本的方法请参加我的 Github 页面上的说明。
需要值得注意的是,在自己的家用路由器上是需要开启DMZ主机设置才能通过外网对树莓派进行访问的。此外,北京电信通的ADSL不管使用哪一种方式,都没法通过外网访问,这个还需要进一步的了解原因。