はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 質問掲示板

 このスレッドはクローズされています。記事の閲覧のみとなります。

 バーチャルホストの設定に関する質問
日時: 2005/12/17 20:41
名前: もちお   <kohei1222@hotmail.co.jp>

バーチャルホストに関して、その概念はある程度理解するところまではいっているのですが、どうしても設定が上手くいかないので、質問させていただきます。宜しくお願いします。

グローバルIP200.200.200.200を使い
名前ベースのバーチャルホストでhttp://www.abc.jpとhttp://www.motio.comをapacheのバーチャルホスト機能を使い表示させるにはどうしたらいいのか?という質問です。因みに、IPとドメインは実際のものではなく、架空のものです。

現状として
http://www.abc.jpのみで表示させようとした場合は問題なく表示できています
下記の設定を行いbindとapacheをリロードしてみるとhttp://www.motio.comを表示することが出来ないばかりでなくhttp://www.abc.jpも表示できなくなってしまいます
またapacheのバーチャルホストンの設定のところで#を外して、バーチャルホスト機能を使えるようにするとapacheのリロード及び、再起動が出来なくなってしまいます。


1.named.confへのゾーンの追加

zone "abc.jp" IN {
   type master;
   file "abc.jp.db";
   allow-update { none; };
};

zone "200.200.200.in-addr.arpa" IN {
   type master;
   file "200.200.200.in-addr.arpa.db";
   allow-update { none; };
};

zone "motio.com.db" IN {
   type master;
   file "kaju.homeip.net.db";
   allow-update { none; };
};


2.ゾーンデータベースの作成

vi var/named/abc.jp.db

$TTL 86400
abc.jp.  IN  SOA  ns.abc.jp.  root.abc.jp.  (
  20051128  ;Serial
  7200    ;Refresh
  3600    ;Retry
  604800   ;Expire
  86400   ;Minimum TTL
)

   IN   NS   ns.abc.jp.

   IN   MX 10 ns

ns  IN   A   200.200.200.200
   IN   MX 10 ns
www IN   CNAME ns


vi /var/named/motio.com.db

$TTL 86400
motio.com.  IN  SOA  ns.motio.com.  root.motio.com.  (
   20051212  ;Serial
   7200    ;Refresh
   3600    ;Retry
   604800   ;Expire
   86400   ;Minimum TTL
)

   IN NS  ns.motio.com.
   IN MX 10 ns

ns  IN  A  200.200.200.200
   IN  MX 10 ns
www.motio.com. IN  A  200.200.200.200


vi /var/named/200.200.200.in-addr.arpa.db

$TTL 86400
200.200.200.in-addr.arpa.  IN  SOA  ns.cope-net.jp.  root.cope-net.jp. 
(
  20051128  ;Serial
  7200    ;Refresh
  3600    ;Retry
  604800   ;Expire
  86400   ;Minimum TTL
)

   IN   NS   ns.abc.jp

200 IN   PTR  ns.abc.jp


3.apacheのバーチャルホストの設定

NameVirtualHost 200.200.200.200


<VirtualHost 200.200.200.200>
ServerName  www.abc.jp
ServerAdmin webmaster@abc.jp
DocumentRoot /var/www/html
ErrorLog /usr/local/apache/log/abc_error_log
TransferLog /usr/local/apache/log/abc_access_log
</VirtualHost>

<VirtualHost 200.200.200.200>
DocumentRoot /var/www/html/motio
ServerName www.motio.com
ServerAdmin webmaster@motio.com
ErrorLog /usr/local/apache/log/motio_error_log
transferLog /usr/local/apache/log/motio_access_log
</VirtualHost>


上記の設定を行った後namedとhttpdを再起動

メンテ

Page:  [1] [2] [3] [4] [5] [6] [7] [8] [9]

■ コンテンツ関連情報

 Re: バーチャルホストの設定に関する質問 ( No.1 )
日時: 2005/12/19 11:24
名前: 管理者

もちおさん、こんにちは。
新しいスレッドを立てて頂き、ありがとうございます。
(話が見えない方は、「http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=341」をご覧下さい)

一時、家に戻って参りましたのでレスしています。
この後、また出てしまうのでレスが遅くなる事をご了承くださいね。


それではまず、メインとなる名前を決定してください。
(メインとなる名前:バーチャルを使わない場合の名前)

以降は(メイン:http://www.abc.jp、バーチャル:http://www.motio.com)として話を進めます。

【前提条件】
  ・「www.abc.jp」と「www.motio.com」は有料/無料問わず外部のDNSで名前解決できている事

【ネットワーク情報】

  グローバルIP  :219.109.*.210
  ルータ     :192.168.1.1(LAN側)
  サーバ/サーバ名 :192.168.1.2/ns.abc.jp
  ※サーバ名:ホスト名のFQDNを指します
  クライアント  :192.168.1.3

【ネットワーク構成】
  もちおさんの環境は以下の様になっていると思います。

      『外部』     ┃      『内部』
               ┃       
┌────┐ ┌──────────────┐ ┌──────┐
│    │ │      ルータ     │ │  サーバ  │
│InterNet│─├───────┬──────┤─├──────┤
│    │ │   WAN側  │  LAN側  │ │192.168.1.2 │
└────┘ │219.109.*.210 │192.168.1.1 │ └──────┘
       └───────┴──────┘ ┌──────┐
               ┃        │クライアント│
               ┃       ─├──────┤
               ┃        │192.168.1.3 │
               ┃        └──────┘


●●チェックポイント●●(最終コメント参照)


【内部での名前解決】
 ※:クライアントがDHCPで取得できる様に設定を行います。(理由:DNSサーバをクライアントが自動取得できる為)
 「ネットワーク構成」の『内部』で名前によるIPアドレスの解決を可能とするため、BINDを正しく設定します

  ①サーバのルーティングがルータに向く様に「/etc/sysconfig/network」を以下の様にします
    NETWORKING=yes
    HOSTNAME=ns.abc.jp
    GATEWAY=192.168.1.1
  ②名前解決させる為のサーバを示す定義「/etc/resolv.conf」を以下の様にします
    search abc.jp
    nameserver 192.168.1.2
    nameserver 192.168.1.1
    ※:)「search」は、ドメイン名を省略した時に付加されます
       「nameserver」は名前解決するDNSサーバのIPアドレスを指定します。
       (2行定義している場合は最初がプライマリ(即ち自サーバ)、次がセカンダリ(例としてルータを指します))
  ③名前解決を(hosts→bind)の順番に解決する様に「/etc/nsswitch.conf」の以下部分を確認(変更)します
    hosts:   files dns
  ④bind設定ファイル「/etc/named.conf」を最下位に追加します
    //「abc.jp」ドメインの正引き
    zone "abc.jp" {
        type master;
        file "abc.jp.db";
        allow-update { 192.168.1.2; };
    };
    //「motio.com」ドメインの正引き
    zone "motio.com" {
        type master;
        file "motio.com.db";
        allow-update { 192.168.1.2; };
    };
    //逆引き
    zone "1.168.192.in-addr.arpa" {
        type master;
        file "1.168.192.in-addr.arpa.db";
        allow-update { 192.168.1.2; };
    };
    (※:上記の「allow-update」は、DHCPにより割り振られたIPをbind情報に更新できる様にする為)
  ⑤「abc.jp」ドメインの正引きファイルを作成します(注:chrootを使用していない場合)
   (前回説明した部分「http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=313」と若干異なります)
    『/var/named/abc.jp.db』
    $TTL 86400
    @  IN  SOA  abc.jp.  root.abc.jp.  (
            2005121801  ;Serial
            7200     ;Refresh
            3600     ;Retry
            604800    ;Expire
            86400    ;Minimum TTL
    )
       NS  abc.jp.
       A   192.168.1.2
       MX  10    abc.jp.
    ns   CNAME abc.jp.
    www  CNAME abc.jp.
  ⑥「motio.com」ドメインの正引きファイルを作成します(注:chrootを使用していない場合)
    『/var/named/motio.com.db』
    $TTL 86400
    @  IN  SOA  ns.motio.com.  root.motio.com.  (
            2005121801  ;Serial
            7200     ;Refresh
            3600     ;Retry
            604800    ;Expire
            86400    ;Minimum TTL
    )
       NS  ns.motio.com.
    ns   A   192.168.1.2
       MX  10    ns.motio.com.
    www  CNAME ns.motio.com.

    (※:⑤と⑥の違いは、⑤はドメイン名に対し「ns」と「www」をCANAMEし、
       ⑥はFQDNに対し「www」をCNAMEしています。(参考程度に・・・)
       書き方は、どちらかに統一した方が、分かりやすいかも・・・)
  ⑦正引きファイルを作成します(注:chrootを使用していない場合)
    『/var/named/1.168.192.in-addr.arpa.db』
    $TTL 86400
    @  IN  SOA  abc.jp.  root.abc.jp.  (
            2005121801  ;Serial
            7200     ;Refresh
            3600     ;Retry
            604800    ;Expire
            86400    ;Minimum TTL
    )
       NS  abc.jp.
       MX  10    abc.jp.
    2   PTR  abc.jp.
  ⑧bindを再起動します。
    # /etc/rc.d/init.d/named restart

作成したゾーンファイルに対してDHCPにて登録された「ホスト名」「IPアドレス」をbindが更新できる様に、
パーミッションと所有者・グループを変更します

ゾーンファイルのパーミッションを変更
# chmod 644 1.168.192.in-addr.arpa.db
# chmod 644 motio.com.db
# chmod 644 abc.jp.db

ゾーンファイルの所有者・グループを変更
# chown named:named 1.168.192.in-addr.arpa.db
# chown named:named motio.com.db
# chown named:named abc.jp.db


パスも確認します。(下記URL参照)
  http://kajuhome.com/cooperation_dhcp_bind.shtml#n04


●●チェックポイント●●(最終コメント参照)
メンテ
 Re: バーチャルホストの設定に関する質問 ( No.2 )
日時: 2005/12/18 10:51
名前: 管理者

【DHCPの構築】
  ①dhcp設定ファイル「/etc/dhcpd.conf」を作成します
    # vi /etc/dhcpd.conf
    ddns-update-style interim;
    ignore client-updates;

    subnet 192.168.1.0 netmask 255.255.255.0 {

    # --- default gateway
      option routers     192.168.1.1;
      option subnet-mask   255.255.255.0;

      option domain-name   "abc.jp";
      option domain-name-servers 192.168.1.2;

      range dynamic-bootp 192.168.1.3 192.168.1.10;
      default-lease-time 21600;
      max-lease-time 43200;
      log-facility local7;

    }

    zone abc.jp {
      primary 192.168.1.2;
    }
    zone 1.168.192.in-addr.arpa {
      primary 192.168.1.2;
    }
    上記の例は、ドメイン名を「abc.jp」にして、割り振るIPアドレスは「192.168.1.3〜192.168.1.10」の8個です。
    最後の6行は割り振ったIPアドレスをbind情報に更新できる様にする為
  ②dhcpを再起動
    # /etc/rc.d/init.d/dhcpd restart


●●チェックポイント●●(最終コメント参照)


【バーチャル設定】
  apacheのバーチャル設定を行います。
  前述した様に、メインは「abc.jp」でバーチャルは「motio.com」にします。
  ①apache設定「/etc/httpd/conf/httpd.conf」にですが、専用の設定ファイルを作る事とします。
   (※:今までの「/etc/httpd/conf/httpd.conf」に記述したバーチャル部分はコメントアウトしてください)
    # vi /etc/httpd/conf.d/virtualhost.conf
    NameVirtualHost *:80
    <VirtualHost *:80>
      ServerName www.abc.jp
    </VirtualHost>
    <VirtualHost *:80>
      ServerName www.motio.com
      DocumentRoot /var/www/html/motio
      ErrorLog logs/motio_error_log
      transferLog logs/motio_access_log
    </VirtualHost>
   注意:apache設定「/etc/httpd/conf/httpd.conf」内の「ServerName」は「www.abc.jp」である事。
      また「DocumentRoot」も「"/var/www/html"」である事。
      新しい、「/etc/httpd/conf.d/virtualhost.conf」には、メインのページ設定も、
      バーチャル指定しなければいけないことがポイントです。
  ②apacheを再起動
    # /etc/rc.d/init.d/httpd restart


●●チェックポイント●●(最終コメント参照)


これでうまく行くと思いますが、動作しない場合は逐次レス下さい。
当方の説明誤りもある可能性がありますので・・・・




【チェックポイント】
チェックポイント毎に、そのサーバ機能が動作しているか順次確認してください。
一気に行うと、どの部分で不具合が発生しているか見極めが大変になります。
 【ネットワーク構成】
    間違いがないか、「ifconfig」コマンドで確認
    ルータは、そのルータのステータス等で確認(グローバルIPも・・)
 【内部での名前解決】
    「nslookup」コマンドで、正引き、逆引きが正しいか確認
      内部ネットワークで確認した場合は正引きで「192.168.1.*」が返ってきます
      逆引きは、当然ドメイン名(ホスト名)が返ってきます
 【DHCPの構築】
    クライアントをDHCPクライアントに設定し、電源を入れます。
    (この時、IPアドレス・DNSサーバは自動的に取得するに指定してください)
    DOS窓より「ipconfig /all」を実行します。
    サーバで割り振るレンジが「192.168.1.3〜192.168.1.10」なので、この範囲内のIPであればOK
 注意:チェックポイントの【内部での名前解決】と【DHCPの構築】はペアとなっているので
     自分自身を検証する分には良いのですが、相手(Windows→LinuxやLinux→Windows)を調べる
     にはこの両方が正しくないと検証できません。
 【バーチャル設定】
    メインのページが表示できるか確認
    バーチャルページが表示できるか確認
メンテ
 Re: バーチャルホストの設定に関する質問 ( No.3 )
日時: 2005/12/18 17:36
名前: ももんが

お世話になっています。私も上記内容を自分の環境に置き換え設定していますが、
以下の通りトラブルが発生しています。気づいた所など有りましたら回答して頂けると
有り難いです。

【トラブル1】
DHCPの設定ファイルを作成し、/etc/rc.d/init.d/dhcpd restart
を行なうと以下の樣なメッセージが出てDHCPが起動出来ません。

※ OSはCentOS4.2です。
※ もちおさんと違い、DNSとDHCPは動かしたことが有りません。
※ ルーターの設定は今回いじっていません。(別途、ルーターのDHCPを無効にするなど必要なのか?)


[root@ns ~]# /etc/rc.d/init.d/dhcpd restart
Internet Systems Consortium DHCP Server V3.0.1
Copyright 2004 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
/etc/dhcpd.conf line 22: expecting a parameter or declaration
    max-lease-time 43200;
               ^
/etc/dhcpd.conf line 23: expecting a parameter or declaration

^
/etc/dhcpd.conf line 25: expecting a parameter or declaration

^
/etc/dhcpd.conf line 29: expecting a parameter or declaration
\uffff\uffff\uffff\uffff}
      ^
Configuration file errors encountered -- exiting

If you did not get this software from ftp.isc.org, please
get the latest from ftp.isc.org and install that before
requesting help.

If you did get this software from ftp.isc.org and have not
yet read the README, please read it before requesting help.
If you intend to request help from the dhcp-server@isc.org
mailing list, please read the section on the README about
submitting bug reports and requests for help.

Please do not under any circumstances send requests for
help directly to the authors of this software - please
send them to the appropriate mailing list as described in
the README file.

exiting.
[root@ns ~]#

■dhcpd.conf は以下の通りに記載しました。

ddns-update-style interim;
ignore client-updates;

subnet 192.168.0.0 netmask 255.255.255.0 {

# --- default gateway
 option routers    192.168.0.1;
 option subnet-mask 255.255.255.0;
 
 option domain-name "abc.jp";
 option domain-name-servers 192.168.0.21;

# option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;

 range dynamic-bootp 192.168.0.2 192.168.0.20;
 default-lease-time 21600;
 max-lease-time 43200;
        log-facility local7;

    }

    zone abc.jp {
      primary 192.168.0.21;
    }
    zone 0.168.192.in-addr.arpa {
      primary 192.168.0.21;
    }
    

 # we want the nameserver to appear at a fixed address
 host ns {
 next-server marvin.redhat.com;
 hardware ethernet 12:34:56:78:AB:CD;
 fixed-address 207.175.42.254;
 }
}



【トラブル2】

hostsファイル中のabc.jpとサーバーのIPの対応を消したら
ログイン画面で以下の樣なエラーメッセージが出るようになった。
これはDHCPが動きだせば、消えるのでしょうか?(GUI環境)


ns.abc.jp の URL が見つかりませんでした。
そのため、GNOME が正しく動作しなくなるおそれがあります。
/etc/hosts ファイルに ns.abc.jp を追加することで
この問題を解決できる場合があります。
メンテ
 Re: バーチャルホストの設定に関する質問 ( No.4 )
日時: 2005/12/18 19:27
名前: 管理者

ももんがさん。

こんばんわ。
この掲示板をコピペしていませんか?
このままだと、全角空白が入っているので正常に動作しません。
全角を半角にするか削除してご使用ください。

【トラブル2】は正常に名前解決されれば出なくなります。
メンテ
 Re: バーチャルホストの設定に関する質問 ( No.5 )
日時: 2005/12/18 22:46
名前: ももんが

>もちお 様

申し訳ありません。便乗して質問させてもらっています。
長いこと、バーチャルホストとbindの関係がわからず、また、どうやって質問して
良いのかもわからずにいたのですが、もちおさんがうまく質問してくれたことに
感謝しています。


>管理人 様

回答有難うございました。

>この掲示板をコピペしていませんか?
>このままだと、全角空白が入っているので正常に動作しません。
>全角を半角にするか削除してご使用ください。


コピペしていました。御指摘の通りに修正したところ、起動しました。

>【トラブル2】は正常に名前解決されれば出なくなります。

現在、dhcpが再起動し、apacheの【バーチャル設定】を行う前の、段階まできています。
名前解決が出来ておらず、相変わらずエラーメッセージが出ています。

再度、質問ですが、管理人さんの説明の中で

   >【DHCPの構築】
   >クライアントをDHCPクライアントに設定し、電源を入れます。

   と、ありますが、これはなにをすれば良いのでしょうか?

   >(この時、IPアドレス・DNSサーバは自動的に取得するに指定してください)

   これは、理解でき、実施しました。

以下、【チェックポイント】の結果です。お気づきの点があれば、回答をお願いします。
度重なる質問申し訳ありません。

■サーバーにてnslookupを実行

(私の場合192.168.0.21がサーバー、192.168.0.1がルーターになっています)

[root@ns ~]# nslookup
> abc.jp
Server:     192.168.0.21
Address:    192.168.0.21#53

** server can't find abc.jp: SERVFAIL
> 192.168.0.21
Server:     192.168.0.21
Address:    192.168.0.21#53

** server can't find 21.0.168.192.in-addr.arpa: SERVFAIL
> www.abc.jp
Server:     192.168.0.21
Address:    192.168.0.21#53

** server can't find www.abc.jp: SERVFAIL

■クライアントにてnslookupを実行

http://members.jcom.home.ne.jp/0385106401/nslookup.html

なんか、全く名前解決されておりません。。。

■ifconfigの結果 --- 特に問題ないみたいな感じですが。。。。

[root@ns ~]# ifconfig
eth0   Link encap:Ethernet HWaddr 00:90:99:10:99:89
     inet addr:192.168.0.21 Bcast:192.168.0.255 Mask:255.255.255.0
     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
     RX packets:660 errors:0 dropped:0 overruns:0 frame:0
     TX packets:490 errors:0 dropped:0 overruns:0 carrier:0
     collisions:1 txqueuelen:1000
     RX bytes:78112 (76.2 KiB) TX bytes:51680 (50.4 KiB)
     Interrupt:11 Base address:0xec00

lo    Link encap:Local Loopback
     inet addr:127.0.0.1 Mask:255.0.0.0
     UP LOOPBACK RUNNING MTU:16436 Metric:1
     RX packets:2394 errors:0 dropped:0 overruns:0 frame:0
     TX packets:2394 errors:0 dropped:0 overruns:0 carrier:0
     collisions:0 txqueuelen:0
     RX bytes:3368514 (3.2 MiB) TX bytes:3368514 (3.2 MiB)

■クライアントからの ipconfig /allの結果

http://members.jcom.home.ne.jp/0385106401/ipconfig.html

・Connection-specific DNS SuffixがプロバイダのDNSになっている。
・DHCP Server、DNS ServerがルーターのIP(192.168.0.1)になっている。
・Default GatewaygaルーターのIP(192.168.0.1)になっている。
・IP Addressが192.168.0.3となっており、サーバーのDHCPで設定した範囲内であるが、ルーターのDHCP
 でも同じような範囲で指定しており良いのか悪いのか判断出来ない。
メンテ

Page:  [1] [2] [3] [4] [5] [6] [7] [8] [9]

■ その他

ページ先頭へ

Copyright(©)2004-2018 First home server construction. All Right Reserved.