if you are able to ping and browse web sites, i say router is routing. If you have to change DNS on client to resolve internal sites or external sites, then the problem is likely with DNS server forwarders and/or not having multiple DNS servers available for client to try. Typically, client will try DNS servers in order and wait timeout period before going to next one. If internal DNS server has forwarders, then client tries internal DNS and if internal DNS does not have answer it forwards to external DNS.
Hope this helps.