因为最近Terraria更新了嘛,然后又想开服了,但是捏,我原来的UbuntuServer系统因为没有界面,而且我新购置了一台3D打印机,需要软件界面去操作,所以原先的系统就格了,重装win10,然后也去某宝买了个远程开机卡,移动这边是有提供ipv6公网的,但是和之前不同,之前好几个月地址都没有变过的,现在每次开机都会更新一次ipv6地址。

现在需要解决的需求是:开机能够把我的ipv6地址自动上传到我的云服务器,首先是获取本机ip地址嘛,一开始傻傻地去ipconfig,然后想办法提取,后来发现有一个网址可以直接获取ipv6地址:6.ipw.cn,即使用curl去获取到这个ipv6地址,然后赋值给一个变量,然后我再使用curl发送一个post请求给服务器,服务器那边收到请求后,就直接更新ipv6地址。

理论存在,开始动手,在Linux的shell环境下很容易就能够实现:

export ipv6=`curl 6.ipw.cn` && export kv='ipv6='$ipv6 && echo $kv && curl http://xxx.xxx.xxx.xxx/ -X POST -d $kv

也就是说我通过POST请求发送了一个键值对到我的云服务器,然后我服务端那边接收解析出来值,再去进行相应的操作,因为快要回去实习上班了,所以比较赶,直接保存为文件了,实际上我应该存到MySQL,然后开放一个查询的接口可以直接查到这个IP才对。

扯远了,然后我是Windows系统嘛,就不能直接用这个脚本(除非用msys2),用msys2的话有点太慢了,最好还是使用bat批处理,在不断百度的帮助下,凑合出一个能用的脚本:

@echo off
for /F %%i in ('curl 6.ipw.cn') do ( set ipv6=%%i)
set kv=ipv6=%ipv6%
curl http://xxx.xxx.xxx.xxx/ -X POST -d %kv%

然后把这个批处理脚本放到开机启动项里面,开机就会自动发送ipv6地址给我的云服务器,但是又有问题,因为我可能会一直开着机,但是我不确定它是否会在我开机的时候更新IP(应该不会吧),所以应该有一个定时任务去做这个操作,每天0点刷一次IP。

最新文章

  1. CustomUI Direct3D9_Sample
  2. JQuery 学习笔记(01)
  3. CSS规范之BFC & IFC
  4. 字符串p型编码
  5. Careercup - Microsoft面试题 - 6337018766295040
  6. Java 关于中文乱码处理的经验总结【转载】
  7. 【C语言】02-基本数据类型
  8. Android 之夜间模式(多主题)的实现
  9. K - Transformation-hdu 4578(多操作混合区间更新)线段树
  10. Oracle record 解锁
  11. 苹果“抄袭”雷军PPT?小米高管如此评论
  12. RNAseq测序reads定位
  13. IEEE754浮点数的表示方法
  14. Win10 GodMode
  15. zabbix agent安装(三)
  16. MCS-51 单片机的中断系统
  17. [dig]使用dig查看当前网络连通情况
  18. MyEclipse2018.9.0设置全局编码
  19. DS01--抽象数据类型
  20. MySQL 自动添加DateTime

热门文章

  1. gdbOF阅读笔记
  2. 红米手机刷 LineageOS (实操)
  3. pdf中添加二维码无法扫描解决方案
  4. FMC子卡设计资料原理图:FMC177-基于AD9361的双收双发射频FMC子卡
  5. css 网页置灰
  6. 发现一个API接口自动化测试平台
  7. Wordpress主题twentytwelve修改首页文章摘要
  8. js判断图片链接是否有效
  9. MSSQL执行超大.sql脚本
  10. C# RichTextBox跳转到指定行(文本行跳转和显示行跳转)