如何限制烧瓶应用程序只能在(家庭)内部网络上访问

How to restrict flask app to be accessible only on (home) internal network

我想确认如何 运行 我的 Flask 应用程序,以便它在我的内部(家庭)网络中的所有 IP 上都是 visible/listens。我不希望它可以从外部访问(即在家庭网络之外/通过 Internet)。

按照 Quickstart page 上 "Externally Visible Server" 的说明,

我可以试试:

if __name__ == '__main__':
    app.run(host="0.0.0.0", port=1234)

这是正确的,还是 IP“0.0.0.0”使其在外部侦听(即默认情况下也在我的家庭网络外部)?限制应用程序仅侦听内部(家庭)网络的最佳方法是什么?

感谢您的帮助。 (我不太熟悉事物的网络方面。)

0.0.0.0 上收听将使您的应用在所有本地网络上可见。但是,除非您在路由器上配置端口转发,否则您的应用将无法从网络外部访问(例如通过互联网)。

要确保您的应用在特定网络上运行,您可以设置特定的 IP 地址:

if __name__ == '__main__':
    app.run(host="192.168.1.5", port=1234)