PowerShell 给现有DNS记录创建PTR反向查询

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

今天早上豆子无意中发现公司的DNS服务器上面只有正向的解析,而没有对应的PTR记录。换句话说,可以通过域名来解析IP地址,但是倒过来IP地址是找不着域名的。


1个小时写了个很简单的脚本,判断已有的记录是否存在对应的reverse zone 和PTR记录,如果没有的话,自动给我创建加上。


思路很简单,脚本也比较糙,没有任何容错处理和优化,不过实现功能就好。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
$ptrzones = Get-DnsServerzone  -ComputerName syddc01 |  Where-Object  { $_ .zonename  -like  "*.arpa" }
#获取所以的A记录
$machines = Get-DnsServerResourceRecord  -ComputerName syddc01 -RRType A -ZoneName  'omnicom.com.au' | select @{n= 'IP' ;e={ $_ .recorddata.IPV4Address.IPAddressToString}}, hostname, timestamp, @{n= 'PTRZone' ;e={ $temp = $_ .recorddata.IPV4Address.IPAddressToString.split( '.' ); $t = $temp [2]+ '.' + $temp [1]+ '.' + $temp [0]+‘. in -addr.arpa’; $t }}
 
foreach ( $machine  in  $machines ){
   
   #判断是否存在PTR的reverse zone
   write-host  $machine .hostname
   write-host  $machine .PTRZone 
   $flag =0
   foreach ( $p  in  $ptrzones ){
     if ( $p .zonename  -eq  $machine .PTRZone){
         #write-host " Matched PTR Zone" -BackgroundColor Cyan
         $flag =1
         break
         }
   
   }
   #如果PTR Zone不存在,创建一个对应的
   if ( $flag  -eq  0){
     write-host  " PTRZone is Missing,A new PTRZone will be created"  -ForegroundColor Red
     $temp = $machine .IP.Split( '.' )
     $range = $temp [0]+ '.' + $temp [1]+ '.' + $temp [2]+ ".0/24"
     #$range
     Add-DnsServerPrimaryZone  -DynamicUpdate Secure -NetworkId  $range  -ReplicationScope Domain -ComputerName syddc01
   }
   else {
   
     #如果PTR zone存在,判断是否存在对应的PTR记录
     $hname = Get-DnsServerResourceRecord  -ComputerName syddc01 -RRType Ptr -ZoneName  $machine .PTRZone | select @{n= 'name' ;e={ $_ .recorddata.ptrdomainname}}
     #$hname
     $temp = "*" + $machine .hostname+ "*"
     if ( $hname  -like  $temp ){
         
        Write-Host  "Already exist"  -ForegroundColor Cyan
     
     }
     else {
         #PTR Zone存在 但是PTR记录不存在
         Write-Host  "Adding PTR record"  -ForegroundColor Yellow
         Add-DnsServerResourceRecordPtr  -ComputerName syddc01 -ZoneName  $machine .PTRZone -Name  $machine .IP.Split( '.' )[3] -AllowUpdateAny -TimeToLive 01:00:00 -AgeRecord -PtrDomainName  $machine .hostname 
     }
     }
   
   
   }

  

 执行脚本

    

wKiom1g1GgPRRmf1AACazFbSvhY540.png


结果


wKiom1g1GgSCwHkNAABsVrgiP64146.png






本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1875747,如需转载请自行联系原作者

目录
相关文章
|
12天前
|
存储 运维 负载均衡
Hologres 查询队列全面解析
Hologres V3.0引入查询队列功能,实现请求有序处理、负载均衡和资源管理,特别适用于高并发场景。该功能通过智能分类和调度,确保复杂查询不会垄断资源,保障系统稳定性和响应效率。在电商等实时业务中,查询队列优化了数据写入和查询处理,支持高效批量任务,并具备自动流控、隔离与熔断机制,确保核心业务不受干扰,提升整体性能。
44 9
|
4月前
|
存储 Cloud Native 关系型数据库
Ganos实时热力聚合查询能力解析与最佳实践
Ganos是由阿里云数据库产品事业部与飞天实验室共同研发的新一代云原生位置智能引擎,集成于PolarDB-PG、Lindorm、AnalyticDB-PG和RDS-PG等核心产品中。Ganos拥有十大核心引擎,涵盖几何、栅格、轨迹等多种数据处理能力,实现了多模多态数据的一体化存储、查询与分析。本文重点介绍了Ganos的热力瓦片(HMT)技术,通过实时热力聚合查询与动态输出热力瓦片,无需预处理即可实现大规模数据秒级聚合与渲染,适用于交通、城市管理、共享出行等多个领域。HMT相比传统网格聚合技术具有高效、易用的优势,并已在多个真实场景中验证其卓越性能。
83 0
|
17天前
|
存储 数据库 对象存储
新版本发布:查询更快,兼容更强,TDengine 3.3.4.3 功能解析
经过 TDengine 研发团队的精心打磨,TDengine 3.3.4.3 版本正式发布。作为时序数据库领域的领先产品,TDengine 一直致力于为用户提供高效、稳定、易用的解决方案。本次版本更新延续了一贯的高标准,为用户带来了多项实用的新特性,并对系统性能进行了深度优化。
28 3
|
2月前
|
域名解析 网络协议 安全
反向DNS解析是从IP地址到域名的映射,主要作用于验证和识别,提高通信来源的可信度和可追溯性
在网络世界中,反向DNS解析是从IP地址到域名的映射,主要作用于验证和识别,提高通信来源的可信度和可追溯性。它在邮件服务器验证、网络安全等领域至关重要,帮助识别恶意行为,增强网络安全性。尽管存在配置错误等挑战,但正确管理下,反向DNS解析能显著提升网络环境的安全性和可靠性。
172 3
|
3月前
|
域名解析 网络协议 安全
DNS查询工具简介
DNS查询工具简介
142 4
|
4月前
|
域名解析 网络协议 安全
DNS查询工具简介
DNS查询工具简介
137 4
|
3月前
|
SQL 数据可视化 BI
SQL语句及查询结果解析:技巧与方法
在数据库管理和数据分析中,SQL语句扮演着至关重要的角色
|
5月前
|
SQL 数据库
|
5月前
|
Prometheus 监控 Cloud Native
Prometheus 查询语言(PromQL):深入解析
【8月更文第29天】Prometheus 是一款开源的监控系统和时间序列数据库,广泛应用于各种系统的监控和告警。PromQL(Prometheus Query Language)是 Prometheus 用来查询和聚合时间序列数据的一种强大语言。本文将详细介绍 PromQL 的功能和语法,包括基本查询、向量操作、聚合函数等,并提供具体的代码示例。
708 2
|
5月前
|
SQL 关系型数据库 MySQL

相关产品

  • 云解析DNS
  • 推荐镜像

    更多