By default if we have multiple A records with the same name, the DNS server will round robin i.e alternate through each record returning the value of each DNS record. This is great but if we want more control over balancing the responses to different records we can use DNS Load Balancing Policy to distribute responses in the desired way.
#Add a DNS Zone Add-DNSServerPrimaryZone -Name "loadbalance.com" -ReplicationScope Domain #Add a Zone Scope called "Scope-Heavy" Add-DNSServerZoneScope -ZoneName "loadbalance.com" -Name "Scope-Heavy" #Add a Zone Scope called "Scope-Light" Add-DNSServerZoneScope -ZoneName "loadbalance.com" -Name "Scope-Light" #Add some A records to each zone, with different IP addresses to which the load will be balanced accordingly Add-DNSServerResourceRecord -ZoneName "loadbalance.com" -A -Name "www" -IPv4Address "192.168.1.11" Add-DNSServerResourceRecord -ZoneName "loadbalance.com" -A -Name "www" -IPv4Address "192.168.1.12" -ZoneScope "Scope-Light" Add-DNSServerResourceRecord -ZoneName "loadbalance.com" -A -Name "www" -IPv4Address "192.168.1.13" -ZoneScope "Scope-Heavy" #Set a Policy, so that server 192.168.1.13 gets around 9 out of every 11 requests. Add-DNSServerQueryResolutionPolicy -Name "LB-Policy" -Action ALLOW -Fqdn "EQ,*" -ZoneScope "loadbalance.com,1;Scope-Light,1;Scope-Heavy,9" -ZoneName "loadbalance.com" #Check it applied Get-DNSServerQueryResolutionPolicy -ZoneName "loadbalance.com"