পাওয়ারশেল ডিএনএস - আমি কীভাবে ডিএনএস সার্ভারের একটি তালিকা অনুসন্ধান করব এবং তারপরে ফলাফলগুলি ফিল্টার করব?


2

আমি নির্দিষ্ট ডিএনএস সার্ভারের একটি তালিকা অনুসন্ধান করার চেষ্টা করছি (আমার একটি ফাইল রয়েছে) এবং তারপরে একটি নির্দিষ্ট হোস্টের নাম জিজ্ঞাসা করব। আমি এই বিট করতে পারেন :)

পরের বিটটি হ'ল আমি সেই ডিএনএস সার্ভারের একটি তালিকা ফিরিয়ে আনতে চাই যা আউটলুক-ইমিয়া * ব্যতীত অন্য ফলাফল আসে, আমি ডিএনএস সার্ভারের আইপি এবং ফলাফলটিও চাই।

আমার সমস্যাটি হ'ল ডিএনএস কমান্ডটি সিএনএমএস এবং এ রেকর্ডগুলি দেয় - আমি কেবলমাত্র একটি রেকর্ডে আগ্রহী এবং ফলাফলগুলি কীভাবে ফিল্টার করতে হয় তাও নিশ্চিত নই। আমার এখন পর্যন্ত যা আছে তাই এটি।

$Address = 'outlook.office365.com'

#$listofIPs = Get-Content 'C:\Users\user1\file.txt'

$listofIPs = '8.8.8.8'

$ResultList = @()

foreach ($ip in $listofIPs)

{

 $Result = Resolve-DnsName -Name $Address -Type A -Server $ip

Write-Host ""
Write-Host DNS Server: -foregroundcolor "green" $ip 
Write-Host ""
Write-Host Resolved Names: -foregroundcolor "green"

}

কেউ সাহায্য করতে পারেন?


আমার উত্তর কি আপনার প্রয়োজন অনুসারে কাজ করে? যদি তা হয় তবে দয়া করে এটির ভোট দিন এবং এটি গ্রহণযোগ্য উত্তর হিসাবে চিহ্নিত করুন। যদি এটি না হয় তবে দয়া করে ব্যাখ্যা করুন যে আমি কীভাবে এটি উন্নতি করতে পারি। ধন্যবাদ
ওব্লাআলান

তোমাকে অনেক ধন্যবাদ!!! আমি এখন এটিকে শিখতে কোডটি বোঝার চেষ্টা করব। অনেক ধন্যবাদ . আফসোস আমার মন্তব্য খুব কম আপভোট .... কিন্তু এটি নিখুঁত!
ডেভ ডেভিডসন

উত্তর:


0

আপনার স্ক্রিপ্টটি আমি এখনও অবধি এখানে রেখেছি:

$Address = "outlook.office365.com"

$listofIPs = Get-Content "C:\file.txt"

$ResultList = @()

foreach ($ip in $listofIPs)

{
    # The following query will list only records begining with "outlook-", but not begining with "outlook-emea"
    $DNSquery = (Resolve-DnsName -Name $Address -Type A -Server $ip).Name | Where-Object {$_ -inotlike "outlook-emea*" -and $_ -ilike "outlook-*"}

    # We assume, based on several tests, that selecting the first result for the previous query is enough.
    $Result = $DNSquery | Select -First 1

    if ($DNSquery)
    {
        # Creating custom object to feed the array
        $Object = New-Object PSObject
        $Object | Add-Member -MemberType NoteProperty -Name "DNS Server IP" -Value $ip
        $Object | Add-Member -MemberType NoteProperty -Name "Result" -Value $Result
        $ResultList += $Object
    }

    # Displaying the array with the results
    $ResultList
}

এবং আমার ফলাফলটি এখানে রয়েছে, যখন আমার পাঠ্য ফাইলটিতে 8.8.8.8, 8.8.8.4, 173.255.0.194 এবং 173.201.20.134 রয়েছে:

ডিএনএস ক্যোয়ারির ফলাফল


আপনি সেই অংশটি সম্পাদনা করেছেন যেখানে আপনি ওপিকে আপনার উত্তর গ্রহণ করতে বলেছিলেন। আপনি যদি চান তবে আপনি এটি স্ট্যাক এক্সচেঞ্জে নতুন লোকের নির্দেশিত মন্তব্য হিসাবে যুক্ত করতে পারেন, তবে এটি নিজেই আপনার উত্তরের অংশ হওয়া উচিত নয়।
করণ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.