하나의 IP로 웹가상 호스팅
다름이 얼마전까지 여러개의 아이피를 가지고 하나의 서버에서
웹호스팅을 하다가 지금은 하나의 아이피로 여러 도메인의
웹호스팅을 하려고 합니다.
이곳에서 관련 글을 찾아보았지만 원하는 내용을 찾지 못하여
이렇게 글을 올립니다.
외부 ip : 61.82.131.100
도메인 : a.co.kr
b.co.kr
c.co.kr (공히 isp 업체에 의해 61.82.131.100이 DNS 로
등록 되었음)
named.conf 파일
--------------------------------------------------------------------------
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
zone "131.82.61.in-addr.arpa" IN {
type master;
file "a.zone";
allow-update { none; };
};
zone "a.co.kr" {
type master;
file "a.zone";
notify no;
allow-update { key "mykey"; };
};
zone "b.co.kr" {
type master;
file "b.zone";
notify no;
allow-update { key "mykey"; };
};
zone "c.co.kr" {
type master;
file "c.zone";
notify no;
allow-update { key "mykey"; };
};
-----------------------------------------------------
a.zone 파일입니다.
----------------------------------------------------
$TTL 86400
@ IN SOA ns.a.co.kr. root.a.co.kr. (
2000032701; Serial
300; Refresh
60; Retry
1209600; Expire
86400); Minimum
IN NS ns.a.co.kr.
IN A 61.82.131.100
IN MX 10 a.co.kr.
IN MX 20 mail.a.co.kr.
IN MX 30 pop.a.co.kr.
IN MX 40 61.82.131.100.
a.co.kr. A 61.82.131.100
localhost A 127.0.0.1
ns A 61.82.131.100
www A 192.168.1.203 ;<= 웹호스팅을 위하여 사설 아이피 부여
mail A 61.82.131.100
pop A 61.82.131.100
100 PTR a.co.kr.
100 PTR ns.a.co.kr.
203 PTR www.a.co.kr.
100 PTR mail.a.co.kr.
100 PTR pop.a.co.kr.
-------------------------------------------------------------
b.zone 파일입니다.
-------------------------------------------------------------
$TTL 86400
@ IN SOA ns.b.co.kr. b.b.co.kr. (
2003022700 ; Serial
300 ; Refresh
60 ; Retry
1209600 ; Expire
86400 ) ; Minimum
IN NS ns.b.co.kr.
IN A 61.82.131.100
IN MX 10 b.co.kr.
IN MX 20 mail.b.co.kr.
IN MX 30 pop.b.co.kr.
b.co.kr. A 61.82.131.100
localhost A 127.0.0.1
www A 192.168.1.102 ;<= 웹호스팅을 위해 사설ip 부여
mail A 61.82.131.100
pop A 61.82.131.100
100 PTR b.o.kr.
102 PTR www.b.co.kr.
100 PTR mail.b.co.kr.
100 PTR pop.b.co.kr.
-----------------------------------------------------------
c.zone 파일은 b.zone 파일과 동일한 구조를 갖고 있습니다.
* nslookup을 이용해서 보면 모두 정상적을 DNS가 구동되고 있습니다.
(참고로, www를 위해 사설ip 부여부분을 고정ip 61.82.131.100으로
변경해서 해서도 테스트를 해보았습니다.)
아래는 httpd.conf 파일의 주요부분입니다.
------------------------------------------------------
NameVirtualHost 192.168.1.203
NameVirtualHost 61.82.131.199
NameVirtualHost 192.168.1.101
NameVirtualHost 192.168.1.103
<VirtualHost 192.168.1.102>
ServerAdmin b@b.co.kr
DocumentRoot /etc/httpd/htdocs/webhosting/b
ServerName www.b.co.kr
ErrorLog logs/b-error_log
</VirtualHost>
<VirtualHost 192.168.1.203>
ServerAdmin a@a.co.kr
DocumentRoot /etc/httpd/htdocs/webhosting/a
ServerName www.a.co.kr
ErrorLog logs/a-error_log
</VirtualHost>
<VirtualHost 192.168.1.103>
ServerAdmin c@c.co.kr
DocumentRoot /etc/httpd/htdocs/webhosting/c
ServerName www.c.co.kr
ErrorLog logs/c-error_log
</VirtualHost>
-------------------------------------------------------------------
문제는 nslookup으로는 정상적으로 모두 동작을 하는데 제가
httpd.conf 파일을 잘못 셋팅해서 안되는지 www.a.co.kr, www.b.co.kr,
www.c.co.kr 모두 www.a.co.kr만을 가르킵니다.
물론 ping으로 사설ip를 테스트하면 모두 정상적으로 작동하구요.
왜 그런지요?
아시는분 답변주시면 정말 감사하겠습니다.
노인철
사설IP를 어떤 목적으로 쓰시는건지 잘 모르겠네요...하나의 아이
사설IP를 어떤 목적으로 쓰시는건지 잘 모르겠네요...
하나의 아이피(61.82.131.100)으로
여러도메인네임( www.a.co.kr, www.b.co.kr, www.c.co.kr)을
서비스하시려면..
DNS 설정에서는 세 도메인이 모두 동일한 공인IP인 61.82.131.100 을
가리키게 하시고..
아파치 설정에서는
NameVirtualHost 61.82.131.100 으로 하시고
세 도메인에 대해 각각 모두 <VirtualHost 61.82.131.100>으로
설정을 해주셔야할것 같네요.
감사 - 그렇지만 안되네요....
우선 답변 감사합니다.
그런데 안되네요.... :<
[quote]100 PTR a.co.kr. 100 PTR ns.a.c
PTR 레코드는 forward zone 에서 사용할 수 없고, reverse zone 에서 사용가능합니다. 위의 부분을 삭제하시죠. 그리고 내부 아이피로 설정한 www 를 삭제하고요.
vitualhost 설정을 바꾸어주어야 합니다.
위에서 한 분이 말씀하신 것처럼 굳이 사설 아이피를 설정할 필요없이
네임서버에서 각 가상서버들을 공인아이피로 맞추어주고,
아피치 설정을
namevitualhost 공인아이피
<vitualhost www.a.co.kr>
.....
<virtualhost www.b.co.kr>
.....
이런 식으로 해주시면 됩니다. 앞에서 이야기하신 분 설정 중 잘못된 부분은 <virtualhost 공인아이피> 부분인데, 이렇게 하면 아파치 설정에서 가상서버의 루트 도큐멘트보다 기본 도큐멘트 루트로 잡혀있는 문서를 먼저 읽어버리게 되어, 가상 서버를 설치한 의미가 없어지게 됩니다.
---- m( @.@)m -----------
제가 보기에는 강좌를 한번 읽어보시는것이 빠를것 같습니다.일단 사
제가 보기에는 강좌를 한번 읽어보시는것이 빠를것 같습니다.
일단 사설 ip가 DNS설정에 사용된것은 잘못으로 보입니다.
혹시 ip하나당 하나의 홈페이지를 사용할수 있다고 생각 하시는 것인 아니신지..
---
한번 박은 진드기의 머리는 돌아나올 줄 모른다. 죽어도 안으로 파고 들다가
죽는다. 나는 그 광경을 몰두라고 부르려 한다.
-- 성석제, <재미나는 인생> 중에서, 1997년
+++ 여기부터는 서명입니다. +++
국가 기구의 존속을 위한 최소한의 세금만을 내고, 전체 인민들이 균등한 삶을
영위할 수 있는 착취가 없는 혁명의 그날은 언제나 올 것인가!
-- 조정래, <태백산맥> 중에서, 1986년
NameVirtualHost 디렉티브는그 인수로 받은 IP로 리퀘스트
NameVirtualHost 디렉티브는
그 인수로 받은 IP로 리퀘스트가 왔을때 어떤 페이지로 맵핑을 해 준다는
말입니다
그러므로 라우터에서 도메인 네임에 따라
보내는 IP가 틀려야겠죠
그리고 님과 같은 셋팅에서는 한개의 NIC에 여러개의 IP가 할당이 되어있어야 할겁니다
원 서버에서 돌리실 생각이시라면 가상 IP도 하나로 맞추시는게 좋을겁니다 실제로 저도 그렇게 사용하고 있습니다
난 세상의 떨거집니다
더 알 필요가 있겠습니까? 나에 대해서??
[quote="문재식"][quote]100 PTR a.co.kr. 1
덧붙이면 하나의 ip에는 하나의 PTR 레코드만 올 수 있습니다.
DNS 문서를 한번 보시는게 좋겠습니다.
http://www.kr.freebsd.org/doc/PoweredByDNS/
복날은 간다.
감사-문제 해결했습니다.
여러므로 답변주신 모든분들께 감사드립니다.
제가 DNS 셋팅을 잘못하여 발생한 문제입니다.
말씀하신대로 DNS에 사설 IP를 제거사고
공인아이피로 셋팅함으로써 모든 문제를
해결하였습니다.
다시한번 감사드립니다.
댓글 달기