1) You shouldn't type a problem when you're drunk. You'll make mistakes (unless you actually talk like that, then my bad)
2) Your Wifi ISP is bull****ting you
The DNS server is there to resolve a name to an IP so that the machines know who to contact for the connection. It's like your house address. You can't just go "Tweak" you have to go "Tweak, 123 Beer lane, Somerset-North, 1234" so the post office knows where to deliver the mail to. But with domains (and email, which usually is connected via the domain on a subdomain like "mail.domain.com"), it's a bit different.
When you register your domain at a registrar (godaddy/co.za), they keep the records for where your DNS servers are which in turn will have the IP address for where your website is. So when someone types in "www.domain.com" your ISP then does a lookup to resolve the name into an IP address by contacting the authority which will then refer it to the correct registrar which will refer it to the correct DNS server which will then refer you to the correct IP address for that specific service (which in my example is HTTP, could as well be POP/SMTP)
Yes. Your PC does have DNS
caching. So does your browser. Your ISP usually have their own DNS
caching servers to reduce the amount of bandwidth required with DNS lookups from people (if 10000 people type in "www.google.com" they don't have to do 10000 requests over their international bandwidth for the correct IP's, but only once in every x hours), but
they do not (unless they do hosting as well) have DNS servers. You require specific authorization setup between DNS servers to be able to clone records and keep primary/secondary servers going. They cache the ****. If they tell you different they don't know WTF they're talking about. Keep in mind I'm not 100% sure on how ISP's are setup, but their DNS servers usually gets assigned (like you would get an IP from DHCP when connecting to a router) so that your PC can query someone for an IP address who you know is connected to the internet directly.
If your snr. technician could plug in his 3G router and you guys could access your email and websites again, then it's your Wifi ISP.
It depends on your mail setup as well, but with your hosting company moving your servers locally and the setup for email/web being really straight-forward and standardized, the ONLY thing that could be the issue (and usually is, 100% of the time, and this is why I don't ****ing bother with wifi/wireless ISPs) is the ISP you're currently using.
So re-visit point #2 I made earlier and tell your ISP they can shove it and get something else.
[edit]
It's quite amazing to me that you or your snr. technician haven't been able to figure out why your email doesn't work yet. I'm not even in the same field as you. So I'll go through a couple of things I usually check when I'm forced to support a client:
a) Is it plugged in (and can you go to something simple like
www.google.com and search for dildo's or whatever)
b) If it's working for web browsing, does your own website work?
c) If your own website doesn't even load in the browser, ask yourself if your own network is perhaps the culprit. Remember the rule "If it's local don't look it up, if it's remote, look it up". Same goes for mail servers. If a mailbox is created locally on the machine it will always route locally unless it doesn't exist and is forced to look elsewhere for the same mailbox.
d) tracert that ****!
e) tracert shows perfect trace? could be port issue. telnet (I assume you guys know how to) into port 80/25/110/45 etc connecting to your server and check to see if you get any responses. If any of the responses are "welcome to your wifi ISP" they're intercepting mail traffic (specifically on port 25)
f) did you try a ping before tracert? *shrug* which IP is it resolving to? correct IP?
That's only the tip of the iceberg... I assume this is a network wide issue for you, so won't even begin to try to debug 1 PC by itself. But a few unknown factors does present itself:
If you're on a network, do you use windows server with DHCP to assign internal ip addresses and then connect the wifi ISP through there? or do you have one of those crappy ****ing wifi ISP's that assigns you IP's for your internal network through their own network as well?
If you're running win server, and you have the DHCP setup, do you have DNS setup on the windows server as well? This could sometimes **** around with you, especially if you use the same domain name in your server setup as you have online. Since your hosting company changed the location of your hosting, it might be that the DNS IP's in the win server hasn't been updated? It could also be that your wifi ISP doesn't support your choice of DNS servers assigned through the DHCP you setup initially. (again, assuming a win server environment)
How senior is your senior technician anyway?