dns dig 查看支持ipv6网站
1.处理zone文件
A.先格式化区文件数据,去掉不需要的数据,生成新的文件 com.zone.sample
cat com.zone |grep -P IN'\t'NS|awk -F '\t' '{print 4}' >> com.zone.sample
格式如下:
waiyuren.com.,ns6.ctrlcache.com.
jmtcq.com.,ns5.myhostadmin.net.
B.获取到所有的ns数据,并且去重,并生成新的文件/home/cnzone/com_sort.zone
cat com.zone |grep -P IN'\t'NS|awk -F '\t' '{print $4}'|sort|uniq >> com_sort.zone
格式如下:
zyd1.dnspod.net.
zyd.dnspod.net.
zz.baidu.com.
C.如果com_sort.zone文件比较大,最好按行分成多分文件,同时运行脚本
详见:[linux 查看某几行内容与文件分割] (https://www.cnblogs.com/wt11/p/9351021.html)
2.批量dig ns,获取支持ipv6的ns
[root@localhost home]# cat dns.py
import sh
import json
ns = {}
def validation_ipv6(domain):
ns = {}
num = 0
try:
dig = sh.dig(domain, "AAAA", "+short")
num = sh.wc(dig, "-l")
print(domain +'-----------------------'+ str(int(num)))
except:
with open('unreachd_domain.txt', 'a+', encoding='utf8') as f2:
f2.write(domain + '\n')
if int(num) > 0:
ns[domain] = int(num)
#print(ns)
datas = json.dumps(ns, ensure_ascii=False, indent=4)
with open('ipv6_ns.txt', 'a+', encoding='utf8', buffering=1) as ff:
ff.write(datas+',')
def save():
with open('cn.ns.sort', 'r', encoding='utf8') as f:
for i in f:
i = i.strip()
validation_ipv6(i)
if __name__ == '__main__':
save()
3.根据对应的ns,获取支持ipv6的网站
[root@localhost home]# cat get_v6.py
import json
alls = {}
def ana():
with open('ipv6_ns.txt', 'r', encoding='utf8') as f:
data = json.load(f)
for item in data:
for key in item:
alls[key] = item[key]
def gets():
n = 0
with open('com.zone.sample', 'r', encoding='utf8') as ff:
for line in ff:
line = line.strip()
key = line.split(',')[1]
num = alls.get(key, 0)
print(str(n) + '-------------->'+ line +'------------>' + key + '>>>>>>>' + str(num))
n = n + 1
if num > 0:
with open('support_ipv6_site.txt', 'a+', encoding='utf8') as fc:
fc.write(line.split(',')[0] + '\n')
if __name__ == '__main__':
ana()
gets()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
2016-07-22 keepalived+haproxy构建高可用负载均衡