URL과 URI는 서버에서 제공되는 환경제 존재하는 파일의 위치를 나타냅니다.
URL
- Uniform Resource Locator
- 웹페이지, 이미지, 동영상 등의 파일이 위치한 정보를 나타냅니다.
- scheme, hosts, url-path로 구분할 수 있다.
- scheme : 통신 방식 (프로토콜 결정)
- host : 웹 서버의 이름이나 도메인, ip를 사용하며 주소를 나타냅니다.
- url-path : 웹 서버에서 지정한 파일들이 위치한 경로와 파일명을 나타냅니다.
URI
- Uniform Resoucrce Identifier
- 일반적으로 url의 기본 요소인 scheme, hosts, url-path에 더해 query, fragment를 포함합니다.
- query : 웹 서버에 보내는 추가적인 질문
- frament : 일종의 북마크 기능을 수행한다.
- URL === URI입니다.(URI가 상위 개념)
URL과 URI 요소
부분 | 명칭 | 설명 |
file://, http://, https:// | scheme | 통신 프로토콜 |
127.0.0.1, www.google.com | hosts | 웹 페이지, 이미지, 동영상 등의 파일이 위치한 웹 서버, 도메인 또는 IP (127.0.0.1은 로컬 PC를 의미한다.) |
:80, :443, :3000 | port | 웹 서버에 접속하기 위한 통로 |
/search, /Users/username/Desktop | url-path | 웹 서버의 루트 디렉토리로부터 웹 페이지, 이미지, 동영상 등의 파일이 위치까지의 경로 |
q=JavaScript | query | 웹 서버에 전달하는 추가 질문 |
PORT
- 중복 사용이 불가합니다. 만약 다른 곳에서 포트를 3000번 포트를 사용 중이라면 3001로 리액트가 실행됩니다.
- URL이 서버의 위치를 나타낸다면 PORT는 서버의 통로를 나타낸다.
로컬 PC의 IP 주소인 127.0.0.1 뒤에 :3000과 같은 숫자가 표현됩니다. 이 숫자가 IP주소가 가리키는 PC에 접속할 수 있는 통로를 의미합니다.
- 포트 번호는 0~65535까지 사용할 수 있습니다.(0~1024까지 포트는 이미 정해져 있다.)
- 22 : SSH
- 80 : HTTP
- 443: HTTPS
- 더 많은 포트 번호 확인하기
IP Adress
Internet protocol의 줄임말로 인터넷에서 사용하는 주소 체계를 말한다.
네이버에 '내 아이피 주소'를 검색해하게 되면 다음과 같이 뜨는 것을 확인할 수 있다.
- 위에 뜨고 있는 '124.51.12.28'은 현재 내 pc를 가리키는 주소이다.
- 숫자들은 '.'(닷)을 통해서 구분하게 되는데 구분되어 나온 덩어리가 4개인 것이 ipv4이다
- ipv4는 각 덩어리마다 0부터 255까지 나타낼 수 있다 (즉 2^(32)인 약 43억 개의 ip주소를 표현할 수 있다)
- localhost, 127.0.0.1 : 현재 사용 중인 로컬 PC를 지칭합니다.
- 0.0.0.0, 255.255.255.255 : broadcast address, 로컬 네트워크에 접속된 모든 장치와 소통하는 주소입니다. 서버에서 접근 가능 IP 주소를 broadcast address로 지정하면, 모든 기기에서 서버에 접근할 수 있습니다.
IPV6의 탄생
PC의 보급률이 점점 높아지면서 IPV4로 할당할 수 있는 서버가 부족하게 되었습니다.
이 문제를 해결하기 위해 기존의 IPV4에서 표기법을 달리하여 2^128개의 IP주소를 표시할 수 있는 IPV6가 탄생하게 되었습니다.
Domain name
ip주소를 대신하여 사용하는 주소
ip 간단하고 한눈에 파악하기 쉽게 나타낼 수 있다.
samsamgoo.tistory.com
제 블로그의 경우 도메인 이름은 samsamgoo.tistory.com입니다.
Domain Name Types
도메인의 뒤쪽에 위치하여. com ,. net 등의 도메인의 이름 유형을 나타 냅니다.
이는 브랜드나 서비스에 따라. voyage. app으로 변경될 수 있습니다.
- . com – commercial business (the most common TLD)
- . org – organizations (typically, nonprofit)
- . gov – government agencies
- . edu – educational institutions
- . net – network organizations
- . mil – military
각각의 도메인 이름 유형마다 가지고 있는 역할들
DNS
브라우저의 경우 도메인 이름을 입력하여 해당 사이트로 이동하기 때문에 도메인 이름과 매칭 된 ip주소를 확인하는 작업이 반드시 필요합니다.이것을 위해 네트워크에 있는 별도의 서버를 사용하는데 이를 DNS(Domain Name System)이라고 합니다
DNS의 라우팅 과정
- 사용자가 웹 브라우저를 열어 주소 표시줄에 www.example.com을 입력하고 Enter 키를 누릅니다.
- www.example.com에 대한 요청은 일반적으로 케이블 인터넷 공급업체, DSL 광대역 공급업체 또는 기업 네트워크 같은 인터넷 서비스 제공업체(ISP)가 관리하는 DNS 해석기로 라우팅 됩니다.
- ISP의 DNS 해석기는 www.example.com에 대한 요청을 DNS 루트 이름 서버에 전달합니다.
- ISP의 DNS 해석기는 www.example.com에 대한 요청을 이번에는. com 도메인의 TLD 이름 서버 중 하나에 다시 전달합니다.. com 도메인의 이름 서버는 example.com 도메인과 연관된 4개의 Amazon Route 53 이름 서버의 이름을 사용하여 요청에 응답합니다.
- ISP의 DNS 해석기는 Amazon Route 53 이름 서버 하나를 선택해 www.example.com에 대한 요청을 해당 이름 서버에 전달합니다.
- Amazon Route 53 이름 서버는 example.com 호스팅 영역에서 www.example.com 레코드를 찾아 웹 서버의 IP 주소 192.0.2.44 등 연관된 값을 받고 이 IP 주소를 DNS 해석기로 반환합니다.
- ISP의 DNS 해석기가 마침내 사용자에게 필요한 IP 주소를 확보하게 됩니다. 해석기는 이 값을 웹 브라우저로 반환합니다. 또한, DNS 해석기는 다음에 누군가가 example.com을 탐색할 때 좀 더 빠르게 응답할 수 있도록 사용자가 지정하는 일정 기간 example.com의 IP 주소를 캐싱(저장)합니다. 자세한 내용은 Time to Live(TTL)를 참조하세요.
- 웹 브라우저는 DNS 해석기로부터 얻은 IP 주소로 www.example.com에 대한 요청을 전송합니다. 여기가 콘텐츠가 있는 곳으로, 예를 들어 웹 사이트 엔드포인트로 구성된 Amazon S3 버킷 또는 Amazon EC2 인스턴스에서 실행되는 웹 서버입니다.
- 192.0.2.44에 있는 웹 서버 또는 그 밖의 리소스는 www.example.com의 웹 페이지를 웹 브라우저로 반환하고, 웹 브라우저는 이 페이지를 표시합니다.
728x90
반응형
'백엔드 > 네트워크' 카테고리의 다른 글
[HTTP]SSR vs CSR (0) | 2022.10.10 |
---|---|
[HTTP] AJAX (0) | 2022.10.10 |
[HTTP]Messages (0) | 2022.10.09 |
[HTTP]REST API (0) | 2022.10.06 |
[HTTP]네트워크 기초 (0) | 2022.10.06 |