これがこの質問をする適切なコミュニティであることを願いますが、本当に確信はありません。また、私には非常に基本的なネットワーク スキルしかないので、ご容赦ください。
私のホーム ネットワークには ASUS RT-AC3200 ルーターがあります。このネットワークのメイン デスクトップは W10 マシンで、VMWare Workstation を使用して 2 つの Linux VM を実行しています。
両方の VM にローカル IP があるとします。
192.168.1.1
192.168.1.2
ドメインによって、ネットワークの外部から両方の VM にアクセスしたいと思います。
abc.com -> 192.168.1.1
def.com -> 192.168.1.2
このため、ルーターの管理パネルでポート転送を使用します。残念ながら、ポートごとに 1 つの IP しか割り当てることができず、同じポート (HTTP) 上のトラフィックをドメインごとに区別する方法がありません。したがって、1 つのドメインでは上記を実現できますが、2 つのドメインでは実現できません。
VM の 1 つで別のポート (8080) を使用して HTTP を実行できることはわかっていますが、何らかのドメイン ベースのルーティングを実現するという当初の目標を達成できるかどうか疑問に思っています。
答え1
全くないポート転送は、ネットワーク レイヤー 3/4 情報 (つまり、IP + TCP/UDP ポート) に基づいて行われます。これらのレイヤーにはドメインは存在しません。
必要なのは、HTTP リバース プロキシです。HTTP を認識し、リクエストのHost
ヘッダーを確認できます。理論的には、ルーター上で実行できます。