shell> dig +trace 호스트네임
이렇게 실제로 어느 네임서버들을 거쳐서 리졸빙되는지
확인해 보세요.
즉 해당 네임서버에서 제대로 값을 리턴해주는지에
대해서.
[김성민]님이 남기신 글:
>답변 감사합니다.
>알려주신대로 어제 확인해 보니
>
>shell> dig linuxchannel.net
>linuxchannel.net. 615 IN A 222.231.2.163
>
>615 이런식으로 남은시간이 있었습니다.
>근데, 615 면 10분정도 인데, 10분후에 다시 보면
>43xxx(기존에 TTL 값이 43200) 대로 다시 늘어나 있습니다.
>캐싱서버로 작동할때 그런다고 하는데...
>TTL 이 만료되었음에도
불구하고 다시 살아나는 것을 막거나,
>캐싱을 다 지우는 방법이 있는지요?
>
>
>[산이]님이 남기신 글:
>
>>
>>[김성민]님이 남기신 글:
>>
>>>안녕하세요.
>>>
>>>bind 9.0, Apache 1.3.20 입니다.
>>>
>>>### 사례1 ###
>>>
>>>서버에 linuxchannel.net, sub.linuxchannel.net 과 같이 2개의
도메인을
>>>(A)서버에 셋팅하여 사용하다가 linuxchannel.net 자체를 (B)서버로
이전하였습니다.
>>>linuxchannel.net 도메인 등록정보에서도
네임서버 정보를 B서버로 변경하고, A서버에서는 linuxchannel.net
에 대한 가상호스트 및 계정, 네임서버설정등
관련정보를 모두 삭제 하였습니다.
>>>
>>>sub.linuxchannel.net 은 새로운 서버인 B서버로 연결이
됩니다.
>>>근데, linuxchannel.net 은 아직 A서버로 연결이 됩니다.
>>>
>>>A서버에서는 해당 도메인에 대한 관련 레코드를 모두
삭제하였고, Apache 에서도 해당 설정이 없는상태인데도
불구하고 A서버로 연결이 됩니다.
>>>A서버로 연결이 된다는 의미는 A서버의 Apache Default Page 로
연결이 된된다는 말입니다.
>>>
>>>만일, A서버에서 linuxchannel.net 에 대한 dns 설정은 놔두고 Apache
설정만 제거하였다면 위와 같이 Apache Default Page 로 접속되는
것이 가능하지만, A서버 자체에서 dns, Apache 설정등 관련 정보를
모두 제거하였는데도
불구하고 A서버로 연결이 되는 이유를 모르겠습니다.
>>>
>>>그리고, 또 linuxchannel.net, sub.linuxchannel.net 의 네임서버
등록정보를 B서버로 바꾸었는데도 불구하고 linuxchannel.net 은
A서버로,
>>>sub.linuschannel.net 은 B서버로 연결이 됩니다.
>>>
>>>실제로 ping 을 해보면 linuxchannel.net 은 A서버 ip가,
>>>sub.linuxchannel.net 은 B서버의 ip가 잡힙니다.
>>>
>>>nslookup 을 해보면 (PC에서 하던, 서버에서 하던
마찬가지)
>>>linuxchannel.net 의 DNS 정보가 B서버로 나오지만,
>>>ping을 해보면 linuxchannel.net은 A서버의 ip로,
>>>sub.linuxchannel.net 은 B서버의 ip로,
>>>웹브라우저 접속을 해보면 linuxchannel.net 은 A서버로,
>>>sub.linuxchannel.net 은 B서버로 접속이 됩니다.
>>>
>>>
>>>### 사례2 ###
>>>
>>>위와 같은 증상이 있는 도메인이 또 있습니다.
>>>abc.com 이라는 도메인인데 그건 서버의 이전이 아니라 기존
사용하던 서버에서 네임서버 및 가상호스트 삭제, 계정삭제등
그냥 삭제를 한 상태인데,
>>>브라우저에서
접속하면 Apache Default Page 로 접속이 됩니다.
>>>마찬가지로, 네임서버 설정이 유효하고 가상호스트만
없앴다고 하면 Apache Default Page로 접속이 되는게
맞긴한데,
>>>네임서버 설정까지 없앴는데도 불구하고 A서버가 응답하는
이유를 모르겠습니다.
>>>
>>>
>>>1. Apache config 파일에서 해당 가상호스트 제거. (재시작
했음)
>>>2. /etc/named.conf 에서 해당 도메인 제거 (재시작 했음)
>>>
>>>***.zone 파일에서의 TTL 타임은 43200 입니다.
>>>
>>>위와 같이 변경하거나 삭제한 지 대충 4일정도
됩니다.
>>>
>>>제가 알기론 예를들면 A서버에서 사용하던 도메인에 대한
네임서버 정보에서 linuxchannel.net 에 대한 설정을 빼면 ping 을
해도 ip가 잡히지 않아야 하는 것으로 아는데 ping도 되고
A서버로의 접속이 가능하다는 것이 이해가 안갑니다.
>>>
>>>사례1, 사례2 와 같은 증상이 어떻게 일어날 수 있는지 문의
드립니다.
>>>/etc/rc.d/init.d/named restart (reload)
>>>/usr/local/apache/bin/apachectl restart
>>>여러번 해봐도 마찬가지 입니다.
>>>
>>>뭔가 이유가 있을터인데....
>>
>>========================================
>>
>>일단 위의 사례 1,2 는 모두 같은 문제인것 같습니다.
>>
>>웹브라우저(에이전트)가
어떻게 웹서버가 접속하는지 그 과정을
>>그려보면 어디에 문제가 있는지 알 수 있습니다.
>>
>>체크항목
>>
>>1. 테스트하고 있는 클라이언트의 hosts 들
>>
>>예를들어 /etc/hosts 파일과 /etc/host.conf 입니다.
>>
>>위에서 ping 은 아마도 /etc/hosts 파일을 참고하고 nslookup
은
>>DNS 을 참조하는듯 하네요.
>>
>>윈도우도 C:\WINDOWS\system32\drivers\etc\hosts 파일이
있습니다.
>>
>>
>>2. 1의 경우가 아니면 Local DNS 의 TTL 값이 아직 남아
있어서
>>이런 현상이 있습니다.
>>
>>local DNS 설정은 /etc/resolv.conf 에 있고 TTL은 예를 들어
>>
>>shell> dig www.linuxchannel.net
>>linuxchannel.net. 850 IN A 222.231.2.163
>>
>>850초가 남아 있군요.
>>
>>Local DNS 의 기존 TTL 값이 길면, 이 값이 모두 expire
될때까지
>>예전 정보를 리턴해 주기 때문에 이때까지 기달려야
합니다.
>>
>>그렇게 때문에 기존 TTL 값이 길게 설정되어 있고, 하루
이틀후에 DNS 설정을 바꾸고자 한다면 미리 이 TTL 값을 짧게
설정해 주는 것이 좋을 수
>>있습니다.
>>
>>
>>3. 1차, 2차 네임서버의 동기화 부분
>>
>>이 부분은 따로 설명하지 않아도 되죠?
>>
>>shell> dig @1차네임서버 호스트네임
>>shell> dig @2차네임서버 호스트네임
>>
>>이렇게 해서 나온 결과 serial 이나 리턴값을 비교해 보면
됩니다.
>>
>>
>>4. 그외의 경우는
>>
>>shell> dig +trace 호스트네임
>>
>>으로 한번 리졸빙 과정을 체크해 보세요.
>
>========================================
========================================
|