I'm trying to make a chat server with a web client and python backend. Everything works fine on the local network (both localhost and different computers under the same router). However, when I try to connect with my external IP it doesn't work. (this is true for both a JavaScript and Python client). The external port is forwarded on TCP.
Backend server content is the basic server shown on the documentation for the Python websockets library.
Client is a JS oneliner that is only trying to connect: var client = new WebSocket("ws://ip:port");
EDIT: I'm actually stupid. I thought you could access the external IP on the local network and it would have the same effect. I believed this because ssh works that way.