DNS error means your PC cannot resolve the name of the website but doesn't necessarily mean your network connection itself is bad. The symptoms you describe are very typical of a DNS problem; the websites that do load will probably be using results cached by your PC or router.
Check that your PCs are set to use your router as their DNS server. To do this, open a command prompt and run
ipconfig -all. The first DNS server listed should match the IP of your router (default gateway).
After that, make sure your router is set to use the correct DNS servers for your ISP. In most cases this should happen automatically but in your case try entering them manually. Exactly how you do this depends on the model of router and you can get the correct DNS server addresses from your ISP website.
If this fails to cure the problem try setting your PCs to use the ISP's DNS servers directly. This is the less preferred method but will help see if the DNS relay in the router is functioning correctly. If this fixes the problem, check the DNS relay settings in the router, if it has any, or try a different router.
If it doesn't, open the HOSTS file on each PC and check it hasn't been played with. The HOSTS file is a text file located in
C:\WINNT\SYSTEM32\drivers\etc\ in Windows 2000 you can open using Notepad. It is used to create static DNS mappings on each PC as is often modified by viruses and malware. It should only contain the following data (plus comments) if you haven't modified it yourself:
127.0.0.1 localhost
Hope this is of help