我希望這是問這個問題的正確社區,真的不確定。請耐心等待,因為我只有非常基本的網路技能。
我的家庭網路有一台華碩 RT-AC3200 路由器。我在該網路中的主桌面是一台 W10 計算機,我使用 VMWare Workstation 在其上運行兩個 Linux VM。
兩台虛擬機器都有本地 IP,比方說:
192.168.1.1
192.168.1.2
我想透過網域從網路外部存取這兩個虛擬機器:
abc.com -> 192.168.1.1
def.com -> 192.168.1.2
為此,我在路由器的管理面板中使用連接埠轉送。不幸的是,我只能為每個連接埠分配一個 IP,無法按網域區分相同連接埠 (HTTP) 上的流量。所以我可以為一個域實現上述目標,但不能為兩個域實現。
我知道我可以在其中一台虛擬機器的不同連接埠 (8080) 上執行 HTTP,但我想知道是否有可能實現我最初的目標,即擁有某種類型的基於網域的路由?
答案1
一點也不。連接埠轉送是基於網路層 3/4 資訊(即 IP + TCP/UDP 連接埠)發生的事情。這些層不存在域。
您想要的是 HTTP 反向代理。它了解 HTTP 並且可以查看請求的Host
標頭。理論上你可以在路由器上運行它。