I need to move some domains to a different DNS server, and I'm wondering if there's any way to obtain a complete copy of the zone file without going though the current DNS provider?
I agree w/ David re: most servers not being configured to allow zone transfers. Having said that, you can try giving a zone transfer a shot.
dig @nameserver example.com axfr
Substitute in your nameserver's name and your domain name.
On Windows, you can use
nslookup in interactive mode to do a zone transfer. From the
server nameserver ls -d example.com
Again, substitute in your nameserver's name and your domain name.
Try all the nameservers-- sometimes I find that one of them will allow zone transfers.
You can list DNS servers using any DNS client nslookup, host, dig ... with dig run
If the DNS server allow the tranfert zone that is used generally for DNS database replication and backup, you can get the zone file using the dig utility like this:
dig domain.tld ns
dig @dns.server domain.tld axfr