- ベストアンサー
グローバルIP1つで複数のwebサーバを立てる方法
グローバルIP1つを取得して、複数のwebサーバにプライベートIPを振り当ててドメイン名によって振り分けるということは可能なのでしょうか?たとえばwww.example.jpは***.***.***.1に。www2.example.jpは***.***.***.2にアクセスするというようにできるのでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
安価にということであれば、リバースプロキシサーバでも立ててということになると思います。 子羊ルータにもそのあたりの機能があったと思いましたが生産中止になっていました。 DeleGeteを使ってサーバを公開する方法が記載されたページがありましたので参考まで。
その他の回答 (4)
- galluda
- ベストアンサー率35% (440/1242)
がるです。 んっと。ハードルの部分について少し細かく言及を。 結局のところ、HTTP(以外もそうなのですが)もパケット上の通信であるからには「単一のIPの通信に対する特定条件での振り分け」になるのですが。 この場合特定の条件とは「パケット内を分析すると出てくる、ある特定の文字列(リクエスト ドメイン名)」になるかと思います。 で、Webサーバ1台だと、その振り分けを、HTTPについてはApacheが肩代わりしてくれるです。 ところが、Webサーバが複数台だと、サーバに到達する前の「どこかで」振り分ける必要性が出てくるわけでして。それを「どこが」負担するかが大きな問題になります。 で、通常そういった振り分けをするのはL7スイッチ付近になることが多いですが、おっしゃるとおりお値段の問題が見逃せません(苦笑 そういった点から、基本的には「Apache任せにできる、1Webサーバ上での振り分け」のほうが圧倒的に楽ができるです。
- galluda
- ベストアンサー率35% (440/1242)
がると申します。 んっと…「複数のwebサーバ」になるととたんにハードルが半端なくあがるのですが。 恐らくはロードバランサのL7スイッチの機能で「Request URLによる振り分け」の機能を持っているものがあるのではないかと予想はするのですが…(確認はしてません、すみません)。 1台のサーバであれば、多少制約はつきますが(HTTP1.0系のProxy通されるとNG)、Virtual Host設定で割合簡単に振り分けがききます(Apacheの場合) 。
- icmp
- ベストアンサー率63% (14/22)
どちらか一方のポート番号を変更してよいのであれば#1さんの方法で可能だと思います。 www.example.jp(:80) ***.***.***.1 www2.example.jp:88 ***.***.***.2 ただ、1つのグローバルIPアドレスで複数のWEBサーバを立てる場合、 一台の物理的なサーバで「名前ベースの仮想ホスト」を設定するのが 一般的で簡単じゃないかと思います。 これはWEBサーバ側でクライアントがどのドメインを指定しているか 環境変数から読み取りそれによりどのWEBサイトに飛ばすか判断するもので apache や IIS などのWEBサービスで標準で使える機能です。 (但し、HTTPs の場合は名前ベースの仮想ホストが利用できない。) 物理的に複数台に分ける必要があるのであればしょうがないですが。
- OsieteG00
- ベストアンサー率35% (777/2173)
ルータがあればNAPTの働きで可能です。
補足
ありがとうございます。バーチャルホストのことは存じております。物理的に分けたいのですが、ロードバランサはとても高価で手が出せません… 単純に何もかも安価に構築したいのです(^-^; >「複数のwebサーバ」になるととたんにハードルが半端なくあがるのですが。 とあるのですが、具体的にはどのような問題がでてくるのでしょうか?コンテンツ自体はまったく別のものになります。同一コンテンツの負荷分散を行いたいわけではないのですが…