使用python调用淘宝的ip地址库查询接口结合zabbix判断dnspod域名解析是否正确
#encoding:utf-8
import socket
import requests
import json '''
使用python结合zabbix判断dnspod域名解析是否正确 服务器分国内和国外不同的组(分别部署了一套环境,分配给客户的时候是同一套域名) 拿c.chinasoft.com举例:
在dnspod中配置了c.chinasoft.com指向的时候分为国内和国外(客户在国内时指向国内服务器,
在国外时指向国外服务器)
并且做了d监控(如果解析的地址宕机会自动切换到备用地址)备用地址有国外的服务器ip和国内的服务器ip 问题来了,dnspod有时候会误报,明明服务器是ok的,判断宕机然后自动切换
且dnspod没有那么智能,无法分辨你宕机的是哪里的IP重新启用的域名指向可能会出现误差,比如把国内的域名指向了国外备用的服务器ip,这样会导致很多问题 所以需要一个监控,来监控这个域名指向的服务器IP是否是解析到了了国内的服务器(在国内做监控)
''' def get_city(domain_name):
ip = socket.gethostbyname(domain_name)
# 通过淘宝的api查询ip信息
req = requests.get("http://ip.taobao.com/service/getIpInfo.php?ip={}".format(ip))
ip_data = json.loads(req.content)
ip_address = ip_data['data'] are = ''.join([ip_address['country'],ip_address['area'],ip_address['city']])
return are if __name__ == "__main__":
are = get_city('c.chinasoft.com') # 判断是否在国内
if are == u'中国华东湖州市' or are == u'中国华东杭州市':
print 1
else:
print 0
接下来把脚本配置在zabbix中即可
使用python调用淘宝的ip地址库查询接口结合zabbix判断dnspod域名解析是否正确的更多相关文章
- 淘宝的ip地址库
1. 请求接口(GET): http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串] 2. 响应信息: (json格式的)国家 .省(自治区或直辖市 ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- 新浪网易淘宝等IP地区信息查询开放API接口调用方法
通过IP地址获取对应的地区信息通常有两种方法:1)自己写程序,解析IP对应的地区信息,需要数据库.2)根据第三方提供的API查询获取地区信息. 第一种方法,参见文本<通过纯真IP数据库获取IP地 ...
- python爬取免费优质IP归属地查询接口
python爬取免费优质IP归属地查询接口 具体不表,我今天要做的工作就是: 需要将数据库中大量ip查询出起归属地 刚开始感觉好简单啊,毕竟只需要从百度找个免费接口然后来个python脚本跑一晚上就o ...
- 淘宝IP地址库API接口(PHP)通过ip获取地址信息
淘宝IP地址库网址:http://ip.taobao.com/ 提供的服务包括: 1. 根据用户提供的IP地址,快速查询出该IP地址所在的地理信息和地理相关的信息,包括国家.省.市和运营商. 2. 用 ...
- 淘宝免费ip地址查询导致服务堵死的坑
1.业务中因为想根据用户ip来做一些友好的提示,所以在网上找了个免费的ip查询地址 http://ip.taobao.com/service/getIpInfo.php?ip= 虽然说淘宝的这个地址会 ...
- 查询本地ip以及ip地址库查询
四种方法查询本地ip from urllib2 import urlopen from json import load my_ip = urlopen('http://ip.42.pl/raw'). ...
- 使用淘宝ip地址库开放接口在网站上显示当前用户所在的城市省份网络(完整代码)
查看效果:每天进步网 在网站的页脚 <p>欢迎来自 <?php function GetIpCity() {$realip = '';$unknown = 'unknown';if ...
- 利用纯真ip地址库 查询 ip所属地
1. 首先下周数据源,选择是纯真数据库:http://www.cz88.net/ 2. 安装后,打开软件,将数据导出为txt格式. 3. 处理数据,参照网上的文章(http://www.jb51.ne ...
随机推荐
- ORM常用字段和参数
目录: ORM常用字段和参数
- [Android] Android 常见第三方库汇总地址
Android 常见第三方库汇总地址 https://github.com/wasabeef/awesome-android-libraries List of Android Libraries T ...
- Hibernate的注解和检索
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自 ...
- Mac 下搭建环境 homebrew/git/node.js/npm/vsCode...
主要记录一下 homebrew/git/node.js/npm/mysql 的命令行安装 1. 首先安装 homebrew 也是一个包管理工具: mac 里打开终端命令行工具,粘下面一行回车安装br ...
- 六.HashMap HashTable HashSet区别剖析总结
HashMap.HashSet.HashTable之间的区别是Java程序员的一个常见面试题目,在此仅以此博客记录,并深入源代码进行分析: 在分析之前,先将其区别列于下面: 1.HashSet底层采用 ...
- Sqlserver自动优化
(1)select a.* from tb1 a left join tb2 b on a.id=b.id where a.name='1' (2)select * from (select a. ...
- HTML 实例学习(基础)
1.HTML <html> 标签 注意:对于中文网页需要使用 <meta charset="utf-8"> 声明编码,否则会出现乱码.有些浏览器会设置 GB ...
- position:fixed 失效
如果position:fixed 失效,那应该是你设置position的元素的父元素中有设置了transform属性哦 . 把 transform删除或设置为none就可以解决啦. 但是如果trans ...
- luogu P4183 [USACO18JAN]Cow at Large P
传送门 首先考虑N^2做法,每次从一个点出发,如果到达一个点,然后到达这个点的时间\(\le\)离这个点最近的叶子距离\(di_x\),那么答案+1,否则继续找点 这个暴力很不好优化.可以这样认为,如 ...
- C#Windows 服务的安装说明
安装/卸载的步骤: 1 . .点击 开始,运行中输入cmd,获取命令提示符win7需要已管理员的身份启动,否则无法安装 2. 输入 : cd C:\Windows\Microsoft.NET\Fram ...