이 기사에서 나는 독자들이 웹 세계의 아주 기본적인 개념을 이해하기를 바랍니다. 이전에 Angular Journey, 반응의 기초 등과 같은 오늘날 시장의 멋진 것들에 대한 기사를 썼습니다. 하지만 오늘은 독자들이 URL에 도달할 때 처음 접하는 여정으로 들어가길 바랍니다.
주제는 자명하기 때문에 - URL에 도달하면 어떻게 됩니까? - 시작하겠습니다!
URL을 입력한 후의 결과에 대해 논의하기 전에 , 우리는 URL이 실제로 무엇인지, 그리고 URL의 다른 부분이 의미하는 바를 살펴봐야 합니다. 시간을 낭비하지 않고 URL에 대해 자세히 알아보겠습니다.
URL – 통일 자원 로케이터
전체 형식을 살펴보면 자명합니다. 액세스하려는 리소스의 위치가 있습니다. 장소의 주소입니다. 우리가 정보와 상호 작용하거나 정보를 찾기 위해 가고 싶은 곳.
당신의 일상을 들여다보자. 친구의 집을 방문하거나 정보를 얻으려면 주소가 필요합니다. 이 큰 웹 세계에서도 마찬가지입니다. 액세스하려는 웹 사이트의 주소를 제공해야 합니다. 웹사이트는 집과 같고 URL은 주소입니다.
URL 분석
이제 우리는 URL이 무엇인지 알지만 URL의 일부에 대해서는 여전히 모릅니다. 가자!
예를 들어보겠습니다.
https://www.example.com/page1
여기서 첫 번째 부분은 'https'입니다. . 이것은 기본적으로 브라우저가 사용해야 하는 프로토콜을 알려줍니다. http, https, ftp, 등. 프로토콜 규칙의 집합입니다. 해당 브라우저는 네트워크를 통한 통신에 사용합니다. 'https' 기본적으로 보안 버전입니다. , 즉 정보가 안전한 방식으로 교환됩니다.
두 번째 부분 www.example.com 도메인 이름입니다. . 친구의 집에 연결할 수 있습니다. 홈페이지 주소입니다. 우리는 그것을 사용하여 해당 웹사이트에 대한 정보 제공을 담당하는 서버(훈련된 컴퓨터)에 도달합니다. 기다리다! URL이 주소라고 언급하기 몇 초 전에 도메인 이름도 주소라고 언급했다고 생각할 수도 있습니다. 헷갈리셨을 수도 있습니다. 혼동하지 마세요!
URL과 도메인 이름의 차이점
둘의 주요 차이점은 URL은 완전한 주소라는 것입니다. . URL은 정보를 교환해야 하는 방법, 해당 웹사이트에 도달한 후의 경로를 알려줍니다. 도메인 이름은 URL의 일부입니다 .
더 나은 이해를 위해 이전 예를 살펴보겠습니다. 친구의 집 주소는 도메인 이름이라고 할 수 있지만 URL은 친구의 집 주소(도메인 이름)뿐만 아니라 별도의 방(보안)이나 모든 사람 앞에서 이야기하는 것처럼 통신 방법( 정보가 누출될 수 있음). 또한 경로, 즉 집에 들어간 후 집의 어느 부분으로 갈 것인지 알려줍니다. 따라서 도메인 이름은 URL의 일부입니다. 더 많은 정보가 있는 도메인 이름은 URL입니다.
이제 URL이 명확해지기를 바랍니다. 다음 부분으로 넘어가겠습니다.
도메인 이름
이전 파트에서 도메인 이름에 대해 설명했지만 깊이 있지는 않았습니다. 더 들어가셨으면 합니다. 내가 말했듯이 도메인 이름은 웹사이트의 주소입니다. 고유한 정체성 을 부여합니다. 귀하의 웹사이트에 그런 거대한 웹 세계에서. 두 개의 도메인 이름이 같을 수는 없습니다. 그러나 - 그렇습니다! '하지만'이 있습니다. 이것은 도메인 이름의 유일한 정의가 아닙니다. 그 뒤에는 또 다른 이야기가 있습니다. 그 이야기 속으로 들어가 봅시다.
우리가 알다시피, 우리가 어떤 URL을 누르거나 도메인 이름을 말할 수 있을 때, 그 웹사이트는 그 콘텐츠와 함께 열립니다. 서버(훈련된 컴퓨터)가 이를 제공합니다. 또한 모든 컴퓨터에는 인터넷을 통한 통신에 사용되는 IP 주소가 있습니다. 'IP 주소'를 자체적으로 설명하는 주소입니다. 히트할 때 모든 URL, 그러면 우리는 실제로 히팅합니다. IP 주소 웹사이트 콘텐츠 제공(호스팅)을 담당하는 컴퓨터.
그러나 지금, 당신은 도대체 ... 모든 것이 주소라고 생각할 수 있습니다. IP 주소가 있는 경우 이 도메인 이름이 존재하는 이유는 무엇입니까? IP 주소를 사용하여 웹 사이트의 콘텐츠를 가져올 수 없는 이유는 무엇입니까?
예! IP 주소를 사용할 수 있습니다. 콘텐츠 얻기 웹 사이트의하지만 정말!.. 각 웹 사이트의 연결된 IP 주소를 기억할 수 있습니까? 당연히 아니! 어려워 IP 주소 기억 모든 웹사이트의. 이것이 도메인 이름이 시장에 등장한 이유입니다.
연락처 목록에 연결할 수 있습니다. 모든 사람의 번호를 기억할 수는 없지만 이름은 기억할 수 있습니다. 여기에도 같은 개념이 적용됩니다. 기억이 나지 않습니다. 그 무서운 IP 주소 , 하지만 쉽게 기억할 수 있습니다. 도메인 이름 .
이 엄청난 양의 데이터는 IP 주소와 함께 도메인 이름이 저장된 데이터베이스에 유지됩니다. 도메인 이름을 해당 IP 주소와 함께 저장하는 시스템을 DNS(도메인 이름 시스템)라고 합니다. (나는 당신이 그것에 대해 들었을 것이라고 믿습니다).
나는 내가 충분히 기초적인 논의를 했다고 생각한다. 이제 URL에 도달하는 과정에 대해 자세히 알아보세요.
IP 주소를 찾기 위한 DNS 조회
URL을 입력한 후 가장 먼저 해야 할 일은 도메인 이름과 연결된 IP 주소를 확인하는 것입니다. DNS는 이 문제를 해결하는 데 도움이 됩니다. DNS는 전화번호부와 같습니다. IP 주소를 제공하는 데 도움 전화번호부가 그 사람의 이름과 연결된 휴대폰 번호를 제공하는 것처럼 도메인 이름과 연결되어 있습니다.
이것은 개요이지만 4개의 레이어가 있습니다. 이 도메인 이름 쿼리가 통과합니다. 단계를 이해합시다:
1. URL을 입력한 후 브라우저 캐시 확인됩니다. 브라우저는 이전에 방문한 웹 사이트에 대해 일정 시간 동안 DNS 레코드를 유지합니다. 따라서 먼저 DNS 쿼리가 여기에서 실행되어 도메인 이름과 연결된 IP 주소를 찾습니다.
2. DNS 쿼리가 OS 캐시에서 실행되는 두 번째 장소 뒤에 라우터 캐시 .
3. 위의 단계에서 DNS 쿼리가 해결되지 않으면 리졸버 서버의 도움을 받습니다. 리졸버 서버는 ISP(인터넷 서비스 공급자)일 뿐입니다. 쿼리는 DNS 쿼리가 ISP 캐시에서 실행되는 ISP로 전송됩니다.
4. 3단계에서도 결과가 없으면 상위 또는 루트 서버로 요청을 보냅니다. DNS 계층 구조의 검색 결과가 없다고 표시되는 경우는 없지만 실제로는 이 정보를 어디서 얻을 수 있는지 알려줍니다. 최상위 도메인(.com,.net,.Gov,.org)의 IP 주소를 검색하는 경우. 리졸버 서버에 TLD 서버를 검색하도록 지시합니다. (최상위 도메인).
5. 이제 resolver는 TLD 서버에 도메인 이름의 IP 주소를 제공하도록 요청합니다. TLD는 도메인 이름의 주소 정보를 저장합니다. 확인자에게 권한 있는 이름 서버에 요청하도록 지시합니다.
6. 권한 있는 이름 서버는 도메인 이름에 대한 모든 정보를 알고 있어야 합니다. 마지막으로 리졸버(ISP)는 도메인 이름과 연결된 IP 주소를 가져와 브라우저로 다시 보냅니다.
IP 주소를 얻은 후 리졸버는 이를 캐시에 저장하므로 다음에 동일한 쿼리가 발생하면 이 모든 단계를 다시 수행할 필요가 없습니다. 이제 캐시에서 IP 주소를 제공할 수 있습니다.
이것은 도메인 이름과 연결된 IP 주소를 확인하기 위해 따라야 하는 단계에 관한 것입니다. 더 잘 이해하려면 아래를 살펴보세요.
TCP 연결은 브라우저에 의해 서버와 시작됩니다.
IP 주소 귀하의 웹사이트 정보가 있는 컴퓨터의 발견 , 연결 시작 그것으로. 네트워크를 통해 통신하려면 인터넷 프로토콜 이어집니다. TCP/IP 가장 일반적인 프로토콜입니다. 'TCP 3-way 핸드셰이크'라는 프로세스를 사용하여 둘 사이에 연결이 구축됩니다. . 프로세스를 간략하게 이해해 보겠습니다.
1. 클라이언트 컴퓨터가 SYN 메시지를 보냅니다. 두 번째 컴퓨터가 새 연결을 위해 열려 있는지 여부를 의미합니다.
2. 그런 다음 다른 컴퓨터 , 새 연결을 위해 열려 있으면 확인 메시지를 보냅니다. SYN 메시지와 함께.
3. 이후 첫 번째 컴퓨터 메시지를 수신하고 보내기 확인 ACK 메시지.
더 잘 이해하려면 아래 다이어그램을 보십시오.
통신 시작(요청 응답 프로세스)
마지막으로 클라이언트와 서버 간의 연결이 구축됩니다. 이제 둘은 서로 통신하고 정보를 공유할 수 있습니다. 성공적으로 연결되면 브라우저(클라이언트) 요청을 보냅니다. 서버로 내가 이 콘텐츠를 원한다는 것을. 서버는 모든 요청에 대해 어떤 응답을 보내야 하는지 모든 것을 알고 있습니다. 따라서 서버가 응답합니다. 이 응답에는 웹 페이지, 상태 코드, 캐시 제어 등과 같이 요청한 모든 정보가 포함됩니다. 이제 브라우저는 요청된 콘텐츠를 렌더링합니다.
그게 다야! 위의 모든 프로세스는 URL에 도달할 때 발생합니다. 이 긴 프로세스를 완료하는 데 몇 초도 걸리지 않습니다. 이것은 '브라우저에서 URL에 도달하면 어떻게 됩니까?'에 대한 답변입니다.
읽어주셔서 감사합니다!