KR_Net_OSI_Routing - somaz94/DevOps-Engineer GitHub Wiki
๋ฐ์ดํฐ ์ก์ ์ ์บก์ํ (Encapsulation):
Application Layer (L7): "Hello"
โ
Presentation Layer (L6): [Encoding] "Hello"
โ
Session Layer (L5): [Session ID] + Data
โ
Transport Layer (L4): [TCP Header (Port)] + Segment
โ
Network Layer (L3): [IP Header (Src/Dst IP)] + Packet
โ
Data Link Layer (L2): [Ethernet Header + MAC] + Frame + [FCS]
โ
Physical Layer (L1): Bits (์ ๊ธฐ ์ ํธ)
๊ฐ ๊ณ์ธต๋ณ PDU (Protocol Data Unit):
- L7-L5 (Application/Presentation/Session): Data
- L4 (Transport): Segment (TCP) / Datagram (UDP)
- L3 (Network): Packet
- L2 (Data Link): Frame
- L1 (Physical): Bits
TCP/IP 4๊ณ์ธต ๋งคํ:
OSI 7๊ณ์ธต TCP/IP 4๊ณ์ธต
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Application (7) โ
Presentation (6) โโโโ Application Layer
Session (5) โ
Transport (4) โโโโ Transport Layer (TCP/UDP)
Network (3) โโโโ Internet Layer (IP, ICMP, ARP)
Data Link (2) โ
Physical (1) โโโโ Network Interface Layer
์ค์ HTTP ์์ฒญ ์์:
1. Application: HTTP GET /index.html
2. Transport: TCP Header (Src Port: 54321, Dst Port: 80, SEQ, ACK)
3. Network: IP Header (Src: 192.168.1.10, Dst: 93.184.216.34)
4. Data Link: Ethernet Header (Src MAC: aa:bb:cc:dd:ee:ff, Dst MAC: Gateway MAC)
5. Physical: ์ ๊ธฐ ์ ํธ๋ก ์ ์ก
๋์บก์ํ (Decapsulation):
- ์์ ์ธก์ ์ญ์์ผ๋ก ๊ฐ ๊ณ์ธต์ ํค๋๋ฅผ ์ ๊ฑฐํ๋ฉฐ ๋ฐ์ดํฐ ์ถ์ถ
TCP 3-Way Handshake (์ฐ๊ฒฐ ์๋ฆฝ):
Client (CLOSED) Server (LISTEN)
| |
|--------- SYN (SEQ=100) -------------->| (SYN_SENT)
| | (SYN_RECEIVED)
|<-- SYN-ACK (SEQ=200, ACK=101) --------|
| (ESTABLISHED) |
|--------- ACK (ACK=201) -------------->| (ESTABLISHED)
| |
|========= Data Transfer ===============|
์ํ ๋ณํ:
- Client:
CLOSED โ SYN_SENT โ ESTABLISHED - Server:
LISTEN โ SYN_RECEIVED โ ESTABLISHED
TCP 4-Way Handshake (์ฐ๊ฒฐ ์ข ๋ฃ):
Client Server
| |
|--------- FIN (SEQ=300) -------------->| (FIN_WAIT_1)
| | (CLOSE_WAIT)
|<-------- ACK (ACK=301) ---------------|
| (FIN_WAIT_2) |
| |
|<-------- FIN (SEQ=400) ---------------| (LAST_ACK)
| (TIME_WAIT) |
|--------- ACK (ACK=401) -------------->| (CLOSED)
| |
| (2*MSL ๋๊ธฐ ํ CLOSED) |
TIME_WAIT ์ํ (2MSL):
- ๋ชฉ์ : ์ง์ฐ๋ ํจํท ์ฒ๋ฆฌ, ๋ง์ง๋ง ACK ์ฌ์ ์ก ๋๋น
- MSL (Maximum Segment Lifetime): ๋ณดํต 30์ด~2๋ถ
- ๋ฌธ์ : ๋ง์ ์ฐ๊ฒฐ ์์ฑ/์ข ๋ฃ ์ ์์ผ ๊ณ ๊ฐ
-
ํด๊ฒฐ:
SO_REUSEADDR, Connection Pooling
Half-Close:
Client: shutdown(SHUT_WR) โ ์ก์ ์ข
๋ฃ, ์์ ๊ฐ๋ฅ
Server: ๋ฐ์ดํฐ ๊ณ์ ์ ์ก ๊ฐ๋ฅ
โ ์๋ฐฉํฅ ๋
๋ฆฝ์ ์ข
๋ฃ ๊ฐ๋ฅ
๋น์ ์ ์ข ๋ฃ (RST):
RST ํ๋๊ทธ: ์ฆ์ ์ฐ๊ฒฐ ์ข
๋ฃ (4-Way ์์)
์ฌ์ฉ ๊ฒฝ์ฐ:
- ์กด์ฌํ์ง ์๋ ํฌํธ ์ ์
- ํ์์์
- ์ ํ๋ฆฌ์ผ์ด์
๊ฐ์ ์ข
๋ฃ
BGP Path Selection Process (13๋จ๊ณ):
1. Weight (Cisco ์ ์ฉ, ๋์์๋ก ์ฐ์ )
2. Local Preference (AS ๋ด๋ถ, ๋์์๋ก ์ฐ์ )
3. Locally Originated (์์ฒด ์์ฑ ๊ฒฝ๋ก ์ฐ์ )
4. AS-PATH Length (์งง์์๋ก ์ฐ์ )
5. Origin Type (IGP > EGP > Incomplete)
6. MED (Multi-Exit Discriminator, ๋ฎ์์๋ก ์ฐ์ )
7. eBGP > iBGP
8. IGP Metric (๋ฎ์์๋ก ์ฐ์ )
9. Oldest Route (๊ฐ์ฅ ์ค๋๋ ๊ฒฝ๋ก)
10. Router ID (๋ฎ์์๋ก ์ฐ์ )
11. Cluster List Length (์งง์์๋ก ์ฐ์ )
12. Neighbor IP (๋ฎ์์๋ก ์ฐ์ )
AS-PATH ์์ฑ:
AS-PATH: 65001 65002 65003
โ ํจํท์ด ๊ฑฐ์ณ์จ AS ๋ฒํธ ์์
๋ชฉ์ :
1. ๋ฃจํ ๋ฐฉ์ง (์์ ์ AS ๋ฒํธ๊ฐ ์์ผ๋ฉด ๊ฑฐ๋ถ)
2. ๊ฒฝ๋ก ๊ธธ์ด ๊ณ์ฐ
3. ๋ผ์ฐํ
์ ์ฑ
์ ์ฉ (ํน์ AS ๊ฒฝ์ ๋ฐฉ์ง)
AS-PATH Prepending (ํธ๋ํฝ ์ ์ด):
Normal: AS-PATH: 65001
Prepended: AS-PATH: 65001 65001 65001 (์ธ์์ ์ผ๋ก ๊ธธ๊ฒ)
โ ๋ค๋ฅธ ๊ฒฝ๋ก ์ ํธํ๋๋ก ์ ๋
BGP Communities:
- NO_EXPORT (65535:65281): ๋ค๋ฅธ AS๋ก ๊ด๊ณ ๊ธ์ง
- NO_ADVERTISE (65535:65282): ๋ค๋ฅธ BGP ํผ์ด์ ๊ด๊ณ ๊ธ์ง
- Custom: ์) 100:10 (๋ฐฑ์
๊ฒฝ๋ก)
์ค๋ฌด ์์ (AWS Direct Connect):
AS-PATH Prepending์ผ๋ก Primary/Secondary ๋งํฌ ์ ์ด
Primary: AS-PATH 64512
Secondary: AS-PATH 64512 64512 64512
โ Primary ์ฅ์ ์ ์๋ Secondary ์ ํ
BGP Hijacking ๋ฐฉ์ง:
- RPKI (Resource Public Key Infrastructure): AS์ IP ๋งคํ ๊ฒ์ฆ
- Route Origin Validation (ROV): ์ ํจํ AS๋ง prefix ๊ด๊ณ ๊ฐ๋ฅ
OSPF Area ๊ณ์ธต ๊ตฌ์กฐ:
Area 0 (Backbone)
[ABR]โโโโโ[ABR]
/ \
/ \
Area 1 Area 2
(Regular) (Stub/NSSA)
Area ํ์ :
- Backbone Area (Area 0): ๋ชจ๋ Area๊ฐ ์ฐ๊ฒฐ๋๋ ์ค์ฌ
- Regular Area: ๋ชจ๋ LSA ํ์ ํ์ฉ
- Stub Area: Type 4, 5 LSA ์ฐจ๋จ (๊ธฐ๋ณธ ๊ฒฝ๋ก๋ก ๋์ฒด)
- Totally Stub Area: Type 3, 4, 5 LSA ์ฐจ๋จ
- NSSA (Not-So-Stubby Area): Type 5 ๋์ Type 7 ์ฌ์ฉ (์ฌ๋ถ๋ฐฐ ํ์ฉ)
LSA (Link State Advertisement) ํ์ :
Type 1 (Router LSA):
- ๊ฐ ๋ผ์ฐํฐ๊ฐ ์์ ์ ๋งํฌ ์ํ ๊ด๊ณ
- ๊ฐ์ Area ๋ด์๋ง ์ ํ
Type 2 (Network LSA):
- DR (Designated Router)์ด ๋ฉํฐ์ก์ธ์ค ๋คํธ์ํฌ ์ ๋ณด ๊ด๊ณ
- Ethernet, Frame Relay ๋ฑ
Type 3 (Summary LSA):
- ABR์ด ๋ค๋ฅธ Area์ ๋คํธ์ํฌ ์ ๋ณด๋ฅผ ์์ฝํ์ฌ ๊ด๊ณ
- Inter-Area ๋ผ์ฐํ
Type 4 (ASBR Summary LSA):
- ABR์ด ASBR (AS Boundary Router) ์์น ๊ด๊ณ
- Type 5 LSA ๋๋ฌ ๊ฒฝ๋ก
Type 5 (External LSA):
- ASBR์ด ์ธ๋ถ AS์ ๋ผ์ฐํธ ๊ด๊ณ (์ฌ๋ถ๋ฐฐ)
- ์ ์ฒด OSPF ๋๋ฉ์ธ์ ์ ํ
Type 7 (NSSA External LSA):
- NSSA์์ ์ฌ์ฉํ๋ External LSA
- ABR์ด Type 5๋ก ๋ณํํ์ฌ Backbone์ผ๋ก ์ ํ
OSPF ๋์ ํ๋ฆ:
1. Hello ํจํท ๊ตํ โ Neighbor ๋ฐ๊ฒฌ
2. DR/BDR ์ ์ถ (๋ฉํฐ์ก์ธ์ค ๋คํธ์ํฌ)
3. DBD (Database Description) ๊ตํ โ LSDB ๋๊ธฐํ
4. LSR/LSU ๊ตํ โ ๋๋ฝ๋ LSA ์์ฒญ/์ ์ก
5. SPF (Dijkstra) ์๊ณ ๋ฆฌ์ฆ ์คํ โ ์ต๋จ ๊ฒฝ๋ก ๊ณ์ฐ
6. ๋ผ์ฐํ
ํ
์ด๋ธ ์
๋ฐ์ดํธ
Area ์ค๊ณ ๋ชจ๋ฒ ์ฌ๋ก:
- Area๋น ๋ผ์ฐํฐ 50๊ฐ ์ดํ ๊ถ์ฅ
- ABR์ ์ต๋ 3๊ฐ Area์๋ง ์ฐ๊ฒฐ
- Stub Area๋ก LSA ์ ๊ฐ์
NAT (Network Address Translation) ํ์ :
Static NAT (1:1):
Private IP Public IP
192.168.1.10 โโ 203.0.113.5 (๊ณ ์ ๋งคํ)
โ ์๋ฒ ์ด์ ์ ์ฌ์ฉ (์น์๋ฒ, ๋ฉ์ผ์๋ฒ)
Dynamic NAT (N:M):
Private Pool: 192.168.1.10~192.168.1.20
Public Pool: 203.0.113.5~203.0.113.10
โ ์์ฒญ ์ ๋์ ํ ๋น
PAT (Port Address Translation, NAPT):
Private Public
192.168.1.10:54321 โโ 203.0.113.5:10001
192.168.1.11:54322 โโ 203.0.113.5:10002
192.168.1.12:54323 โโ 203.0.113.5:10003
โ ํ๋์ Public IP๋ก ์์ฒ ๊ฐ์ ๋ด๋ถ ํธ์คํธ ์ง์
NAT Translation Table:
| Inside Local | Inside Global | Outside Global | Outside Local |
|----------------|----------------|----------------|----------------|
| 192.168.1.10:54321 | 203.0.113.5:10001 | 8.8.8.8:53 | 8.8.8.8:53 |
NAT Traversal ๋ฌธ์ :
- P2P ์ ํ๋ฆฌ์ผ์ด์ (VoIP, ๊ฒ์, ํ์ํ์) ์ฐ๊ฒฐ ์คํจ
- ๋ด๋ถ โ ์ธ๋ถ๋ ๊ฐ๋ฅํ์ง๋ง ์ธ๋ถ โ ๋ด๋ถ ์ฐ๊ฒฐ ๋ถ๊ฐ
NAT Traversal ๊ธฐ๋ฒ:
1. STUN (Session Traversal Utilities for NAT):
Client โ STUN Server
STUN Server: "๋น์ ์ Public IP๋ 203.0.113.5:10001์
๋๋ค"
โ Symmetric NAT์์๋ ์คํจ
2. TURN (Traversal Using Relays around NAT):
Client A โ โ TURN Server โ โ Client B
โ ๋ชจ๋ ํธ๋ํฝ์ด ์ค๊ณ ์๋ฒ ๊ฒฝ์ (๋์ญํญ ์๋ชจ)
3. ICE (Interactive Connectivity Establishment):
1. STUN์ผ๋ก Public IP ํ๋ ์๋
2. ์คํจ ์ TURN์ผ๋ก Fallback
3. ์ฌ๋ฌ Candidate ์ค ์ต์ ๊ฒฝ๋ก ์ ํ
โ WebRTC์์ ์ฌ์ฉ
4. UPnP (Universal Plug and Play):
์ ํ๋ฆฌ์ผ์ด์
์ด ๋ผ์ฐํฐ์ ํฌํธ ํฌ์๋ฉ ์๋ ์ค์ ์์ฒญ
โ ๋ณด์ ์ํ (์
์ฑ์ฝ๋ ์
์ฉ ๊ฐ๋ฅ)
5. Port Forwarding (Static):
Router: ์ธ๋ถ 80 โ 192.168.1.10:80
์ธ๋ถ 443 โ 192.168.1.10:443
โ ์๋ฒ ์ด์ ์ ์๋ ์ค์
NAT ํ๊ณ:
- End-to-End ์์น ์๋ฐฐ
- IPsec ESP ๋ชจ๋ ๋ฌธ์ (NAT-T๋ก ํด๊ฒฐ)
- FTP Active ๋ชจ๋ ์คํจ (ALG๋ก ํด๊ฒฐ)
ARP (Address Resolution Protocol) ๋์:
1. Host A: "192.168.1.1์ MAC ์ฃผ์๊ฐ ๋ญ์ง?" (Broadcast)
2. Gateway: "192.168.1.1์ 00:11:22:33:44:55์
๋๋ค" (Unicast)
3. Host A: ARP Cache์ ์ ์ฅ
ARP Cache Table:
$ arp -a
192.168.1.1 00:11:22:33:44:55 dynamic
192.168.1.10 aa:bb:cc:dd:ee:ff dynamic
ARP Spoofing ๊ณต๊ฒฉ (์ค๊ฐ์ ๊ณต๊ฒฉ):
Normal:
Client โ โ Gateway โ โ Internet
Attack:
Client โ โ Attacker โ โ Gateway โ โ Internet
(ํธ๋ํฝ ๊ฐ๋ก์ฑ๊ธฐ)
๊ณต๊ฒฉ์๊ฐ ์์กฐ๋ ARP Reply ์ ์ก:
"192.168.1.1(Gateway)์ MAC์ [Attacker MAC]์
๋๋ค"
โ Client์ ARP Cache ์ค์ผ
โ ๋ชจ๋ ํธ๋ํฝ์ด ๊ณต๊ฒฉ์๋ฅผ ๊ฒฝ์
๋ฐฉ์ด ๋ฐฉ๋ฒ:
1. Static ARP Entry:
# Linux
arp -s 192.168.1.1 00:11:22:33:44:55
# Windows
arp -s 192.168.1.1 00-11-22-33-44-55- ์ฅ์ : ARP Spoofing ์์ ์ฐจ๋จ
- ๋จ์ : ์๋ ๊ด๋ฆฌ ํ์, MAC ๋ณ๊ฒฝ ์ ์ ๋ฐ์ดํธ
2. DAI (Dynamic ARP Inspection):
Switch์์ ARP ํจํท ๊ฒ์ฆ:
- DHCP Snooping Database์ ๋น๊ต
- ์ ํจํ ARP๋ง ์ ๋ฌ
- ์ ๋ขฐํ ์ ์๋ ํฌํธ๋ ๊ฒ์ฆ ์๋ต
3. ARP ๋ชจ๋ํฐ๋ง ๋๊ตฌ:
# arpwatch (Linux)
arpwatch -i eth0
โ ARP ๋ณ๊ฒฝ ๊ฐ์ง ์ ์๋ฆผ
# XArp (Windows)
โ GUI ๊ธฐ๋ฐ ARP ๋ชจ๋ํฐ๋ง4. ๋คํธ์ํฌ ์ธ๊ทธ๋ฉํ ์ด์ :
VLAN์ผ๋ก ๋ธ๋ก๋์บ์คํธ ๋๋ฉ์ธ ๋ถ๋ฆฌ
โ ARP Spoofing ์ํฅ ๋ฒ์ ์ถ์
5. Port Security (MAC ์ฃผ์ ์ ํ):
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security mac-address sticky
6. IPsec/VPN:
- ์ํธํ๋ก ARP Spoofing ๋ฌด๋ ฅํ
- ๊ณต๊ฒฉ์๊ฐ ํธ๋ํฝ์ ๊ฐ๋ก์ฑ๋ ๋ณตํธํ ๋ถ๊ฐ
๊ธฐ์กด Hub & Spoke (VPN):
โโโโโโโโโโโ
โ Hub DC โ (Central VPN Gateway)
โโโโโโฌโโโโโ
โโโโโโโโผโโโโโโโ
โ โ โ
โโโโผโโโโโโโผโโโโโโโผโโโ
โSpokeโโSpokeโโSpokeโ
โ 1 โโ 2 โโ 3 โ
โโโโโโโโโโโโโโโโโโโโโ
์ฅ์ :
- ์ค์ ์ง์ค์ ๋ณด์ ์ ์ฑ
- ๊ด๋ฆฌ ๋จ์ํ
๋จ์ :
- Hub ์ฅ์ ์ ์ ์ฒด ํต์ ๋ถ๊ฐ (SPOF)
- Hub ๋ณ๋ชฉ ํ์
- Spoke ๊ฐ ํต์ ์ Hub ๊ฒฝ์ (2๋ฐฐ ํ)
AWS Transit Gateway ์ํคํ ์ฒ:
โโโโโโโโโโโโโโโโโโโ
โ Transit Gateway โ (Managed Service)
โโโโโโโโโโฌโโโโโโโโโ
โโโโโโโโโโโโโผโโโโโโโโโโโโ
โ โ โ
โโโโผโโโ โโโโผโโโ โโโโผโโโ
โ VPC โ โ VPC โ โ VPC โ
โ A โ โ B โ โ C โ
โโโโโโโ โโโโโโโ โโโโโโโ
โ โ โ
โโโโผโโโ โโโโผโโโ โโโโผโโโ
โ DX โ โ VPN โ โ VPC โ
โโโโโโโ โโโโโโโ โ D โ
โโโโโโโ
Transit Gateway ์ฅ์ :
1. ๊ณ ๊ฐ์ฉ์ฑ:
- Multi-AZ ์๋ ๋ฐฐํฌ
- ๋ฆฌ์ ๋ด 99.95% SLA
2. ํ์ฅ์ฑ:
- VPC๋น ์ต๋ 5,000๊ฐ ์ฐ๊ฒฐ
- 50 Gbps ์ฒ๋ฆฌ๋
3. ๋ผ์ฐํ ํ ์ด๋ธ ๋ถ๋ฆฌ:
Route Table 1 (Production):
VPC-Prod-A โ VPC-Prod-B
Route Table 2 (Development):
VPC-Dev-A โ VPC-Dev-B
โ Isolation between environments
4. Transit Gateway Peering:
Region A TGW โ โ Region B TGW
โ Cross-Region VPC ํต์
5. Centralized Egress:
All VPCs โ Transit Gateway โ Egress VPC (NAT Gateway, Firewall)
โ ์ค์ ์ง์ค์ ์ธํฐ๋ท ์ถ๊ตฌ
๋น์ฉ ๋น๊ต:
Hub & Spoke (VPN):
- VPN ์ฐ๊ฒฐ๋น $0.05/hour * N๊ฐ
- ๋ฐ์ดํฐ ์ ์ก ๋น์ฉ
Transit Gateway:
- Attachment๋น $0.05/hour * N๊ฐ
- ๋ฐ์ดํฐ ์ฒ๋ฆฌ $0.02/GB
โ 10๊ฐ ์ด์ VPC ์ฐ๊ฒฐ ์ Transit Gateway๊ฐ ๊ฒฝ์ ์
๋ง์ด๊ทธ๋ ์ด์ ์ ๋ต:
1. Transit Gateway ์์ฑ
2. VPC Attachment ์ถ๊ฐ (๊ธฐ์กด VPN ์ ์ง)
3. ๋ผ์ฐํ
ํ
์ด๋ธ ์ ์ง์ ์ ํ
4. ๊ฒ์ฆ ํ ๊ธฐ์กด VPN ์ ๊ฑฐ
๐ก ์ฉ์ด ์ค๋ช :
- OSI 7๊ณ์ธต ๋ฐ ๋ผ์ฐํ ๊ด๋ จ ์ง๋ฌธ๋ค(Q6-Q12)์์ ์ฌ์ฉ๋ ์ฉ์ด๋ค(TCP Handshake, BGP AS-PATH, OSPF LSA, NAT/PAT, ARP Spoofing, Transit Gateway ๋ฑ)์ ๋ํ
- ์์ธํ ์ค๋ช ์ ๋ฌธ์ ์๋จ์ ์ฃผ์ ์ฉ์ด ํตํฉ ์ ๋ฆฌ > OSI 7๊ณ์ธต & TCP/IP 4๊ณ์ธต ๋ฐ ๋ผ์ฐํ & ๋คํธ์ํฌ ์ํคํ ์ฒ ์น์ ์ ์ฐธ๊ณ ํ์ธ์.