쉽게(?) 이해하기 위한 네트워크
1. Six Degrees of Separation: (HW: Switch, Router 등등)
2. 역할별 네트워크 계층이 있으며 사전 악속(프로토콜)에 의해
동작한다. (물리, 데이터링크, 인터넷, 전송, 응용)
3. 각 계층별 필요한 장부(연락처)를 기록한다.
12
네트워크 분석: 시나리오
1. Ping을 치면 어떻게 될까?
2. 웹사이트 접속하면 어떻게 될까? (소규모)
3. 웹사이트 접속하면 어떻게 될까? (대규모)
4. HTTPS의 역할은?
13
시나리오 Step1: ping
20
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC: 192.168.31.41로
패킷을 보내야 하는데
얘는 누구야?
시나리오 Step2: ARP Boardcast
21
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC: 아 모르겠다. 근처에 있는
친구들에게 물어 봐야지.
너가 192.168.31.41이니??
Broadcast
Broadcast
Broadcast
시나리오 Step3: ARP Reply
23
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC: 아 모르겠다. 근처에 있는
친구들에게 물어 봐야지.
너가 192.168.31.41이니??
ARP Broadcast
Broadcast
Reply
MAC: 98:41:5C:3B:CB:58
Nintendo: 192.168.31.41은 사실
나야. 내 명함(MAC 주소) 받아
시나리오 Step3: ARP Ignore
25
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
AP: 난 192.168.31.41가 아니야.
알아서 찾겠지. 뭐.
응답안함
Broadcast
Broadcast
PC: 아 모르겠다. 근처에 있는
친구들에게 물어 봐야지.
너가 192.168.31.41이니??
ARP Broadcast
시나리오 Step4: ARP Reply
26
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC:192.168.31.41이
너(98:41:5C:3B:CB:58) 구나.
내 연락처에 저장할 게.
ARP Table
Reply
MAC: 98:41:5C:3B:CB:58
Nintendo: 192.168.31.41은 사실
나야. 내 명함(MAC 주소) 받아
ARP Table
호스트 IP MAC
Nintendo Switch 192.168.31.41 98:41:5C:3B:CB:58
시나리오: ICMP 요청
29
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC:이제 필요한 정보(IP, MAX)를
전부 알고 있어.
패킷 보내줄 게.
ICMP
Nintendo: 192.168.31.41은 사실
나야. 내 명함(MAC 주소) 받아
ARP Table
호스트 IP MAC
Nintendo Switch 192.168.31.41 98:41:5C:3B:CB:58
ICMP
request
시나리오: ICMP 응답
31
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
Nintendo Switch
IP: 192.168.31.41
MAC: 98:41:5C:3B:CB:58
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC:이제 필요한 정보(IP, MAX)를
전부 알고 있어.
패킷 보내줄 게.
ICMP
ICMP
reply
Nintendo: 패킷 잘 받았다고
알려줘야지.
ARP Table
호스트 IP MAC
Nintendo Switch 192.168.31.41 98:41:5C:3B:CB:58
시나리오 Step1: DNS
36
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC: kit-works.com의 IP가 뭐지?
DNS Query Request
DNS
Query
Request
시나리오 Step2: DNS
37
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
PC: kit-works.com의 IP가 뭐지?
DNS Query Request
DNS
Query
Request
AP: 어? 나도 모르는데..
kit-works.com의 IP 아시는 분?
DNS Query Request
DNS
DNS
Query
Request
DNS
도메인 IP
kit-works.com 13.209.15.150
NAT
시나리오 Step3: DNS 응답
40
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
DNS:
kit-works.com의 IP는
13.209.15.150 이거야.
DNS
DNS
Query
Reply
DNS
도메인 IP
kit-works.com 13.209.15.150
DNS
Query
Request
NAT
시나리오 Step4: DNS
42
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
DNS
Query
Reply
DNS
DNS
Query
Reply
DNS
도메인 IP
kit-works.com 13.209.15.150
AP: kit-works.com의 ip를 우선
저장해놔야지. PC야 받어.
DNS Cache && DNS Query Reply
DNS Cache
도메인 IP
kit-works.com 13.209.15.150
NAT
시나리오 Step5: DNS
43
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
DNS
Query
Reply
DNS
DNS
Query
Reply
DNS
도메인 IP
kit-works.com 13.209.15.150
AP: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: 이제 kit-works랑 바로
통신하면 되겠네. 나도 저장해
놓을게.
NAT
시나리오 Step6: 웹페이지 요청
44
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
Web Page
Request
DNS
DNS
도메인 IP
kit-works.com 13.209.15.150
AP: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: kit-works.com의 ip 값,
나도 저장해 놓을 게.
키트웍스
도메인: kit-works.com
IP: 13.209.15.150
NAT
시나리오 Step7: 웹페이지 요청
45
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
Web Page
Request
DNS
DNS
도메인 IP
kit-works.com 13.209.15.150
AP: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
키트웍스
도메인: kit-works.com
IP: 13.209.15.150
Internet
NAT
시나리오 Step8: 웹페이지 응답
46
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
Web Page
Response
DNS
DNS
도메인 IP
kit-works.com 13.209.15.150
AP: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
키트웍스
도메인: kit-works.com
IP: 13.209.15.150
Internet
NAT
시나리오: /etc/hosts
51
PC
IP: 192.168.31.65
MAC: f8:4d:89:7e:33:b0
AP
IP: 192.168.31.1
MAC: 40:31:3C:00:21:9F
Web Page
Request
DNS
DNS
도메인 IP
kit-works.com 13.209.15.150
AP: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: DNS Cache
도메인 IP
kit-works.com 13.209.15.150
PC: kit-works.com의 ip가 이거구나
PC: /etc/hosts
도메인 IP
kit-works.com 15.164.232.74
스터디모아
도메인: studymoa.me
IP: 15.164.232.74