when the ISP say that they can see that the PC is plugged in it really only means (say you're using a Cisco switch then they connect to the network device and type
show int eth0/1
that tells them that the port it either connected, or not connected or error disabled.
it doesn't tell them that your computer is working and has the correct IP address... it doesn't really tell them much more than you'd be able to tell by looking at the lights on the front/back or the router.
what I'm saying is. (for my home network).
machines are assigned addresses by DHCP
those addresses are 192.168.1.50 and up
the subnet is set by DHCP to 255.255.255.0
and the gateway is set by DHCP to 192.168.1.254
so when I get to the command prompt, and type ipconfig /all if I see anything other than 192.168.1.[50-253] as an address, I know that there is trouble, if I see anything other than 192.168.1.254 as the default gateway I know I'm in trouble, and the same, if there is anything other than 255.255.255.0 then something is amiss... if it doesn't say DHCP enabled : ...... YES then I know that the error is likely that I've statically assigned an address, and it's the wrong address.
from here I need to check, can I ping my local interface
type ping 192.168.1.51
can I ping the router ping 192.168.1.254
if the IP address settings are fine, then those should be OK.
if I can't ping the router from the same network as I'm plugged into then there is 1 of 4 problems.
1 - the cable is broken or not plugged in
2, the network adapter is broken
3, the router is broken
4, the routing table information on my computer is messed up and network traffic is being directed badly.
you can type route print to find that you.
next on the list of tests
can I ping an outside address ping 188.8.131.52
if I can't then why not?
(assuming then first tests are OK then it's one of two things)
1, my routing on my workstation is broke (weird route statements sending packets out the wrong interface or to gateways that don't exist, (again use route print)
2, the router is not connected to the Internet.
most routers have admin pages now, so you should be able to browse to the device and find out why. (if should say things like line down if there is a faulty line or it is broken or if the username/password is wrong.
so finally if I can ping an ip address by number (ping 184.108.40.206) can I ping something by name (ping Google
if I can reach the internet by number but not by name then it's a name resolution problem. (either DNS is broken, setup wrong, or being blocked)
to put this into context, here is a story:
I recently (few months ago) reconfigured a firewall at a customers site, the firewall protected a "guest" network, the company had bought a separate internet line especially for their guests to use. - except this ADSL line was a little flakey, and was failing often, leaving their visitors without internet access.
so, they asked, can we use our main company line and route out of that if and when the guest line goes down.
so I set it up one evening, and had a quick test, I could see everything was working.
the next day I say to them, I've configured it, not can you do some acceptance testing. they say it's not working they can't get online.
so I'm there, checking the routing, the lines, putting in different routes I can see that the line is up. I'm clearing NAT and PAT tables, watching them get rebuilt. I can see absolutely, it's working.
the firewall (which is also the DHCP server) if successfully registering machines, giving them ip settings. all the routing is working, all the NAT is working. I can see packets leaving the device. but can't really see very many coming back.
I'm checking out the router (main company router) that this guest firewall is plugged into and that's all working too...
the customer service manager is starting to get on my case saying "come on you need to get this done, we've only billed out half a day for the setup and design, this was supposed to be a quick test."
then it hits me, sure I'm doing all this technical stuff on the router that I once didn't even know was possible, but that shits not helping, something is really fundamentally broken, and I've started my trouble shooting at the wrong end!
then I go back to the basics that I've got here and instruct the customer: get a workstation launch command prompt.
type ping 220.127.116.11 you're getting replies? good, I'm not crazy it is working.
type ping Google
, what's that, it times out with name resolution because now that it's using a different internet line, the original DNS (provided by ISP A) blocks traffic coming from ISPB?
Had I just gone right back to basics, from the very start, instead of getting caught up in packet tracing and inspection, that problem would have been fully resolved in a half hour rather than the half day it ended up taking.
what I'm saying is I suspect that the same may be true for you. you did all this complicated stuff checking out malware, restoring the system and all that jazz.
but it sounds like you skipped the fundamentals.