• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:WEBサーバを2台立てる際のポートフォワーディグ)

WEBサーバを2台立てる際のポートフォワーディング

このQ&Aのポイント
  • 複数のWEBサーバを立てて外部からアクセスさせる方法について
  • ルータのポートフォワーディングを使用してアドレス変換を行う必要がある
  • グローバルIPアドレスがもう1つ必要になる可能性がある

質問者が選んだベストアンサー

  • ベストアンサー
  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.4

もしルータのみで設定しようとした場合ですが、ポートフォーワーディングの設定は、 WAN側IPアドレス:WAN側ポート番号→LAN側IPアドレス:LAN側ポート番号 のように設定します WAN側IPアドレスが1つなら、WAN側ポート番号を変えて振り分けるしかありません 逆にIPアドレスが2つならポート番号は両方80/TCPにできます ルータではなく、HTTPのリクエストヘッダを解釈できるようなロードバランサやリバースプロキシサーバを用意して、FQDNを2つ取ればIPアドレスが1つでも、 www1.example.com:80 → サーバAへ www2.example.com:80 → サーバBへ という振り分けはできます ルータはIPアドレスとポート番号までしか識別できないのでドメインやFQDNを見て振り分けはできません

power0101
質問者

お礼

>WAN側IPアドレスが1つなら、WAN側ポート番号を変えて振り分けるしかありません ルータのみで、グローバルIPアドレス1個の場合、そうするしかないですよね。 >HTTPのリクエストヘッダを解釈できるようなロードバランサやリバースプロキシサーバを用意してドメインやFQDNを見て振り分けをする。 なるほど、そういう手法もあるんですね 納得しました。 ところで一般的な市販のルータ1個(1万くらいのやつ)で 既存の回線が物理的に1つの環境でも、プロバイダにもう1つグローバルIPアドレスを 申請すれば、ルータ側でグローバルIPアドレスを1回線で2個受けることって できるんでしょうか? 使用しているルータはBUFFALO WHR-G300Nという一般的なやつです。

その他の回答 (3)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

いったんサーバーAで全部受けて、ホスト名によってサーバーBに飛ばすということができるはず。 サーバーはApacheですよね?ちょっとテストしてませんが、A側の設定は、これでホスト名によって振り分けできるんじゃないかなあ。B側設定は普通でいいです。 NameVirtualHost * <VirtualHost *:80> ServerName A.example.com ProxyPass / http://localhost/ ProxyPassReverse / http://localhost/ </VirtualHost> <VirtualHost *:80> ServerName B.example.com ProxyPass / http://192.168.1.20/ # BのローカルIPアドレス ProxyPassReverse / http://192.168.1.20/ </VirtualHost> だめなら、VirtualHost、ReverseProxy をキーワードに調べてください。

power0101
質問者

お礼

>いったんサーバーAで全部受けて、ホスト名によってサーバーBに飛ばす サーバはApacheです。 VirtualHostは稼動させていますが、ReverseProxyは知りませんでした。 調べてみますね。

  • misawajp
  • ベストアンサー率24% (918/3743)
回答No.2

その通りです 同じIPアドレスで同じポート80では サーバAかBかの区別はできません サーバAかBかを区別するには IPアドレスかポート番号のいずれかが異なる必要があります

power0101
質問者

お礼

#4さんの言うとおり、納得です。 ありがとうございます。

回答No.1
power0101
質問者

お礼

ありがとうございます。 調べてみますね。

関連するQ&A