I worked for an isp where I live. At one point he had 80 homes running through one ip. (yes he was an idiot). He did though, have decent protection on his network, eventually. When he finally went broke from not paying his bills, he had to sell the company at fire sale prices.
The company that bought it, removed any such protection and integrated his network into their own. Within days people started having virus problems.
I had switched a year before and the company I switched to actually gave me a 192.168.x.x address for my router. I thought that was weird but I did check and I do have an internet facing ip. I had them open up port 3389 on their router/modem and I could remote in.
What gets really strange though is that I have my network running on another router hooked up to theirs. Everything works fine, I can game, watch videos, port forward etc. There is a second port on their router for an xbox. After having latency issues because my wife was watching videos, I hooked up that port to my gaming machine. Guess what? Virus issues within hours.
Cleaned out the virus, went back to my router, no more issues.
The bottom line: The general public will never switch to IPv6 if is going to cost them money with no reward. If what we have works now, there is zero incentive. The isp's won't change until they have to either. No-one is going to volunteer.