GitHub Pages 기반 수업 랜딩 페이지

인터넷의 동작 원리
패킷과 코드로 이해합니다

컴퓨터네트워크 수업은 DNS, IP, TCP, TLS, HTTP가 실제 웹 접속 과정에서 어떻게 연결되는지 직접 관찰하고 구현하는 실습 중심 과목입니다.

14주 이론 + 실습 과정
6개 핵심 네트워크 개념
4+ 실습 프로젝트
PCClient
DNSLookup
GitHubPages
HTMLRender
① DNS: github.io → IP
② HTTPS/TLS 연결
③ index.html 응답
// Browser Request
GET /cn/ HTTP/2
Host: hyuekjae.github.io
Status: 200 OK
Course Overview

웹페이지 하나로 네트워크 전체 흐름을 설명합니다

학생이 이 페이지에 접속하는 순간, 브라우저 내부에서는 DNS 조회, TCP 연결, TLS 보안 연결, HTTP 요청, HTML/CSS 렌더링이 순서대로 일어납니다.

🌐

DNS

도메인 이름을 실제 접속 가능한 IP 주소로 바꾸는 과정을 이해합니다.

🔌

TCP/IP

브라우저와 서버가 데이터를 안정적으로 주고받는 기본 통신 구조를 배웁니다.

🔐

HTTPS/TLS

인증서, 암호화, 안전한 웹 통신이 어떻게 이루어지는지 단계적으로 살펴봅니다.

Key Topics

이 수업에서 배우는 핵심 주제

단순 암기가 아니라, 실제 명령어와 패킷 분석을 통해 네트워크 개념을 눈으로 확인합니다.

📡

IP 주소와 포트

컴퓨터는 IP 주소로 찾고, 프로그램은 포트 번호로 구분한다는 개념을 배웁니다.

📦

패킷과 캡슐화

데이터가 작은 패킷으로 나뉘고 계층별 헤더가 붙는 과정을 이해합니다.

🧭

라우팅과 NAT

패킷이 여러 네트워크를 거쳐 목적지까지 이동하는 방식을 살펴봅니다.

🧪

Wireshark 분석

DNS, TCP, HTTP 패킷을 직접 캡처하여 네트워크의 실제 동작을 확인합니다.

💬

소켓 프로그래밍

UDP Echo, TCP 채팅 서버를 만들어 클라이언트/서버 구조를 체험합니다.

🖥️

웹서버 구조

브라우저가 GET 요청을 보내고 서버가 HTML을 응답하는 과정을 구현합니다.

Connection Flow

학생이 이 페이지에 접속할 때 일어나는 일

주소창에 https://hyuekjae.github.io/cn/을 입력하면 아래 순서로 통신이 진행됩니다.

STEP 01

URL 해석

브라우저가 https, 도메인, 경로를 분리합니다.

STEP 02

DNS 조회

hyuekjae.github.io를 IP 주소로 변환합니다.

STEP 03

TCP 연결

SYN, SYN-ACK, ACK로 연결을 만듭니다.

STEP 04

TLS 보안

인증서 확인 후 암호화 통신을 준비합니다.

STEP 05

HTTP 요청

GET /cn/ 요청으로 index.html을 요청합니다.

STEP 06

화면 표시

브라우저가 HTML/CSS/JS를 해석해 화면을 그립니다.

Hands-on Labs

수업 시간에 바로 해볼 수 있는 실습

이 홈페이지 자체를 실습 대상으로 사용하면 학생들이 네트워크 흐름을 실제로 확인할 수 있습니다.

# DNS 조회
nslookup hyuekjae.github.io

# HTTP 응답 헤더 확인
curl -I https://hyuekjae.github.io/cn/

# 브라우저에서 확인
F12 → Network → 새로고침
01

DNS 조회 실습

도메인 이름이 여러 IPv4, IPv6 주소로 바뀌는 과정을 확인합니다.

02

개발자도구 Network 분석

GET 요청, 200 OK, Content-Type, 응답 크기와 시간을 확인합니다.

03

IP 직접 접속 비교

도메인 접속과 IP 직접 접속의 차이를 Host 헤더 관점에서 설명합니다.

04

간단한 웹서버 만들기

Python 또는 Node.js로 로컬 웹서버를 만들고 IP 주소로 접속해 봅니다.

14-Week Plan

주차별 수업 계획

네트워크 개념을 쉬운 예제에서 시작해 실제 프로그래밍과 패킷 분석으로 확장합니다.

1주
네트워크란 무엇인가?인터넷, 클라이언트, 서버, 프로토콜의 큰 그림
2주
OSI 7계층과 TCP/IP계층 구조와 캡슐화 개념
3주
IP 주소와 포트주소, 포트, 소켓의 관계
4주
UDP 통신UDP Echo 클라이언트/서버 실습
5주
TCP 연결3-way handshake와 신뢰성 있는 전송
6주
TCP 소켓 프로그래밍멀티 클라이언트 채팅 서버 구현
7주
중간 점검소켓 실습 정리 및 과제 리뷰
8주
DNS도메인 이름과 IP 주소 변환 구조
9주
HTTPGET, POST, 상태 코드, 헤더 이해
10주
웹서버 구현간단한 HTTP 서버 만들기
11주
HTTPS와 TLS인증서, 공개키, 암호화 연결
12주
라우팅과 NAT패킷 전달과 사설망 구조
13주
Wireshark 종합 분석DNS, TCP, HTTP 패킷 분석
14주
최종 프로젝트 발표네트워크 응용 프로그램 발표
Resources

수업 자료 안내

아래 항목은 실제 강의자료, GitHub 실습 코드, LMS 과제 제출 링크로 연결해 사용할 수 있습니다. 현재는 예시 버튼이며, 나중에 실제 주소로 바꾸면 됩니다.