Just lock your DNS server to a public domain server like one from Google. If you set your router's DNS to 8.8.8.8 and 8.8.4.4 you'll always bounce http/https search requests against a known Google DNS. Clearing your temp folder isn't a bad idea but it's also not the only place your PC caches internet temp files. This is a noob article by all means. It's inspired me to write a proper how-to in the forums for system optimization. Stay tuned
This isn't "broken" and it isn't a "problem" on *any* OS, if you simply know one of the most basic things about networking and the internet: how a DNS works.
I gave the solution above. You don't need fancy software or any other crap to solve this, even in Linux. Use a trusted DNS service like Google's (IP above) and make sure to point your router to it. OpenDNS is another option.
If you're on a laptop, you'll want to configure this in your network settings within the OS in the event you're on another network. This is really a good idea even on desktop, in the event you're using a VPN or other service which may ignore your router's setting.
DNS has always been something that needs to be configured. In the last 10-15 years, ISPs have started allowing a user with a dynamic IP to use their own DNS when the network doesn't find another DNS. Most people have never changed this, but that doesn't mean that Windows or Linux are broken. It means you need to learn how to use your OS.
The fact that there is little to no network configuration needed with most/all broadband providers doesn't mean you shouldn't learn a few networking tricks to protect yourself and optimize your service. Back in the day, DNS, DHCP, Default Gateway, IP, NetBIOS all had to be configured manually just to *connect* to the internet.
The general assumption with the "internet generation" seems to be that if something doesn't work out of the box, it's broken. There's no learning involved. Take initiative and learn to do these things yourself and you'll be much happier.