I do some work occasionally for a shop I go to, my deal with them is basically we swap services, they get me every now and then to answer a question or two and I've been slowly cleaning up a small IT mess for them. One of the issues they were having was their DSL was really too slow for what they were doing (and they needed some backend changes), so I sold them on the idea of Comcast since their bandwidth stability is not mission critical and we have the same thing where I work now.
What follows involves 6 on site comcast techs, 3 visits by them, 14 calls, 104 miles of my driving, and a bunch of blaming anything possible other than their modem which I had asked them to replace on visit 2, here're the highlights
Shop orders 1 Comcast business class with 5 static IPs
Get a call that Comcast has shown up and got everything set up and left, I come in to swap them over and realize that they never set up the 5 static IPs, nor left instructions to do so... no biggie, I call Comcast up and tell them the setup, they plunk in that information, we do some tests, realize there's a firewall running on the modem blocking inbound connections, call #2 gets them to turn that off... things seem good, I leave thinking mission accomplished.
Things start getting strange - some web video won't play, flash works on some sites and not others, they can't download any antivirus software to scan for a problem. I assume their network is infected and go over bringing drives with 4 different AV softwares. No viruses or malware anywhere. I realize it's any software downloaded is corrupted. Any SSL connection I make is broken, and any remote desktop I do out of network ends with "error in encryption" within a minute or two. We get "MAC error" at one point on a secure site.
I swap the routers that are behind the modem out with some spares I have, replace equipment also with spares, do standard IBM tear-down and determine that once anything touches a NAT device (any NAT device) behind the comcast router, data is corrupted. I call Comcast up, ask for a router replacement, service techs come within 4 hours or so, evidently spend the day there running a new line because they saw some issues on the line. Techs say there's nothing wrong with the router and tell the people on site that it's probably my fault / some people just don't know what they're doing. Also because we have static IPs, one of the techs tells the store person that it will run slower, because dynamic IPs are dynamic and static is slow... the store person is smart enough to know that's BS. None of Comcast's work that days does anything to help the situation.
They're advised that CAT-5 cable run for DSL and for Comcast are different, and that since the problem is in the network we should look at that. I don't argue the point as, well, I'm out of ideas at that point since they swear their modem is fine. New cable run yields no new thing. I was sort of hoping that the cable was throwing up interference even though I know that with tcp/ip it would be damn hard to get that corrupted... one of my wiring guys tells me it's theoretically possible that the line is causing the issue but most likely not.
Day 4) on the same equipment at my work (comcast router, my laptop) I successfully recreate test conditions (laptop to wireless router to comcast router), no problem whatsoever. Put computer into sleep mode and haul my ass back out to the shop. Un-sleep, connect everything, files are now corrupted when I download, video artifacts and looks horrid. I call Comcast up, they can't hear anything I say, call Comcast again, am now told my account number is missing several digits (the one printed next to the words "account number") - from day 4 on out my previous account number doesn't seem to work. Comcast tech attempting to rebuild router information keeps getting kicked out of comcast modem. I ask "isn't that a sign that something is wrong" she says yes, but asks me to try my tests again and call back. They fail, I have an emergency and need to jet.
Day 5) I get there asscrack of morning. Call Comcast up, manage to speak to a man who'd seen that same scenario 3 times before in 5 years working for comcast. He sends a tech to replace the modem and does not understand why they didn't right at the start. I leave, as basically it's a 4-hour window. 5 hours later a tech has arrived and swapped the modem out and says everything is good. The network inside is down completely, all the business's stuff is out, the tech tells on-sight staff that our equipment is malfunctioning and leaves with the customer completely dead in the water. I haul ass 20 more miles to get there, get on scene with laptop, spare wireless router, switches, all the test gear I could ever need.
Plug into the new comcast cable modem directly, and once again it's not configured. Another call to comcast gets the IPs assigned, firewall turned off, local NAT/DHCP disabled, and everything works fine from here on out. The issue was, we think, a problem with the cable modem's RAM... whatever it was a good TCP/IP packet would come in and occasionally be repackaged and corrupted and seemed to only have that problem sending to NAT devices.
Side note - somewhere in my story I left out that at one point there was an issue going on locally that they blamed our problems on. Also somewhere in there Comcast Business calls and attempts to process a quote I had requested as an order / but that's another story.
The TL;DR version: Issue was a bad modem. Techs claimed during the pre-replacement time that our wiring is bad, our network is bad, our equipment is at fault, I don't know what I'm doing, our account number (they printed on an invoice and gave the shop) is wrong even though it worked for the first 3 days, static IPs are slower than dynamic IPs, CAT-5 wiring for a LAN port on 3-year-old DSL is different than CAT-5 wiring for a comcast LAN port. Post-replacement they leave a customer completely down because they didn't configure the replacement router and left claiming it was our issue.