네트워크
-
네이버 최초 접속까지의 과정네트워크 2025. 3. 11. 17:42
네이버에 접속하려면 다음의 과정을 거친다. 1. 노트북에 와이파이를 연결하기2. 브라우저 url에 www.naver.com 입력하기3. 네이버에 접속완료 이 세 과정 사이에서 어떤 일이 일어나는지 알아보겠다. 1. 노트북에 와이파이 연결하기1-1. 노트북에 IP 주소 할당하기 - DHCP 프로토콜네이버 서버에 어떤 요청을 보내기 위해서는 내 기기에 네트워크 주소를 할당받아야 한다.요청을 보낼때 내 기기가 어느 네트워크에 있는지를 알려야 하기 때문이다.그래야 네이버 서버에서 보낸 응답을 내 기기가 잘 받을 수 있다. 네트워크 주소(=IP주소)를 할당받기 위해서는 공유기(=라우터)에게 요청을 보내야 한다.그런데 이 라우터가 어느 네트워크에 있는지 모른다. 따라서 아래와 같은 과정을 거쳐야 한다.1. 같은 ..
-
전체적인 데이터 전송/수신 과정네트워크 2025. 3. 9. 15:31
데이터는 어떻게 전송될까?이미지를 전송하는 것으로 예를 들어 설명하겠다. 이미지를 전송하기 위해서는 여러 처리를 거쳐야 한다.1. 추가 데이터 포함시키기보낼 데이터에 이미지 크기, 형식(JPEG, PNG), 전송방식(POST, PATCH) 등을 포함해야 한다.2. 데이터 쪼개기한번 전송시 담을 수 있는 최대 용량이 있기 때문에 이미지를 쪼개어 여러번 전송해야 한다.3. 신뢰성 보장하기오류로 인해 데이터가 전달되지 않거나 잘못된 데이터가 전달되면 처리할 수 있도록 해야 한다.4. 목적지까지의 경로 설정하기보내고자 하는 목적지의 최적의 경로를 설정해야 한다.5. 실제로 데이터 전송하기0과 1밖에 없는 신호를 통해 전송해야 하므로, 이미지를 이진수 형태로 변경하여 전송한다.등등.. 실제로 어느곳에서 어떻게..
-
서브넷 마스크(Subnet Mask)란?네트워크 2025. 3. 8. 13:03
서브넷 마스크(Subnet Mask)란?어떤 장치와 내 장치가 같은 네트워크에 속하는지 구분하는 기준이다.지도로 예를 들자. 네트워크를 전 세계라고 보면,서브넷 마스크는 친구와 내가 같은 도시 안에 있는지 구분할 수 있는 장치다. 즉, 서브넷 마스크는 도시 경계선이다. 왜 필요할까?애초에 왜 통신할때 서브넷 마스크가 필요할까? 그냥 통신하면 안될까? 그 이유는 현재 통신하고 있는 장치가 너무 많아졌기 때문이다.만약 서브넷 마스크가 없어 네트워크를 구분하지 못하면, 어마어마하게 많은 장치를 하나하나 찾아가며 내가 보내야 하는 장치가 맞는지 확인해야 한다. 다시 지도로 예를 들면,네이버 본사로 편지를 전달해야하는데, "경기도 성남시 분당구 정자동 178-4"가 아닌 "178-4"라는 정보밖에 몰라서 "17..
-
백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기 - 방법2) 웹서버 Nginx로 해결하기네트워크 2024. 12. 16. 22:40
아래 링크 "백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기"의 두번째 방법이다.https://annyeong46.tistory.com/69 백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기 - Nginx 이용백엔드와 프론트가 분리된 환경일때 CORS 관련 문제가 발생한다.도메인이 다르기 때문이다. 이를 해결하기 위해서는 세가지 방법이 있다.방법1) 백엔드에서 직접 해결하기Spring boot에서 직접 CORSannyeong46.tistory.comNginx란?Nginx는 단일 도메인으로 보이도록 속임수를 쓰는 방법이다. 실제로는 백엔드와 프론트가 다른 도메인을 사용한다.이런 방법을 Reverse Proxy라고 한다. 어떻게 속임수를 쓰는걸까?위 그림을 보자.백엔드 프론트 간의 통..
-
백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기 - 방법3) 프론트엔드(React)에서 직접 해결네트워크 2024. 12. 16. 22:37
아래 링크 "백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기"의 세번째 방법이다.https://annyeong46.tistory.com/69 백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기 - Nginx 이용백엔드와 프론트가 분리된 환경일때 CORS 관련 문제가 발생한다.도메인이 다르기 때문이다. 이를 해결하기 위해서는 세가지 방법이 있다.방법1) 백엔드에서 직접 해결하기Spring boot에서 직접 CORSannyeong46.tistory.com 프론트엔드(React)에서 직접 해결하기이 방법을 권장하지는 않는다. 임시방편인 해결법이다.(더 안전하고 좋은 방법은 해당 링크를 참고하자. https://annyeong46.tistory.com/69) 권장하지 않는 이유는 프론트에서 ..
-
백엔드와 프론트가 분리된 환경일 때 CORS 문제 해결하기네트워크 2024. 12. 16. 22:08
백엔드와 프론트가 분리된 환경일때 CORS 관련 문제가 발생한다.도메인이 다르기 때문이다. CORS란?CORS란 도메인이 다른 리소스끼리 통신할때 보안을 위해 만들어진 정책이다. 개발할 때는 프론트와 백엔드의 도메인이 각기 다르다. 예를 들어 react는 localhost:3000을 사용하고, spring boot는 localhost:8080을 사용한다. 그래서 CORS에러가 난다. CORS 문제 해결법이를 해결하기 위해서는 세가지 방법이 있다. 방법1) 백엔드에서 직접 해결하기Spring boot에서 직접 CORS 관련 설정하여 해제시키는 방법이다.아래 링크를 참고하자.https://hoehen-flug.tistory.com/58 [Spring Boot] CORS 설정 방법 2가지( (+) Illeg..