文档章节

利用ip138取得公网IP,公网ip改变后报警通知我们进行更改

独钓渔
 独钓渔
发布于 2016/01/29 16:07
字数 256
阅读 279
收藏 15

由于系统上绑了我们的出网ip又用的是家用网络基本上是每天一变,但是时间又不定,所以写了个查外网ip的

其实有完用可以用

curl http://ifconfig.me 

这样就只返回ip,不过国内的网络你懂的,

所在还是使用了ip138

在windows还想把报警加上,所以用了python。

import urllib.request
import pickle

fip = 'fip.pkl'
ip =''
with open(fip, 'rb') as f:
    ip = pickle.load(f)
print("上一次IP: " + ip)
print("---------")
getIpUrl = 'http://1212.ip138.com/ic.asp'

f = urllib.request.urlopen(getIpUrl)
g = f.read().decode('gb2312')
a1 = g.find("您的IP是:")
a2 = g.find("来自:")

newip = g[a1 + 7 :a2 - 2]
print("这一次IP: " + newip)

if ip != newip:
    print("you must change you ip! ");
    ip = newip
    ffip = open(fip, 'wb+')
    pickle.dump(newip, ffip)
    ffip.close()
else:
    print("ok !!")

 

其实在if语句里可以写许多报警的出使用pygame或者winsound来报放音乐报警,因为我们值班室随时有人,可以做个提示。也可以邮件短信报警了。

 

© 著作权归作者所有

共有 人打赏支持
独钓渔
粉丝 47
博文 375
码字总数 142587
作品 0
沙坪坝
系统管理员
私信 提问
加载中

评论(1)

xingmu
xingmu
f3322
shell 脚本监控公网出口IP

1、情景 公司有2条二级运营商的链路,链路非常不稳定。更为严重的是我们申请固定IP,出口IP竟然总是变动。公司所有业务都需要通过外网,影响面非常大。有人提示可以对出口做监测,发现IP变动...

X糊涂仙儿
2016/10/15
0
0
私有云方案——利用阿里云云解析实现DDNS

各位都是程序员,工作中是不是遇到个类似情况。在家里研究的一些开源代码或写的一些demo或试验代码,在工作中正好需要参考一下,但是在家里的电脑上。 虽然这些都可以用云盘/网盘之类的来完成...

dotNET跨平台
10/03
0
0
TCP实现P2P通信、TCP穿越NAT的方法、TCP打洞

TCP实现P2P通信、TCP穿越NAT的方法、TCP打洞 作者:谢红伟 下载源代码 这个标题用了两个顿号三个名称,其实说得是同一个东西,只是网上有不同的说法罢了,另外好像还有人叫TCP打孔(我的朋友...

长平狐
2012/09/20
653
1
TCP/UCP打洞原理

Internet的迅速发展以及IPv4 地址数量的限制使得网络地址翻译(NAT,Network Address Trans2lation)设备得到广泛应用。NAT设备允许处于同一NAT后的多台主机共享一个公网(本文将处于同一NAT后的...

莫问viva
2013/11/25
894
0
U-Mail邮件系统切换IP地址后该如何操作?

问:新安装的U-Mail邮件系统,已能正常运行。因与老系统切换,需要改变安装有U-Mail邮件系统软件的 服务器IP地址,我试了一下,只简单地修改服务器的IP地址后还不能正常使用,在浏览器上只能...

ifrfksdd
2014/06/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Django简单介绍和用户访问流程

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。 Django是一个开放源代码的Web应用框架,由Python写成。 Django遵守BSD版权,初...

枫叶云
11分钟前
0
0
EOS错误代码及中文释义

本文集汇总了EOS区块链常见错误代码及其含义,完整错误代码集请查看 EOS错误代码集 - 汇智网 EOS错误代码列表如下, <table class="table table-striped"> <thead> <tr><th>错误代码</th><t......

汇智网教程
13分钟前
0
0
Spring Cloud Stream消费失败后的处理策略(四):重新入队(RabbitMQ)

应用场景 之前我们已经通过《Spring Cloud Stream消费失败后的处理策略(一):自动重试》一文介绍了Spring Cloud Stream默认的消息重试功能。本文将介绍RabbitMQ的binder提供的另外一种重试...

程序猿DD
35分钟前
1
0
kiss原则

KISS 原则是用户体验的高层境界,简单地理解这句话,就是要把一个产品做得连白痴都会用,因而也被称为“懒人原则”。换句话说来,”简单就是美“。KISS 原则源于 David Mamet(大卫马梅)的电...

NB-One
37分钟前
9
0
spring源码阅读

spring的三大组件: 1.bean:bean的定义,bean的创建已及对bean的解析 2.context:给 spring 提供一个运行的环境(连接上下文) 3.core:类似于utility类,定义了资源的访问方式 接下来直接从代码来看...

我的老腰啊
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部