T. Smith
T. Smith

Reputation: 154

Flask Waitress Simple Webserver

I am trying to set up a simple webserver. This is the simplified code.

from flask import Flask
from waitress import serve

app = Flask(__name__)

@app.route("/data")
def get_data():
    return {"abc"[i]:i for i in range(3)}

if __name__=="__main__":  
    # app.run(debug=True, host="0.0.0.0", port=8080)
    serve(app, host="0.0.0.0", port=8080)

I can connect to this on my desktop and my phone (which is on my WiFi) and it works as desired.

The issue comes when a connection is attempted from a device not on my network (say a phone on a different network). The response is ERR_ADDRESS_UNREACHABLE.

I setup an inbound rule in my firewall settings. I'm on a windows 10 OS right now if that matters.

I also read I should set up port forwarding in my router so I followed these instructions from my ISP.

I'm not sure what else I should change.

Thanks!

Upvotes: 0

Views: 634

Answers (1)

T. Smith
T. Smith

Reputation: 154

Answering my own question for posterity.

My issue was some AT&T weirdness. I turned on IP passthrough in my router settings and other people can connect to the server.

If I run ipconfig in my cmd prompt, I get an IPv4 of A.B.C.D, but https://whatismyipaddress.com/ responds with E.F.G.H.

I can connect to A.B.C.D:8080/data from my computer but not the other IP.

Someone not on my IP can connect to E.F.G.H:8080/data from a different network but not the other one.

The final takeaway is that I should probably just use some sort of ns services like cloudflare.

Upvotes: 0

Related Questions