簡體   English   中英

如何使用公共 IP 訪問連接到 Android 設備 wifi 熱點的計算機上運行的 NodeJs HTTP 服務器?

[英]How to access a NodeJs HTTP Server running on a computer connected to wifi hot-spot of Android device with public IP?

Android device ( Internet Connected )
  |
(Wi-Fi Hot-spot) 
  |
  |
Computer ( NodeJs Server started )

NodeJs 服務器僅以私有 IP 啟動...
如何使用公共 IP啟動 NodeJs 服務器?

計算機中啟動的NodeJs服務器:(未列出公共IP

C:\Users\ASUS>http-server .
Starting up http-server, serving .
Available on:
  http://192.168.42.74:8080
  http://192.168.137.1:8080
  http://127.0.0.1:8080
Hit CTRL-C to stop the server

[但是,如果我在我的 Android 設備中啟動服務器(使用 Termux),我會得到公共 IP... ]

哇,這是一個有趣的問題。 如果您想在 LAN 中使用您的服務器,您只需輸入服務器的 IP 地址和端口號即可。 服務器可以是您的手機或計算機。 對於移動熱點,您可以使用其默認網關 IP 訪問它,默認網關為 192.168.43.1。 在這里你可以查看我給出的演示,其中移動熱點被用作局域網中所有設備的服務器。

棘手的部分是當您嘗試從 Internet 訪問您的服務器時。 顯然,當您連接到互聯網時,ISP 會為您的路由器(或移動設備)提供一個公共 IP。 任何傳入或傳出 LAN 的數據都使用此公共 IP。 分配一個公共 IP 的原因之一是隱藏路由器對其執行 NAT 的 LAN 設備的 IP。

您可以將路由器配置為將傳入流量重定向到 LAN 中將運行 NodeJs 服務器的特定設備。 我認為,您可以為此進行端口轉發。 這里檢查答案。 請記住,公共 IP 不是 static。 ISP 使用 DHCP 為其客戶動態分配公共 IP。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM