2012年5月10日星期四

通过xmlrpc获取远程计算机的公网IP

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-5-10 通过 averiany涂鸦馆 作者:averainy

目前对于普通人来说,所用的网络基本上都是adsl,以至于IP一直不固定,所以如果您在上班,或者外出,那该如何远程访问家里的计算机呢?

解决的方法有很多,比如用远程登录软件,这对于小白来说,绝对是最最简单的,对于有隐私癖的,那是绝对不会用的,对于我这种追求速度的,也是绝对不会选择的(除非无可选择).

也可以给自己的计算机安装一款简单的email软件,定时发送软件到邮箱,这个办法也是很不错,以前我就推荐过给一位同事,最多了也就是写一个简单的定时工作脚本,window,linux下都是很容易搞定的.

由于,最近在尝试使用python来解决一些实际问题,以及工作中需要用到xmlrpc,所以就尝试用这个来解决下我的实际需要.

原理很简单,就是用python写一个简单的xmlrpc服务脚本.代码如下:

#!/usr/bin/python #encoding=utf8   import SimpleXMLRPCServer,string,os class Remotehandler:         def getIp(self,ip):                 os.system("echo " + ip + " >/tmp/ip.log")                 return "succed"   if __name__ == "__main__":         remotehandler_obj=Remotehandler()         server=SimpleXMLRPCServer.SimpleXMLRPCServer(("公网IP",8888))         server.register_instance(remotehandler_obj)         print "Listenning on port 8888"         server.serve_forever()

将这个脚本放在我的VPS上,开放888端口,

然后本地执行

xmlrpc 服务器端IP:8888 getIp $(curl ifconfig.me 2>/dev/null)

做好端口映射,就可以万事大吉了,不论你在哪里,都可以随时随地访问个人计算机.

如何获取公网ip,可以看这里:linux shell 获取计算机公网IP地址的几种写法

其实还可以继续扩展一下,在家里搭建一个个人云存储,随时同步,或者搭建一个家庭服务器,随时在线播放自己收藏的视频,(你懂的)

 


本文作者:averainy | 本文地址: 固定链接 | 我的腾讯微博|我的google+
本站文章除特殊标明者外均为原创,版权所有,如需转载,请以超链接形式注明作者和原始出处及本声明

相关日志


 
 

可从此处完成的操作:

 
 

没有评论:

发表评论