Private and Public conditional forwarders Diagram/Explanation for two segments
Conditional forwarding was a new feature of DNS in Windows Server 2003. It is also available and improved for Windows Server 2008. Conditional forwarding can be used to speed up the DNS name resolution process by directing queries for specific domains to specific name servers. They can also be used to help organizations resolve each other's namespace in a situation where the organizations may have direct links into each other's networks and have the need to resolve internal hostnames to access internal resources.
Configuring conditional forwarders for local and external domain names
To configure conditional forwarding, open the DNS console under Administrative Tools, click on the DNS server node, expand the node, right-click on Conditional Forwarders, then New Conditional Forwarder. Type in the name of the domain you want to conditionally forward to in the "DNS Domain" text box. Then click on the IP Addresses text box and enter in the IP addresses or DNS host names of the name servers that will be resolving DNS records for that domain. Your DNS server will attempt to validate your input.
Creating conditional forwarders using DNSCMD & PowerShell
DNSCmd displays and changes the properties of DNS servers, zones, and resource records. It manually modifies these properties, creates and deletes zones and resource records, and forces replication events between DNS server physical memory and DNS databases and data files. Some operations of this tool work at the DNS server-level while others work at the zone-level. Using Windows PowerShell commands for administration and networking tasks can save a lot of time. This is true not only because you can script the tasks for application on multiple computers, but you also save time by not having to navigate through sometimes complex user interface (UI) dialog boxes when you use PowerShell to configure your DNS.