[Network] 프록시(Proxy)란?
·
Network
프록시(Proxy)란?프록시(Proxy)는 영어로 ‘대리’, ‘중계’를 의미합니다. 네트워크에서는 클라이언트와 서버 사이에서 중계 역할을 수행하는 서버 혹은 소프트웨어를 일컫습니다.즉, 클라이언트는 프록시 서버로 요청을 보내고, 프록시 서버가 실제 서버에 요청하여 받은 응답을 다시 클라이언트에게 전달합니다. ◼︎ 프록시의 주요 기능과 장점1. 보안 강화 및 익명성 제공프록시 서버를 통해 요청하면, 외부 서버에는 실제 사용자의 IP가 아닌 프록시 서버의 IP만 노출됩니다. 따라서 사용자 개인정보 보호와 익명성이 강화됩니다.2. 캐싱을 통한 성능 최적화자주 요청되는 데이터는 프록시 서버에 저장되며, 동일 요청 시에는 서버를 거치지 않고 캐시에서 직송 가능하여 네트워크 트래픽 및 서버 부하가 감소합니다.3..
Nginx로 HTTP에서 HTTPS로 리다이렉트 설정하는 방법 (DNS 설정, ATS, Let’s Encrypt)
·
Network
iOS 배포 과정에서 App Transport Security(ATS)라는 보안 정책에 의해 Apple이 iOS 9부터 iOS 앱에서 HTTPS 통신만 허용한다는 사실을 알게되었습니다. http로 통신하면 앱이 해당 요청을 차단하며, 에러를 발생시킵니다. ATS 정책이 없더라도, 요즘 서비스에서 HTTPS는 기본 보안 요구사항입니다. 따라서 Nginx 설정을 통해 HTTP 요청을 HTTPS로 강제 리다이렉트 해주어야 한다고 합니다. - 도메인 구매 및 EC2에 연결 먼저 도메인을 구매하고, 구매한 도메인의 DNS 설정해서 A 레코드를 추가하거나 수정합니다 타입 이름 값 (EC2 퍼블릭 IP) A@13.125.xxx.xxx - Nginx로 HTTP → HTTPS 리다이렉트 설정Nginx 설치..
[Network] 패킷이란? / 패킷의 구성
·
Network
1. 패킷이란?패킷은 더 큰 메시지를 작게 나눈 데이터 조각입니다. 인터넷 같은 컴퓨터 네트워크에서는 모든 데이터가 이 패킷 단위로 전송되며, 수신 측에서는 이를 다시 조합하여 원래의 정보로 복원합니다.마치 편지를 여러 장의 엽서로 나눠 보내는 것과 같습니다.각 패킷은 네트워크를 통해 독립적으로 전송됩니다.도착한 후, 순서대로 조립되어 원래의 데이터로 복원됩니다. 2. 패킷을 사용하는 이유이론적으로는 데이터를 한 줄로 길게 보내는 것도 가능하지만, 현실적인 문제들이 있습니다.한 번에 전송되는 긴 데이터는 회선을 독점하게 되어 다른 장치는 데이터를 보낼 수 없습니다.네트워크의 효율성과 안정성을 위해 인터넷은 ‘패킷 스위칭(Packet Switching)’ 방식으로 작동합니다.패킷 스위칭 덕분에 여러 사용자..
경로 제어 프로토콜이란?
·
Network
경로 제어 프로토콜네트워크 장치가 서로 데이터를 주고받기 위해 네트워크 내 최적의 경로를 결정하고 유지하는 데 사용되는 프로토콜 경로 제어 프로토콜의 종류IGP(내부 게이트웨이 프로토콜): 하나의 자율 시스템 내의 라우팅에 사용되는 프로토콜- RIP현재 가장 널리 사용되는 라우팅 프로토콜로 거리 벡터 라우팅 프로토콜이라고도 불리며, 최단 경로 탐색에 Bellman-Ford 알고리즘이 사용됨최대 홉 수를 15로 제한하므로 15 이상의 경우는 도달할 수 없는 네트워크를 의미 → 대규모 네트워크에서는 RIP을 사용할 수 없음을 의미- OSPFRIP의 단점을 해결해 새로운 기능을 지원하는 인터넷 프로토콜로, 대규모 네트워크에서 많이 사용됨인터넷 망에서 이용자가 최단 경로를 선정할 수 있도록 라우팅 정보에 노드 ..
[네트워크] 0.0.0.0/0 IP란
·
Network
0.0.0.0/0는 네트워크에서 사용되는 CIDR (Classless Inter-Domain Routing) 표현으로, "모든 IP 주소"를 의미한다. 사이더(CIDR)란 클래스 없는 도메인 간 라우팅 기법이라는 뜻이다. 구체적으로 설명하자면:0.0.0.0은 특정 IP 주소를 가리키지 않고 네트워크 전체를 가리키는 특수 주소이다./0은 서브넷 마스크로, 0비트의 주소 부분만 고정하고 나머지 32비트는 모두 가변적임을 나타낸다. 이로 인해 IPv4 주소 범위 전체인 0.0.0.0부터 255.255.255.255까지 모든 IP가 포함된다.이는 주로 방화벽 규칙, 라우팅 테이블, 네트워크 설정에서 외부 네트워크의 모든 IP 주소에 접근을 허용하거나 차단할 때 사용되는데 예를 들어, 특정 포트에 대해 0.0.0..
[네트워크] 폴링 / 롱 폴링 (Polling / Long Polling)
·
Network
Polling 폴링(polling)은 가장 기본적인 데이터 처리방식으로, 클라이언트가 주기적으로 서버에 요청을 보내 데이터를 확인하는 방식이다. 서버는 클라이언트 요청에 대해 새로운 데이터가 있는지 확인하고, 새로운 데이터가 있으면 이를 클라이언트에게 응답으로 보낸다. 주로 실시간 데이터 처리가 중요한 경우 사용된다.  장점 단순성: 폴링은 구현이 간단하고, 대부분의 표준 HTTP 요청을 사용하므로 복잡한 추가 설정이 필요 없음.상태 유지 불필요: 서버가 클라이언트의 상태를 유지할 필요가 없어 서버 자원을 절약할 수 있음.쉽게 확장 가능: 클라이언트와 서버 간의 통신이 독립적이므로 여러 클라이언트가 동시에 요청을 보내도 서버에서 쉽게 처리할 수 있음.단점비효율성: 클라이언트가 일정 시간마다 서버에 요청을..
[네트워크] 전송 계층 프로토콜 (TCP/UDP)
·
Network
전송 계층의 역할전송 계층은 애플리케이션 계층의 하위 계층으로서 종단 호스트(예: 클라이언트-서버)간의 신뢰성 있는 데이터 전송을 담당한다.전송 계층은 네트워크 상에서 데이터를 전달할 때 1)오류 없이, 2) 순서대로, 3)중복 없이, 4)손실 없이 데이터를 전송하는 것을 목표로 한다.전송 계층은 위 4가지 목표를 달성하기 위해 대표적으로 2가지 프로토콜 (UDP, TCP)을 사용한다.전송 계층의 동작 방식소켓과 애플리케이션 계층소켓을 생성할 때, 애플리케이션 계층에서 IP 주소와 포트 번호를 설정한다. 애플리케이션은 이를 통해 통신을 설정하고, 전송 계층에 데이터를 보낸다.소켓이 생성되면, 전송 계층은 애플리케이션 계층으로부터 전달된 데이터와 포트 번호, IP 주소를 받게 된다.전송 계층(TCP/UDP..
[네트워크] 네트워크 계층별 프로토콜
·
Network
컴퓨터 네트워크 강의 수강 후 추가적인 개념 정리가 필요할 것 같아서 정리하였다. 프로토콜 (Protocol)컴퓨터 또는 전자기기 간의 원활한 통신을 위해 지키기로 약속한 규칙컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계  OSI 7 (Open Systems Interconnection) 계층별 주요 프로토콜계층을 나눈 이유?  통신이 일어나는 과정을 단계별로 파악할 수 있으므로, 문제 발생 시 현상에 따라 원인을 파악하기 쉽다. ●  하위 계층으로 갈수록 헤더가 붙어 캡슐화가 진행되며, 상위 계층으로 갈수록 헤더를 제거하여 역캡슐화가 진행된다. ●  헤더에는 해당 계층의 기능과 관련된 제어 정보가 포함되어 있다.  7. 응용 계층 (Application)우리가 사용하는..