내 웹사이트와 친구의 웹사이트를 내 컴퓨터(예: 미니 호스팅 플랫폼)에서 호스팅하고 싶습니다. 이를 위해 Debian, Bind9 및 Apache를 배웠습니다.
내 시스템에서는 모든 것이 잘 작동합니다. 내 IP라도 내 네트워크 외부에서 내 웹사이트를 열 수 있습니다. 하지만 내 도메인 이름(예: abx.com
)에는 내 웹사이트가 표시되지 않습니다.
abx.com
내 웹사이트를 가리키 도록 어떻게 설정하나요 ?
답변1
사람들이 이런 질문을 하면 나는 항상 이렇게 말한다.
다른 사람이 귀하의 DNS를 호스팅하게 하세요
진지하게. 전문가가 가지고 있는 네트워크 안정성은 없으며, DNS 안정성은 행복한 삶의 열쇠입니다. 다른 사람이 당신보다 더 잘한다는 것을 인정하는 것은 약점이 아닙니다. 그들은 당신이 가지고 있지 않은 것을 가지고 있습니다: 엄청난 중복성.
대부분의 등록 기관은 여러 위치의 여러 서버에 분산된 무료 로드 밸런싱 및 중복 이름 서버 서비스를 제공합니다. 웹 호스트도 마찬가지이며 꽤 좋은 무료 호스트도 있습니다.
답변2
도메인의 DNS(A 레코드)는 호스팅 IP를 가리켜야 합니다. 이는 로컬 환경에서는 작동하는 것처럼 보일 수 있지만 외부 환경에서는 작동하지 않을 수 있습니다. 이는 계층적인 DNS의 특성 때문입니다. abx.com을 예로 들어 도메인 확인자(abx.com을 네트워크 IP nn.nn.nn.nn으로 변환하는 시스템)를 요청하면 다음과 같은 일이 발생합니다.
확인자는 설정을 확인하여 DNS를 찾을 위치를 결정합니다. Windows에서 이 설정은 일반적으로 DHCP에서 검색되는 네트워크 속성에 있습니다. UNIX 시스템에서는 항목 설정이 포함 된 nsswitch.conf
경우 find 문에서 및 의 조합에서 가져 옵니다 . 이것이 정확하고 네임서버 항목이 포함되어 있으면 파일에 나열된 순서대로 네임서버와 통신합니다.dns
hosts
/etc/resolv.conf
nameserver
nsswitch.conf
resolv.conf
캐싱이 구성된 경우 이름 서버는 요청된 로컬 항목이 이미 저장되어 있는지 확인하고, 그렇다면 해당 결과를 반환합니다. 항목이 없으면 DNS 계층 구조를 검색하는 작업을 수행합니다.
이 예에서 도메인은 실제로 abx.com.
, 및 의 세 부분으로 구성됩니다. 이를 루트 노드라고 하며 대부분의 DNS는 이를 표시하지 않지만 DNS 작동 방식의 기본입니다. (또는 on(후행 점 참고)을 시도하면 인터넷 브라우저 주소 표시줄의 주소 끝에 점을 두는 것과 동일하게 해결됩니다. 루트 노드는 실제로 이름 서버의 분산 네트워크입니다. 많은 국가, 많은 조직과 회사가 호스팅합니다..
com
abx
.
host
nslookup
www.google.co.uk.
www.google.co.uk
확인자로 돌아가면 hints
루트 이름 서버의 위치를 알게 됩니다. 그런 다음 루트 이름 서버 중 하나에 어떤 이름 서버가 com
DNS 쿼리 부분을 담당하는지 묻습니다 . host -t ns com
또는 를 사용하여 이 단계를 시뮬레이션 할 수 있습니다 nslookup -q=ns com
. 그런 다음 이름 서버는 포럼을 사용하여 거기에 나열된 이름 서버 중 하나를 선택하고 이를 사용하여 도메인을 요청합니다 abx.com
.
com
이 시점에서 우리는 이름 서버가 다른 이름 서버에 책임을 위임하는 위임 이라는 메커니즘에 도달하며 abx.com
이는 NS
레코드를 통해 수행됩니다. 하지만 이 레코드에는 도메인이 포함되어 있습니다.이름IP 주소가 아닙니다. 이러한 도메인 이름이 서로 연결되는 방식은 glue
레코드를 통해 이루어지므로 abx.com을 예로 들면 다음과 같습니다.
abx IN NS ns1.abx.com
IN NS ns2.abx.com
ns1.abx.com IN A 10.10.10.10
ns2.abx.com IN A 10.11.11.11
확인자는 NS
이름 서버 레코드 요청 시 추가 정보로 이러한 A 레코드를 가져옵니다. 그런 다음 확인자는 ns1.abx.com 또는 ns2.abx.com에서 레코드를 요청하고, IP는 DNS 레코드를 요청한 브라우저/프로세스에 전달됩니다.abx.com
com
A
abx.com
대부분의 개인 사용자 설정은 일반적으로 인증의 마지막 단계에서 중단됩니다. 등록 기관/서비스 제공자로부터 도메인을 구입하는 과정을 거쳤지만 자신의 이름 서버에 대한 위임을 가리키도록 도메인을 구성하지 못했습니다. 인증 단계가 작동하도록 글루 레코드를 제자리에 배치하기 전에 등록 기관에 이름 서버가 어디에 있는지 실제로 알려야 합니다.
이 단계가 완료되었으며 파서가 사용하는 마지막 부분이 recursion
준비되었습니다. 이는 모두 귀하의 abx.com 영역이 올바르게 구성되어 있고 전체 인터넷에 서비스를 제공하며 귀하 또는 귀하의 호스팅 공급자가 설정한 방화벽이 없다고 가정합니다.
인터넷에는 도메인의 상태를 확인할 수 있는 수많은 DNS 도구 웹사이트가 있습니다. (예를 들어DNS Stuff의 DNS 도구). 또한 dig
특정 이름 서버(및 레코드)를 구체적으로 쿼리하고 출력에서 더 자세한 응답을 얻을 수 있는 이 도구에 익숙해지는 것이 좋습니다 .
총 길이 DR호스팅 제공업체를 통해 구성을 확인하고 도메인 NS 레코드가 네임서버 IP를 가리키는지 확인하세요. 연결을 차단하는 방화벽이 없는지, BIND가 실행 중이고 올바른 DNS를 제공하고 있는지 확인하세요. 외부 도구를 사용하여 외부 DNS를 확인하여 DNS 상태를 확인하세요.
답변3
전 세계에서 볼 수 있는 웹사이트의 도메인 이름을 등록하세요. DNS(도메인 이름 서비스)에 등록합니다. 등록 기관은 귀하의 IP 주소를 웹사이트 이름과 연결합니다. 이 서비스는 유료입니다.