1つのIPで複数のサーバーを運用したい

このQ&Aのポイント
  • 現在自宅でサーバーを運用しています。Webサーバーのバーチャルホストは1つのIPアドレスでも指定されたホスト名によって表示先のページが変わります。
  • しかし、CGIやPHPを大量に利用したいため1台のサーバーが処理をするため、性能面での問題が出てきます。そこで、複数のサーバーを配置し、Server1にグルーバルIPを割り当てます。
  • ドメインのDNSレコードはaaa.comもbbb.comも123.45.67.89を指定し、aaa.comに接続要求があった場合はServer1はServer2に転送します。bbb.comに接続要求があった場合はServer1はServer3に転送します。これにより、Server1の負担が軽減されます。
回答を見る
  • ベストアンサー

1つのIPで複数のサーバーを運用したい

現在自宅でサーバーを運用しています。 Webサーバーのバーチャルホストは1つのIPアドレスでも指定されたホスト名(ドメイン名)によって表示先のページが変わります。しかし、CGIやPHPを大量に利用したいため1台のサーバーが処理をするため、性能面での問題が出てきます。このため、次のようなことが可能かと考えました。 Server1    | ------------- |       | Server2   Server3 と配置し、ServerのみにグルーバルIPを割り当てます。Server2とServer3はプライベートIPです。 そして、ドメインのDNSレコードはaaa.comもbbb.comも123.45.67.89を指定します。(バーチャルホストと同様) そして、aaa.comに接続要求があった場合はServer1はServer2に転送します。そしてServer2が要求された処理を行います。 bbb.comに接続要求があった場合はServer1はServer3に転送します。そしてServer3が要求された処理を行います。こうすることで、Server1は転送以外の処理を行わないため負担が軽減されると思います。OSはWindowsドメイン環境のグループポリシで一括設定を行いたいので、Windowsを望みます。無理なら他のOSでもいいです。違うポート番号で運用する方法はなしです。 よろしくお願いします。

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

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

同じIPアドレス・ポートを使用する以上、WWWアクセスとしてのリクエストを見ないとどちら宛の通信かわかりません。 そういうWWWアクセスとしてリクエストを見た上で、内容に応じて処理を他のサーバに割り振るしくみを「リバースプロキシ」と呼びます。 Server1は通常のWebサーバとして「name based virtual host」に設定し、 その上で、Server1のWebサーバ上でホスト設定ごとにリバースプロキシの設定をして、リクエストをServer2/Server3に振り分けます。 Windows上でも、IISでもApacheでもリバースプロキシは設定可能です。詳しくは「リバースプロキシ」ついて調べてみて下さい。

abcd1111
質問者

お礼

できました。 ありがとうございます。 もう1つ質問したいのですが、これと似たような方法でドメイン名によってリモートデスクトップの接続先サーバーを変えることも可能でしょうか?

その他の回答 (1)

  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.2

> ドメイン名によってリモートデスクトップの接続先サーバーを変えることも可能でしょうか? http は、プロトコルとしてリクエストデータ中に、アクセス先の「ホスト名」情報が入っているため、 それを見ることで振り分けることができますが、 リモートデスクトップのプロトコルには、ホスト名情報は入っていません。 そのため、サーバ側からは「どのホスト(ドメイン)宛にアクセスしてきたのか」を知る手段はありませんので、原理的に振り分けは不可能です。 ただし、待ち受けをhttpsで受けて中継する「TSゲートウェイ」を使えば、 一つのIPアドレス・一つのポートへの待ち受けから、複数のリモートデスクトップ接続への振り分けは可能だと思います。 http://www.atmarkit.co.jp/fwin2k/operation/tsgw01/tsgw01_01.html

abcd1111
質問者

お礼

ありがとうございました。

関連するQ&A

  • 動的IP(ADSL)+ダイナミックDNS+webサーバー

    動的IPでダイナミックDNSを利用して、 webサーバを公開したく思っているのですが… 取得したサブドメインが aaa.bbb.ccc とした場合、 www1.aaa.bbb.ccc www2.aaa.bbb.ccc という風にして公開することは可能でしょうか? 可能な場合、DNSサーバを立ち上げる必要があるのでしょうか? それともバーチャルホスト機能で出来るでしょうか? 今考えてるのは、一台のサーバマシンで 異なったコンテンツをそれぞれ www1.aaa.bbb.ccc www2.aaa.bbb.ccc として表示させたいのですが、 ゆくゆくは2台に分けてと思ってます。 良きアドバイス宜しくお願いします。

  • 2台のDNSサーバで複数ドメインを運用します。

    ■■前提■■ CentOS(5.3)およびBINDを使用します。 ●以下のドメインを運用すると仮定します。 xxx.com yyy.com ●xxx.comのドメイン情報(レジストラ)に以下の内容を設定します。 プライマリDNSサーバホスト名 dns1.xxx.com(192.168.0.2) セカンダリDNSサーバホスト名 dns2.xxx.com(192.168.0.3) ●yyy.comのドメイン情報(レジストラ)に以下の内容を設定します。 プライマリDNSサーバホスト名 dns1.yyy.com(192.168.0.2) セカンダリDNSサーバホスト名 dns2.yyy.com(192.168.0.3) そこで質問です。 ■■質問内容■■ ●質問1 上記の運用は、DNSサーバ2台用意すれば可能でしょうか? ●質問2 複数ドメインのDNSサーバのIPアドレスは、同じに設定できますでしょうか? ※上記の場合は、192.168.0.2と192.168.0.3は、複数ドメインで同一のIPを使用しています。 ●質問3 同一サーバを、dns1.xxx.comとdns1.yyy.comのように各ドメインのレジストラに、このような名前で登録できますでしょうか。

  • DNSの逆引きで答えさせるホスト名は何が理想的でしょうか?

    現在、レンタル専用サーバを運用しています。概要は以下の通りです。 IPが1個付与・・・111.222.333.444(仮) ネームベースのバーチャルホストで複数ドメインを運用・・・aaa.jp、bbb.jp、ccc.com(全て仮) ネームサーバは自前・・・正引き=問題なし、逆引き=レンタル会社既定で設定なし やはり逆引きができないと都合が悪いこともあるので、逆引きの設定をレンタル会社に依頼しなければと思います。 しかし、IPが1個なので、 111.222.333.444=>xxx.aaa.jp 111.222.333.444=>xxx.bbb.jp 111.222.333.444=>xxx.ccc.com という依頼を出すわけにもいなかいですし・・・。 なので、メインで使用している111.222.333.444=>xxx.aaa.jpで逆引き設定してもらうしかないのだろうと考えています。 それはそれで仕方ないのでしょうが、じゃあホスト名xxxは何にしたらという疑問が湧き出てしまいました。 111.222.333.444=>linux.aaa.jp(レンタルサーバのホスト名) 111.222.333.444=>ns.aaa.jp(ネームサーバのホスト名) 111.222.333.444=>web.aaa.jp(ウェブサーバのホスト名) 111.222.333.444=>mail.aaa.jp(メールサーバのホスト名) 111.222.333.444=>noexist.aaa.jp(架空のホスト名) 最も影響を受けるのはメールなので、メールサーバのホスト名かとも思いましたが、WEBからのgethostbyaddrの要求にメールサーバのホストを返すのもおかしいですし・・・。 どのホスト名を答えさせるのが理想的なのでしょうか?

  • 複数のドメインで1つのサーバ

    はじめまして。 最近2つ目のドメインを取得しました。 というよりドメイン変更で今 aaa.comというドメインを持っていて(さくらインターネットで取得)今回新たに追加で bbb.netというドメインを取得(Value-Domainで取得)しました。 これからはbbb.netを使いたいからaaa.comを廃止しようと思っています。 そこで質問です。 ドメインは2つありますが、サーバは同じサーバ(さくらインターネットのレンタルサーバ(ライト))で、現在どちらのドメインに接続しても同じページが表示されるしメールもaaa.com/bbb.netどちらも両方同じメールを受信します。 サーバはこのままさくらインターネットのサーバを使いたいのですが、ドメインだけ廃止しちゃうとaaa.comというドメインが被さっていたサーバのメールはbbb.netでは受信できないのでしょうか? (メールマガジン等もaaa.comを廃止した後はbbb.netのドメインアドレスで再登録しないといけないのか?) 教えてください。お願いします。

  • 【Apache】バーチャルホストの設定について

    質問させていただきます。 Ubuntu 14.04 Apache 2.4.7 にて運用中のWebサーバがあります。 今、このサーバ上で http://aaa.com(非SSL) https://bbb.com(SSL) という2つの異なるドメインのサイトを運用しているのですが、 https://aaa.com とすると、警告が出た後、https//bbb.comのトップページが表示されてしまいます。 これをhttps://aaa.comにアクセスがあった場合、http://aaa.comにリダイレクトさせたいのですが、Apacheのバーチャルホストにてどのような記述をすればよろしいのでしょうか? 大変お手数ですが、お教えいただけると幸いです。

  • 1台のPCで複数IPの運用について

    先日、バーチャルホストの件でお世話になったものです。 また、壁にぶつかってしまったので、どなたかご教授を願います。 環境:Windows2003server ApacheFriends XAMPP (Basispaket) version 1.7.1 + Apache 2.2.11 バーチャルホストをSSLに対応したく、IPベースで行いたいため、現在1台のサーバーに2つ追加して、計3つのプライベートIPアドレスを割り当てております。 ※なお追加は、単純に[ローカルエリア接続]→[プロパティ]の[IP設定]→[追加]で行いました。 例)192.168.0.11 ・ 192.168.0.12 ・ 192.168.0.13 Apacheにて、それぞれのIPとホスト名の関連づけをしました 192.168.0.11 hoge1.dom.com 192.168.0.12 hoge2.dom.com 192.168.0.13 hoge3.dom.com hostsファイルを、上記に基づいて設定しました サーバー側からブラウザにて、hoge1.dom.com、hoge2.dom.com、hoge3.dom.comでアクセスしたところ、問題なく表示されました。 で、現在つまづいているのが、クライアント側からブラウザでアクセスすると、どのホスト名もメイン(ここでは192.168.0.11 hoge1.dom.comにあたる場所)にしかアクセスされません。 ちなみに、IPアドレスでアクセスすると、正常に表示されます。ドメインだと、常にhoge1.dom.comのページしか表示されません。 ただ、ルーター側でグローバルIPから192.168.0.11に飛ばす設定をしていますが、これが関係しているのでしょうか? 私の単純な認識では、hostsでホスト名からIPアドレスで解決していると思っていたので、少し混乱しております。 何か不足している情報、設定などがありましたら、また、ご教授お願いいたします。 ちなみにIPベースではなく、ポートで振り分けるのなら問題なかったのですが、出来ればこちらの方法は使いたくありません。

  • 名前ベースの複数ホストで複数サイト運営

    名前ベース(IPアドレスは1つのみ)のホスト(バーチャルホストではなく実際に複数台のマシン)で、複数サイトを運営することができますか? たとえば、次のような事です。 -------------------------------------------------- ホスト名 LAN側IP WAN側IP ポート サイト名 server1 192.168.1.2 aaa.bbb.ccc.ddd 80 サイトA server2 192.168.1.3 aaa.bbb.ccc.ddd 80 サイトB server3 192.168.1.4 aaa.bbb.ccc.ddd 80 サイトC --------------------------------------------------- 何れもWAN側IPaaa.bbb.ccc.dddでアクセスしてきて、 HTTPリクエストヘッダで指定されているホスト名を元にアドレス変換?したいのです。 そもそもルータがHTTPリクエストヘッダの参照などせず、 1:1でしかアドレス変換してくれないため、 私の今の認識だと不可能と考えていますが、 もし可能ということであれば、もっと調べて実現したいと考えています。 実際に無理なのであれば、その旨の回答も是非下さい。

  • ホストが複数あるドメインを別々のサーバに転送

    DDNSを使って、ドメインを自宅サーバに転送するわけですが、 domain.com --> 自宅Server ホストが複数あるドメインを別々のサーバに転送することは可能でしょうか? www1.domain.com --> Server1 www2.domain.com --> Server2 www3.domain.com --> Server3 ※ちなみにSever1,2,3は別々のIPアドレス(物理的な場所も別々)です。

  • sendmail での配送先設定について

    sendmail-8.9.3 を使用しています。 サーバーをバーチャルドメインで運用しているのですが、例えば AAA.com と BBB.com の2つのドメインで運用しているとして、AAA.com からのメールはすべて CCC.com に配送し、BBB.com からのメールはメール内の宛先に従って配送するような設定をしたいのですが、このような設定は可能なのでしょうか?もし可能であれば設定方法をご教授願います。 ちなみに、バーチャルドメインで運用していないサーバーでは、/etc/mail/mailertable で、 . smtp:CCC.com と設定して問題なく動作しています。 この設定だとすべてのメールを CCC.com に配送することになるのでバーチャルドメインにした時に不都合なのです。 この設定の応用で何とかならないか検討してみたのですが、行き詰まってしまいまして… よろしくお願いいたします。

  • 【DNS】複数ドメインのネームサーバについて

    1台のDNSサーバで4つのドメインを管理している場合のネームサーバはそのサーバのホスト名を使って、ネームサーバを統一したほうがいいのか。それとも各ドメイン毎に割り振った方がいいのか。詳細は下記質問事項に記載致しました。構成として(1)案、(2)案のどちらの方が問題ないのかどうかを、ご存知の方がありましたらご教授お願い致します。 *下記、すべて仮となっております。 ■構成 ▼管理ドメイン aaa.net bbb.com ccc.jp ddd.info ▼HOSTNAME dns777.aaa.net ▼DomainNamePointer 40.30.20.10.in-addr.arpa = dns777.aaa.net ▼DNSサーバIPアドレス 10.20.30.40 ■質問事項 (1) 案 aaa.net nameserver = dns777.aaa.net bbb.com nameserver = dns777.aaa.net ccc.jp nameserver = dns777.aaa.net ddd.info nameserver = dns777.aaa.net 40.30.20.10.in-addr.arpa = dns777.aaa.net (2)案 aaa.net nameserver = ns.aaa.net bbb.com nameserver = ns.bbb.com ccc.jp nameserver = ns.ccc.jp ddd.info nameserver = ns.ddd.info 40.30.20.10.in-addr.arpa = ns.aaa.net 40.30.20.10.in-addr.arpa = ns.bbb.com 40.30.20.10.in-addr.arpa = ns.ccc.jp 40.30.20.10.in-addr.arpa = ns.ddd.info