You need to sign up to get access!

Sign up to get full access to this course.

Sign up to access this lesson

Click here to sign up and get access to this lesson!

Saving Progress...

At some point you may need to block or filter out a Domain that’s been proven to be infected with a virus, or a domain that doesn’t meet the security requirements of your organization.

Policy Rules

• Most Policies can be set at the server or the zone level. If you need more control at the zone level, you can modify the Add-DNSServerQueryResolutionPolicy command by adding the parameter -zonename to identify the DNS Zone that applies to this policy. The example in this lecture will be applied at the server level.

Identifying the Malicious Domain

  • Here’s an example – We have identified the Domain as being a malicious domain.
  • Use this PowerShell command
  • Add-DnsServerQueryResolutionPolicy –Name ‘BlockListPolicy’ –Action Ignore –FQDN “EQ,*”

Now lets break this command down so you’ll understand what’s happening

Understanding the Command

The  Add-DnsServerQueryResolutionPolicy determines how DNS queries are handled by the criteria that you specify in the policy. Here are the parameters that we’ll use with the command. Parameters are always preceded by a minus sign –

  • -Name – gives the policy a name (BlockListPolicy)
  • -Action – Gives an action, in this case the action is to ignore any queries coming in or going out to the domain or its sub-domains.
  • FQDN – Designates the fully qualified domain name
  • EQ – Means equal to, in this case equal to, and the *. designates all subdomains of
  • After you have run this command DNS clients will no longer be able to resolve names in the domain and its subdomains.
  • If you have any clients that have been accessing the domain you will have to reboot their computer or run the ipconfig /flushdns command to clear the cache.

If you want to verify your policy information you can type the command. 

Get-DnsServerQueryResolutionPolicy -Name ‘BlocklistPolicy’ | Format-List * And I’ll explain this command once we get into PowerShell.

Let’s go ahead and see what these commands look like in PowerShell.

And there is our command to create the blocklist policy

Add-DnsServerQueryResolutionPolicy –Name ‘BlockListPolicy’ –Action Ignore –FQDN “EQ,*”

Press return

  • Now let’s go ahead and get some information on our block list policy.
  • Here is the command

Get-DnsServerQueryResolutionPolicy -Name ‘BlocklistPolicy’ | Format-List *

There is the pipe operator.

  • So, what’s a pipe operator?
  • In PowerShell this symbol is called a Pipe operator. What this does,  it takes the output of the policy named blocklistpolicy and formats it in list form.
  • BTW – The pipe operator symbol is located on most keyboards, right above the enter key.

Ok let’s take a look at our list: 

  • Action – Ignore – all queries coming in or going out of or it’s sub-domains.  
  • AppliesOn – Any queries we have already defined
  • Is Enabled – Is set to True
  • Level – Server level, as opposed to zone level

Name – BlocklistPolicy

  • Let’s go ahead and remove the Policy we just created.

Remove-DnsServerQueryResolutionPolicy -Name ‘BlockListPolicy ,  And it says removing the server level policy

Click yes

Lets go back and see what information is left after we removed the policy.

Type the command

Get-DnsServerQueryResolutionPolicy -Name ‘BlocklistPolicy’ | Format-List * Error – Failed to get policy, The Policy does not exist.  

  • So that command was successful

One of the challenges that you may encounter is blocking a malicious zone or a zone that does not meet the security standards of your organization. You can use filters to successfully block these zones.

Sign up to access the rest of this lesson

You must either log in or sign up to access this lesson.


Course Introduction

• 10min

0 / 2 lessons complete

DNS Basics

• 56min

0 / 8 lessons complete

DNS Resource Records

• 45min

0 / 5 lessons complete

DNS Zones

• 4hr 11min

0 / 12 lessons complete

DNS Delegation

• 50min

0 / 4 lessons complete

DNS Security Techniques

• 36min

0 / 5 lessons complete

Advanced DNS Topics

• 22min

0 / 5 lessons complete

DNS Security (DNSSEC)

• 1hr 16min

0 / 6 lessons complete

DNS Policies

• 55min

0 / 6 lessons complete

PowerShell for DNS

• 1hr 27min

0 / 6 lessons complete

Troubleshooting DNS Issues - Troubleshooting Tools

• 1hr 39min

0 / 8 lessons complete