Okay so here is the situation.
1. The server works fine locally. Every PC on my network can connect and play no problem.
2. My firewall has been configured. Java, CMD, and port 25565 have been allowed through my firewall. (windows firewall)
3. I am port forwarding through my router. I'm using the spectrum modem router thing. Canyouseeme.org can not see me, it says connection timed out.
4. I have my external IP, I've given it to a friend, they tried using it just straight up and then with the port added to the end like :25565 Didn't work.
5. I am not using a static IP. I'll worry about that when the thing actually works. I am keeping the IPs up to date manually.
My current theories:
1. All my PCs have the same external IP address. I think port forwarding should fix this by seeing something trying to connect through the 25565 port and then send it to my server PC.
2. I am thinking that there might be a setting in my router that I need to tweak.
New theory. I am pretty darn sure that spectrum isn't allowing me to port forward properly. All of the boxes for external IP remain greyed out no matter what.
New Update! Putting netstat into the commandline shows that the server isn't even listening.