목록Computer_Science (10)
pogun 공부 저장소
흐름 요약브라우저가 뜬다는 건"주소를 해석하고 → 길을 찾고 → 서버와 연결하고 → 데이터를 받아 → 화면으로 그리는 과정"이다. 즉,URL 입력 → DNS로 IP 찾기 → 서버까지 네트워크 연결 → HTTP/HTTPS 요청 → 서버 응답 → HTML/CSS/JS 다운로드 → 브라우저가 화면으로 그리기1. 사용자가 주소창에 URL을 입력한다.https://www.google.com브라우저는 이걸 이렇게 나눠서 해석한다 : - https → 통신 규칙(HTTPS) - www.google.com → 도메인 이름 - / → 요청 경로(기본 페이지) 아직 이 시점에서는 : - 서버에 접속 X, 인터넷 통신 X → 그냥 문자열을 분석하는 단계2. "google.com이 어디야?" → D..
게이트웨이 정의"인터넷으로 나갈 때 반드시 거쳐야 하는 '출구'""내 PC에는 IP도 있고, DNS도 있는데 왜 설정에 꼭 게이트웨이가 있을까?""게이트웨이가 없으면 인터넷은 왜 안 될까?"→ 여기서 등장하는 핵심이 바로 게이트웨이(Default Gateway) 이다. : 게이트웨이는 "내 네트워크를 벗어나는 모든 트래픽이 처음으로 향하는 출구"다.조금 더 쉽게 말하면,"이 IP가 우리 집(같은 네트워크)이 아니면,전부 저쪽(공유기)으로 보내라"는 기준점이다.1. 게이트웨이가 없으면 어떤 일이 생길까?: 내 PC 설정을 보면 보통 이런 값들이 있다. - IP 주소: 192.168.0.10 - 서브넷 마스크: 255.255.255.0 - 기본 게이트웨이: 192.168.0.1 - ..
DNS 정의: "google.com을 치면 왜 접속이 되는가?": NAT(주소 번역), DHCP(주소 배정), 포트포워딩(길 안내)까지 이해했다면 아래 궁금증이 생긴다. "근데 우리는 IP(숫자)를 모르는데도 왜 google.com, naver.com 같은 이름만 치면 접속이 되지?"→ 여기서 등장하는 핵심이 DNS(Domain Name System)이다. 즉,DNS는 사람이 읽기 쉬운 도메인 이름(예: google.com)을 컴퓨터가 통신할 수 있는IP 주소(예: 142.250.x.x)로 바꿔주는 '인터넷 전화번호부' 시스템이다.1. DNS가 없으면 인터넷은 어떻게 보일까?: DNS가 없으면, 우리는 사이트에 들어갈 때마다 이렇게 해야 한다. - “구글 접속하려면 142.250.xxx.xxx” ..
포트포워딩의 정의"집에서 서버 열기"가 왜 어렵고, 포트포워딩이 왜 필요한가?"그럼 집 컴퓨터로 서버(웹서버, 게임서버, 개발서버)를 열면친구가 내 집 IP로 접속하면 되는 거 아닌가?""근데 왜 '포트포워딩 해야함' 이란 생각을 할 수 있다"→ 여기서 등장하는 핵심이 포트포워딩(Port forwarding) 이다.포트포워딩은 "공유기(공인IP)로 들어온 특정 포트의 요청"을 "집 안의 특정 기기(사설 IP)의 특정 포트"로 전달해 주는규칙 설정이다. - NAT 환경에서는 "밖에서 집 안으로 들어오는 길"이 기본적으로 막혀있다.- 포트포워딩은 그 막힌 문에 "이 문(포트)로 들어오면, 저 방(내부 기기)으로 안내해" 라고 표지판을 붙이는 작업1. 포트포워딩이 왜 필요한가?: 집 인터넷 구조는 보통 이렇게..
DHCP 정의"와이파이만 연결했는데 인터넷이 되는 이유"를 설명NAT에 대해 공부를 하다보면 다음 질문이 생각날 것 같다 :"그럼 사설 IP(192.168.x.x)"는 누가, 어떻게 정해주는 거야?""내 폰은 와이파이에 연결만 했는데 왜 바로 인터넷이 되지?": 여기서 등장하는 핵심이 DHCP(Dynamic Host Configuration Protocol) 이다. 한 문장으로 정의하면 :DHCP는 네트워크에 새로 들어온 기기에서 "IP 주소 + 인터넷 설정(게이트 웨이, DNS 등)"을 자동으로 배정해주는 프로토콜이다.: 즉, DHCP는 "주소 배정 담당자"이다.: NAT가 "주소 번역기"라면, DHCP는 "주소를 나눠주는 사람"입니다.1. DHCP가 없으면 벌어지는 일: DHCP가 없다면, 여러분이 ..
NAT의 정의"왜 IPv4는 주소가 부족한데도 아직 잘 돌아가지?"→ 여기서 거의 반드시 등장하는 단어가 NAT(Network Address Translation) 입니다. NAT를 한 문장으로 설명하자면NAT는 "집 안에서 쓰는 내부 주소(사설 IP)’를 ‘인터넷에서 통하는 외부 주소(공인 IP)"로번역해주는 기술이다.1. NAT를 가장 쉽게 이해하는 비유 2개비유 1 : "회사 대표번호 + 내선번호"- 회사 전화번호는 대표번호 1개(예: 02-1234-5679)지만,- 직원들은 내선번호(101, 102, 103...)로 구분된다. 여기서 - 대표번호 = 공인 IP (Public IP) - 내선번호 = 포트(Port) - 직원 각각의 PC / 폰 = 내부 기기(사설 IP) : 즉, 밖에..
1. IP란?: IP(Internet Protocol)는 인터넷에서 데이터를 주소(IP)를 기준으로 전달(라우팅) 하기 위한 규칙이다. - 클라이언트는 목적지 IP로 패킷을 보낸다.- 중간의 라이터들은 IP 주소를 보고 다음 경로로 전달한다.- 이때 사용하는 주소 체계는 IPv4 또는 IPv6다.2. IPv4 상세 설명A. 주소 형태- 32비트 주소- 보통 점(.)으로 4개 숫자(0 ~ 255)를 쓴다.192.168.0.10B. 주소 개수- 32비트 → 최대 약 43억 개(2^32)- 스마트폰, PC, 서버, IoT 기기 증가로 이미 부족C. 주소 부족을 버틴 방법 : NAT: IPv4가 아직도 널리 쓰이는 이유 중 하나가 NAT(Network Address Translation) 때문이다. - 내..
CMS(Content Management System, 콘텐츠 관리 시스템)1. 개념 - 정의 : 웹사이트나 앱에서 사용하는 콘텐츠(글, 이미지, 동영상, 상품 정보 등)를 쉽게 생성 생성·관리·수정·배포할 수 있는 시스템 - 핵심 포인트 : "비개발자도 관리자 화면에서 손쉽게 콘텐츠를 다룰 수 있다"는 점 - 왜 필요한가? : 개발자가 일일이 페이지를 수정하지 않아도 운영자가 직접 콘텐츠를 업데이트 가능 : 다수의 운영자가 동시에 관리 가능(권한 / 역할 관리) : 템플릿 / 플러그인을 통해 빠른 구축2. 종류2-1. 전통적 CMS - 백엔드 + 프론트엔드가 붙어 있는 형태 - 예 : WordPress, Dru..
◆ 세션(Session)과 쿠키(Cookie)의 차이점쿠키 : - 클라이언트(브라우저)에 저장되는 작은 데이터 조각 - 사용자가 웹사이트에 접속하면 쿠키 정보도 함께 서버에 전송됨 ex) 자동 로그인, 사용자 테마 설정 등세션 : - 서버에 저장되는 사용자 상태 정보 - 사용자는 세션 ID만 쿠키 형태로 가지고 있음 ex) 로그인 유지 등 - 보안적인 측면에서는 세션이 더 안전- 쿠키는 노출 위험이 있으므로 민감 정보 저장에는 부적합◆ 서버 통신 에러 (HTTP 상태 코드)200 OK - 정상 처리됨400 Bad Request - 클라이언트의 잘못된 요청401 Unauthorized - 인증 실패 (예: 로그인 실패)403 Forbidden - 권한 없음404 Not F..
"구글의 다양한 자료를 참고하여 내용을 정리해보았습니다." ◆ C 언어와 Java의 차이점C 언어 : 절차지향 언어로, 코드를 위에서 아래로 순차적으로 실행Java : 객체지향 언어로, 클래스를 기반으로 설계와 재사용성을 강조◆ Java의 특징Java : 객체지향 프로그래밍 언어 → 기본 자료형 제외 모든 요소가 객체(Object) → 캡슐화, 상속, 다형성 등의 OOP 특징이 잘 적용됨 장점운영체제 독립성 : JVM 위에서 동작하여 OS에 무관하게 실행 가능자동 메모리 관리 : Garbage Collector(GC)를 통한 메모리 자동 해제 단점느린 실행 속도 : JVM을 거쳐 실행되므로 성능이 상대적으로 낮음제한된 상속과 엄격한 문법 : 단일 속성만 가능, 타입 체크 등 문법이 엄격함◆ J..
