1. Basic Concept
1) Protocol ์ด๋?
์ ํํ 3๊ฐ์ง๋ฅผ ๊ธฐ์ตํ๋ฉด ๋๋ค.
โข
Format
โข
Order
โข
Action
๋ง์ ๋ธ๋ก๊ทธ์์๋ Protocol์ด๋ Sender, Receiver์ ์ํธ ๊ฐ์ ๊ท์ฝ (ํต์ ์ ํจ์จ์ ์ผ๋ก ํน์ ํน์ ๋ชฉ์ ์ ๋ฌ์ฑํ๊ธฐ ์ํ) ์ด๋ผ๊ณ ๋ช
์๋ฅผ ํด๋๋ค. ๊ทธ๋ ๋ค๋ฉด ๊ทธ ๊ท์ฝ์ด ๋ฌด์์ ์ ์ํ๊ณ ์๋์ง๊ฐ ์ค์ํ ํ
๋ฐ, ๊ทธ๊ฒ์ด ์์ 3๊ฐ์ง ํค์๋์ด๋ค.
โข
ํต์ ์ ์์ด์ ๋ฉ์ธ์ง์ ํ์์ด ์ด๋ ํ์ง
โข
๋คํธ์ํฌ ๊ฐ์ฒด ๊ฐ์ ํด๋น ๋ฉ์ธ์ง๋ฅผ ์ด๋ค ์์๋ก ๋ฐ์ ๊ฒ์ธ์ง
โข
์์ ์ด ํด๋น ๋ฉ์ธ์ง๋ฅผ ๋ฐ๊ฑฐ๋ ์ ๋ฌํ์ ๋ ์ด๋ค ํ๋์ ์ํํ ๊ฒ์ธ์ง
๋ฅผ ๋ช
์ํ ๊ฒ์ด Protocol์ด๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก,
1.
๋ฉ์ธ์ง์ ๋ํด์๋ ์ ํํ ํ์์ ์งํค์ง ์์ผ๋ฉด ํด์ ์์ฒด๊ฐ ๋ถ๊ฐ๋ฅํ๋ฉฐ
2.
๋ฉ์ธ์ง์ ํ์์ด ์ฌ๋ฐ๋ฅด๋๋ผ๋ ์ฃผ์ด์ง ์์๋ฅผ ์งํค์ง ์์ผ๋ฉด Protocol์ ๋ํ ํ๋ ์ํ์ด ๋ถ๊ฐ๋ฅํ๊ณ
3.
๋ฉ์ธ์ง ํ๋์ด ๋ช
ํํ์ง ์์ผ๋ฉด ํ์๊ณผ ์์๋ฅผ ์ง์ผ๋ ์ด๋ค ํ๋์ ํ ์ง ์ ์ ์๊ฒ ๋์ด ๋ฌด์ฉ์ง๋ฌผ์ด ๋๋ค๋ ๊ฒ์ด๋ค.
2) Protocol Layering ์ด๋?
ํน์ Protocol๋ก ์ฌ์ฉ์์ ํต์ ์ ํ๋ ๊ณผ์ ์์ ๋ฉ์ธ์ง์ Delivery๊ฐ ๋ฐ์ํ๋ค๊ณ ํ๋ฉด, Delivery์ธ์ ์ก๋คํ ์ผ์ ํ ์ฅ์น์์ ๋ชจ๋ ์ํํ์ง ์๋๋ค. ์ด ๋ Protocol์ด ์ํํ๋ ํน์ ํ์ ์ธ์ ๋ชจ๋ ๊ฒ๋ค์ ํ์ ๊ณ์ธต์ Protocol์๊ฒ ๋งก๊ธด๋ค.
๊ตฌ์กฐ๋ฅผ ์ดํด๋ณด๋ฉด, ํ์ ๊ณ์ธต์ Protocol ๋ค์ ํ์ ๊ณ์ธต์ Protocol์๊ฒ ์์ํ๋ Recursive Relationship์ด ๋ฐ์ํ๋๋ฐ, ์ด ๋์ ๋
ผ๋ฆฌ ๊ตฌ์กฐ๋ฅผ Protocol Stack์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. (์ธต์ธต์ด ๋๋ค๋ Layering์ ์๋ฏธ์ ๋์ผ)
Layering์ด ํ์ํ ์ด์ ์ ๋ํด์ Single Layer ๊ตฌ์กฐ์ Triple Layer ๊ตฌ์กฐ๋ฅผ ํตํด ์ดํด๋ณด์.
Single Layer Protocol (๋๋ฉด์ ๊ฒฝ์ฐ)
์ด ๋์ ์๊ตฌ ์กฐ๊ฑด์ ์๋ก๊ฐ ๋ง๋ฌ์ ๋ ์ธ์ฌ๋ฅผ ํด์ผํ๋ฉฐ, ์๋ก์ ๊ด๊ณ์ ๋ฐ๋ฅธ ํ ๋ง์ ๊ณจ๋ผ์ผํ๋ฉฐ, ์๋๊ฐ ๋งํ ๋๋ ์นจ๋ฌต์ ํด์ผ ํ๊ณ , ์๋ก๊ฐ ํค์ด์ง ๋๋ ์๊ฐ๋ผ๋ ์ธ์ฌ๋ฅผ ํด์ค์ผ ํ๋ค.
Triple Layer Protocol (๋น๋๋ฉด์ ๊ฒฝ์ฐ)
์ด ๋์ ์๊ตฌ ์กฐ๊ฑด์ ๋ง๋์ง ์์๋ (์ก์ฒด์ ์ผ๋ก ๋ฉ์ด๋) ์ํต์ด ๊ฐ๋ฅํ๊ณ , ์๋ก๊ฐ ํ๊ณ ์ถ์ ๋ง์ด ์๋ค๋ฉด ๋์์ ์ํต์ ํด๋ ๋๋ฉฐ, ์ํธํ ๋์ ๋ ์ธ์ ๋ค๋ฅธ ์ฌ๋๋ค์ ์ํต์ ์ฐธ์ฌ๋ฅผ ํ ์๊ฐ ์์ผ๋ฉฐ, ๋ด๊ฐ ์ฐ๊ณ ์ถ์ ๋ง์ ์ฐ๊ธฐ๋ง ํ๋ฉด ์ง์ ์ ๋ฌํ์ง ์์๋ ์ ๋ฌ์ด ๋ณด์ฅ๋๋ค.
์ฆ, Layering์ ํ๊ฒ ๋๋ฉด ํ ์ธต์์ Protocol์ด ์ํํด์ผํ๋ ํ๋ ๋ฒ์๊ฐ ๋ง์ด ์ค์ด๋ค๋ฉด์ ๊ฐ์ ์์ ์ ์๋ฌด๋ง ๋ช
ํํ ์ํํ๊ฒ ๋ ์ ์๋ ์ฅ์ ์ด ์๊ธด๋ค. ๋ฐ๋ผ์ Protocol Layering์ด๋ผ๋ ๊ฒ์ ๋ณต์กํ ์
๋ฌด๋ฅผ ์์ ์ผ์ ๋จ์๋ก ๋๋์ด ๊ฐ๋จํ ์
๋ฌด๋ฅผ ๋ถ๋ดํ๊ฒ ํ๋ ๊ฒ์ผ๋ก ๋ณผ ์ ์๋ค.
๋น๋ก ๊ฐ๋จํ ์
๋ฌด๊ฐ ๋ณต์กํด์ง ์๋ ์๋๋ผ๋ Protocol Layering์ ํ์ ๋ ๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ ํจ๊ณผ๋ฅผ ์ป์ ์ ์๋ค.
โข
Protoco ๊ฐ์ ์ํธ ๋
๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ฑ๋ง ๋ ์ ์๋ค. (๊ฐ Protocol์ ๋
๋ฆฝ์ ์ธ ์์ ์ด ๊ฐ๋ฅ)
โข
๊ฐ Protocol์ ๋ด๋ถ๋ฅผ ์ผ์ข
์ ๋ธ๋๋ฐ์ค๋ผ๊ณ ์ฌ๊ธธ ์ ์๋ค. (๋ด๋ถ ๋์ ์๋ฆฌ์ ๋ํด์ ์ ํ ์ง์์ด ์๋๋ผ๋ Input์ ๋ฃ์์ ๋ Output์ ๋ณผ ์ ์๋ค.)
Protocol Layering์ ์์น
1.
Bidirectional (์๋ฐฉํฅ์ฑ)
ํต์ ์ ํด์ผํ๋ ๊ฒฝ์ฐ์ ๊ฐ Layer๋ ์ก์ ๊ณผ ์์ ๋ ๊ฐ์ง์ ๋ํด์ ์ํํ ์ ์์ด์ผ ํ๋ค. (Sender, Receiver๋ฅผ ์ํํ ์ ์์ด์ผ ํ๋ค๋ ๊ฒ)
2.
๋ ๊ฐ์ฒด ์๋์ Layer๋ค์ ๋์ผํ๊ฒ ์์ฌ ์์ด์ผ ํ๋ค.
3) OSI 7 Layer (Open System Interconnection)
OSI 7 ๊ณ์ธต์ ๋งค์ฐ ์ ์ ์ (Well-Defined)๋ ๊ฐ๋
์ ๊ตฌ์กฐ๋ผ๊ณ ๋ณด๋ฉด ๋๋ค. ๊ฐ Protocol์ ๋ณดํธ์ ์ธ ์ญํ ์ ์ค๋ช
ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. OSI 7 ๊ณ์ธต๋ ISO (International Organization for Standardization)์์ ๋ง๋ค์์ผ๋ฉฐ, ์ด๋ฆ ๊ทธ๋๋ก 7๊ฐ์ ๊ณ์ธต์ ์ด๋ฃฌ๋ค. ๊ฐ ๊ณ์ธต๋ณ ์ญํ ์ ๋ค์๊ณผ ๊ฐ๋ค.
๊ฐํน ํธ์๋ฅผ ์ํด ์๋ ๊ณ์ธต๋ค์ 4๊ฐ์ Layer๋ก ๋ณด๊ธฐ๋ ํ๋๋ฐ, 1๊ณ์ธต๊ณผ 2๊ณ์ธต์ ๋ฌถ์ Link Layer, Network Layer, Transport Layer, 5๊ณ์ธต๊ณผ 6๊ณ์ธต ๊ทธ๋ฆฌ๊ณ 7๊ณ์ธต์ ๋ฌถ์ Application Layer๋ก ํํํ๊ธฐ๋ ํ๋ค.
[1]Physical (Physical Communication / LAN or NIC Hardware)
๋งค์ฑ๋ฅผ ํตํด ๋นํธ ๋ฐ์ดํฐ๋ฅผ Stream์ ํํ๋ก ์ ์กํ๊ณ ๋ฐ๋ ์ญํ ์ ์ํํ์ฌ ๊ธฐ๊ณ์ ์ ๊ธฐ์ ์ธ ํน์ฑ์ ์ ๊ณตํ๋ Layer์ด๋ค.
Data Link Layer๋ก๋ถํฐ ๋ฐ์ Frame์ ์ค์ ๋นํธ๋ก ํด์ํ ์ ์๋๋ก ๋นํธ ์คํธ๋ฆผ์ผ๋ก ๋ง๋ค์ด์ ์ญํ ์ ์ํํ๋ค.
์ญํ ์ ์ํํ ๋๋ ๋นํธ๋ฅผ Electrical Signal, Light Signal, Radio Signal ๋ฑ์ผ๋ก ์ฒ๋ฆฌ๋ฅผ ํ๋ค. ์ด ๋ ์ฒ๋ฆฌ์ ๋จ์๊ฐ ๋นํธ๊ฐ ์๋ Signal์ธ ์ด์ ๋ ์ฌ๋ฌ ๋นํธ๋ฅผ ํ Signal์ ๋ฃ์ด์ ์ด์ฉํ๊ณ ์ด๋ฅผ ํตํด ์ฒ๋ฆฌ ํ์๋ฅผ ์ค์ผ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
Signal, ์๊ทธ๋์ด๋?
Signal์ ๋ง๊ทธ๋๋ก ์ ๊ธฐ ์ ํธ, ์ฆ, ์๊ฐ์ ๋ฐ๋ผ ์ ๊ธฐ์ ํ๋ฆ์ ํ๊ธฐํ๋ ๊ฒ์ด๋ค.
๊ณผํ ์๊ฐ์ ์ ๊ธฐ๊ฐ ํตํ ๋๋ 1, ์ํตํ ๋๋ 0์ผ๋ก ํํํ๋ ์๊ฐ ๊ทธ๋ํ๋ฅผ ๋ณธ ์ ์ด ํ๋ฒ์ฉ ์์ ๊ฒ์ด๋ค. ํน์ AC, DC ๊ทธ๋ํ ๋ฐ ๋ฌผ๊ฒฐ๋ชจ์์ผ๋ก ์๊ธด ํ์ฅ ๊ทธ๋ํ๋ค๋ ์ด๋ฌํ Signal์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
Physical Layer์์๋ ๋นํธ๋ค์ ์ด๋ฌํ Signal์ ๋ฃ์ด์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํต์ ์ ์งํํ๋ค!
[2]Data Link (Hop to Hop / NIC Driver)
๋นํธ ๋ฐ์ดํฐ ํน์ Packet์ Frameํ ํ์ฌ ๊ธฐ๊ธฐ ๊ฐ Hop-to-Hop ์ ๋ฌํ๋ ์ญํ ์ ํ๋ Layer์ด๋ค.
Packet, ํจํท์ด๋?
์ปดํจํฐ์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ ํด๋ ๋ฐ์ดํฐ ํ์์ด๋ค.
Pack๊ณผ Bucket์ ํฉ์น ๋ง์ด๋ค. ์ฐ์ฒด๊ตญ์์ ํฐ ํ๋ฌผ์ ์ ๋นํ ํฌ๊ธฐ๋ก ๋๋์ด ํ์ ์ง ๋ฑ ์ ๋ณด๋ฅผ ํ์ํ๋ ์ด์ก์ฅ์ ๋ถ์ด๋๋ฐ, ์ด๋ฌํ ๋ฐฉ์์ ํต์ ์๋ ์ ๋ชฉ์ํจ ๊ฒ์ด๋ค.
์ฆ, ์ ๋ณด๋ฅผ ๋ณด๋ผ ๋ ํน์ ํ ํํ์ ๋ง์ถ์ด ๋ณด๋ธ๋ค๋ ๊ฒ์ด๋ค. ์ปดํจํฐ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋, ๋คํธ์ํฌ๋ฅผ ํตํด์ ์ ์ก๋๋ ๋ฐ์ดํฐ ์กฐ๊ฐ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ํธํ๋ค!
Hop-to-Hop์ผ๋ก ์ ๋ฌํ๋ค๋ ์๋ฏธ๋ ์๋ก ์ํ ๋คํธ์ํฌ๊ฐ ๊ฐ์ผ๋ฉด์ ์ธ์ ํ ๊ธฐ๊ธฐ (Adjacent Node)์๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค๋ ๊ฒ์ด๋ค. ์ด ๋ ๊ธฐ๊ธฐ๊ฐ ๊ฐ์ง ์ค์ ์ฃผ์(MAC ์ฃผ์)๋ฅผ ์ด์ฉํ๋ค.
MAC Address, ๋งฅ ์ฃผ์๋?
Media Access Control์ ์ฝ์๋ก ๊ฐ ๊ธฐ๊ธฐ์ ๋คํธ์ํฌ ์นด๋(ํ๋์จ์ด)์ ๋ถ์ฌ๋ ๊ณ ์ ํ ๋ฌผ๋ฆฌ์ ์ฃผ์์ด๋ค! ์ฆ, ๋ชจ๋ ๋คํธ์ํฌ ์ฅ๋น๋ ์์ ๋ง์ ๊ณ ์ ํ MAC ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์๋ค. 48๋นํธ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ 16์ง์๋ก ํ์๋๋ค
์๋์ฐ์์๋ ํฐ๋ฏธ๋ โ ipconfig ๋ช
๋ น์ด
Mac์์๋ ํฐ๋ฏธ๋ โ ifconfig ๋ช
๋ น์ด
๋ก ํ์ธํ ์ ์๋ค.
Data Link Layer๋ Network Layer์ ์ธํฐํ์ด์ค๋ก ์์ฉ๋๋ค. (์ฆ, ์ฑ๊ณต์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ธฐ ์ํด์ Network Layer๋ ๋ชฉ์ ์ง์ ๋ํ ๋ช
ํํ Data Link Layer์ ์ฃผ์๋ฅผ ๋ช
์ํ ์ ์์ด์ผ ํ๋ค๋ ๊ฒ์ด๋ค.)
๋ํ Hop-to-Hop์ผ๋ก ์ธ์ ํ ๊ธฐ๊ธฐ์ ์ ์ก๋ ๋ฐ์ดํฐ๋ค์ Error๊ฐ ์๋๋ก ์ ๋ฌ๋๋ค. ์ฆ, ์์ ์ธก ๊ธฐ๊ธฐ์์๋ ์ด๋ฏธ ์ฌ๋ฐ๋ฅธ ๋ฐ์ดํฐ๋ค์ ๋ฌด์กฐ๊ฑด ๋ฐ๊ฒ๋์ด ์๋ค๋ ๊ฒ์ด๋ค. ์ด ๋์ ์์ ์ธก์์๋ ์์ ํ ๋ฐ์ดํฐ๋ฅผ ์์ Layer๋ก ์ฌ๋ฆด ๋ Error Free๋ฅผ ๊ฐ์ ํ ์ ์๋ค.
(์ด๋ฏธ ์ฌ๋ฐ๋ฅธ ๋ฐ์ดํฐ๋ค์ ๋ฐ์ ๋์ ์ํ์ด๋ฏ๋ก Error Detection๋ง ๊ฐ๋ฅํ๋ค๋ฉด Error Correction์ ์ฌ์ง๊ฐ ์ถฉ๋ถํ๋ฏ๋ก Error Free๋ผ๊ณ ํ ์ ์๋ค.)
Transport Layer์ ๊ฐ์ด Flow Control, Error Detection, Error Correction์ด ๊ฐ๋ฅํ๋ค. ํ์ง๋ง ์ด๋ Transport Layer์ ๊ฒ๊ณผ๋ ์กฐ๊ธ์ ๋ค๋ฅด๋ค. Tranposrt Layer๋ ์ธํฐ๋ท ์์์ Logical Connection ์ํ์์์ Layer ๊ฐ ์ ๋ฌ์์ ์ผ์ด๋๋ ๊ฒ์ด๊ณ , Data Link Layer์์๋ ๋คํธ์ํฌ ๋ด์ ๊ธฐ๊ธฐ๊ฐ ์ ๋ฌ์์ ์ผ์ด๋๋ ๊ฒ์ด๋ค.
[3]Network (Host to Host / Kernel Space of OS)
์ํธ ๊ฐ์ ๋คํธ์ํน์ ์ํด Packet์ ํํ๋ก Source์์ Destination์ผ๋ก ์ด์กํ๋ ์ญํ ์ ์ํํ๋ Layer์ด๋ค.
๋จ์ํ Destination๊น์ง์ ์ด์ก ์ญํ ๋ง ์ํํ๋ ๊ฒ์ด ์๋๋ผ ์ ํํ ๋ฐ์ง์๋ฉด, Network Layer๋ Routing๊ณผ ๊ด๋ จ์ด ์๋ค.
Routing, ๋ผ์ฐํ
์ด๋?
์ํธ ์์ฉ์ด ๊ฐ๋ฅํ ๋คํธ์ํฌ๋ค์ ๊ตฌ์ฑํ๊ธฐ ์ํด ๋
๋ฆฝ์ ์ผ๋ก ์ด์๋๋ ๋คํธ์ํฌ๋ฅผ ๋ฌถ๊ฒ ๋๋ฉด, Source์์ Destination๊น์ง ๋๋ฌํ๊ธฐ ์ํ ์ฌ๋ฌ ๊ฒฝ๋ก(Multiple Routes)๋ค์ด ์๊ธด๋ค. ์ด ๋, Source์์ Destination๊น์ง ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋๋ฐ ์์ด์ ๊ฐ์ฅ ์ข์ ๊ฒฝ๋ก๋ฅผ ๊ฒฐ์ ํ๊ฒ ๋๋ค. ์ด๋ ๊ฒ ์ฐพ์๋ด๋ ๊ธฐ๋ฅ ์์ฒด๋ฅผ Routing์ด๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
Internetworking ์ด๋?
์์์ ์ธ๊ธ๋ Internetworking์ด๋ ์ผ์ข
์ ์ธํฐํ์ด์ค๊ฐ์ Packet ์ก์์ ์ ๋งํ๋ค. ์ฆ, Endpoint ๊ฐ์ Packet ์ก์์ ์ด ์๋๋๋ผ๋ ๋ค๋ฅธ ๋คํธ์ํฌ์ Gateway ํน์ Router ๊ฐ์ Packet ์ก์์ ๋ ์ด์ ํด๋นํ๋ค.
๊ฐ๋จํ๊ฒ ์ต์ข
Destination๊น์ง์ ํต์ ๋ฟ๋ง ์๋๋ผ ์ค๊ฐ ๊ฐ์ฒด๋ค ๊น์ง์ ์ก์์ ๋ ํฌํจํ๋ ๊ฒ์ด๋ค!
IP์ ํด๋นํ๋ ๊ฒ๋ค์ด Network Layer์ ํด๋นํ๋๋ฐ, ์ด ๋ IP๋ Connectionless์ด๋ฉฐ ๋จ์ํ Destination์ ์ฐพ์๊ฐ๊ธฐ ์ํ ์ฉ๋์ Internetworking ์๋น์ค๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
IP๋ ๊ธฐ๋ณธ์ ์ผ๋ก End-to-End์ Reliable Delivery๋ฅผ ๋ณด์ฅํด์ฃผ์ง ์๋๋ค. ๊ทธ๋ ๋ค๊ณ ์ต์ ์ ๋คํ์ง ์๋ ๊ฒ์ ์๋๋ฐ, ์ด๋ฅผ Best Effort Delivery๋ผ๊ณ ํ๋ค.
Network Layer์์ ์ฌ์ฉํ๋ ์ฃผ์๋ IP ์ฃผ์๋ก ์ผ์ข
์ Logical Address์ด๋ค. (๋ง ๊ทธ๋๋ก ๊ธฐ๊ธฐ์ ๋ํ ์ค์ง์ ์ธ ์ฃผ์๋ ์๋๋ค.) Public IP์ ๊ฐ์ด ์ฌ์ฉ๋๋ IP ์ฃผ์๋ ์ฌ์ฉ์์ ๋ํด์ Uniquely, Universally Distinguishableํ๊ฒ ํด์ค๋ค.
[4]Transport (Process to Process / Kernel Space of OS)
์ ๋ขฐ์ฑ ๋ณด์ฅ ๋ฑ์ ์ํด ์ ํด์ง ์์๋๋ก ๋ฉ์ธ์ง๋ฅผ ๊ตฌ์ฑํ์ฌ ๋๊ฒจ์ฃผ์ด Error Detection ํน์ Error Correction๋ฑ์ ์ํํ ์ ์๋ Layer์ด๋ค.
Transport Layer์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ Unreliable Data Delivery์ด๋ค. (์ ๋ขฐ์ฑ์ ๋ณด์ฅํด์ฃผ์ง ์์์ฑ๋ก ์ ๋ฌํ๋ ๊ฒ์ด ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ด๋ค.) ์ฆ, Connection-Oriented Protocol (TCP, SCTP, RTP ๋ฑ)๊ณผ Connectionless Protocol (UDP) ์ค์์ ํ์๊ฐ Transport Layer์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ์ํํ๋ Protocol์ด๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
๋ค์์ Connectionless Protocol๊ณผ ๋ฌ๋ฆฌ Connection-Oriented Protocol์ ์ฃผ๋ 5๊ฐ์ง ๊ธฐ๋ฅ์ด๋ค.
โข
Connection Management (TCP์ ๊ฒฝ์ฐ 3 Hand-Shaking)
โข
Connection Multiplexing (Port๋ฅผ ์ด์ฉํ)
โข
Segmentation (SCTP์ Chuck)
โข
Reliable Delivery
โข
Flow Control(์์ ์ธก์์ ์ํ), Congestion Control (์ก์ ์ธก์์ ์ํ)
[5]Session (Peer to Peer / User Space of OS)
Session ๋ํ ์์ฑ, ๊ด๋ฆฌ, ์ข
๋ฃ๋ฅผ ๋ด๋นํ๋ Layer์ด๋ค.
Session์ด๋?
Session์ด๋ผ ํจ์ ์ธ๊ฐ์ด ์ผํ๋ ๋จ์๋ฅผ ๋งํ๋ค. Session์ Connection์ ๋ด๊ณ ์๊ธฐ ๋๋ฌธ์, ์ ๋ฐ์ ์ธ Connection์ ๊ด๋ฆฌํ๋ค.
Endpoint๋ฅผ ์ฌ์ฉํ๋ ์ฌ์ฉ์ ๊ฐ์ Application Process๋ค ์ฌ์ด์ Session์ ์ด๊ณ ๋ซ๊ณ ๊ด๋ฆฌํ๋ ๋ฉ์ปค๋์ฆ์ ์ํํ๋ค. ๋ฐ๋ผ์ ๋ Host ์ฌ์ด์ ์ฒซ Connection์ ์ด๊ธฐ๋ ํ๊ณ , ์ด๋ ๊ฒ ์ด๋ฆฐ Session์ ํตํด์ ์ ํด์ง ์๊ฐ๋์ ๋ฐ์ดํฐ ์ก์ ๊ณผ ์์ ์ ๊ฐ๋ฅํ๊ฒ ํด์ค๋ค.
์๋ฅผ ๋ค๋ฉด, VoIP(Voice over IP)์์ ์ฌ์ฉ๋๋ SIP (Session Initiate Protocol)๊ฐ ์ด์ ํด๋นํ๋ค.
์ด๋ฌํ Session Layer๊ฐ ์ค์ํ ์ด์ ๋, Endpoint๊ฐ ๋ฉ์ธ์ง ์ก์ ์์ ์ ์งํํ๋ฉด์ Dialog Control (Endpoint์ Token์ ์ด์ฉํ์ฌ ๋๊ฐ ์ ์กํ ์ฐจ๋ก์ธ์ง์ ๋ํ ์์ ์กฐ์ ๋ฐ ๊ด๋ฆฌ)๊ณผ Synchronization (Stream์ผ๋ก ๋ค์ด์ค๋ ๋ฐ์ดํฐ์ ๋ํด์ ๋๊ธฐํ ์ง์ ์ ๊ธฐ๋ก)์ด ๊ฐ๋ฅํ๋๋ก ๋ง๋ค์ด์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค.
Session Layer์๋ ์ฌ๋ฌ ๊ฒฝ์ฐ๋ค์ด ์๋๋ฐ.
One to Many์ ๊ฒฝ์ฐ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
[6]Presentation (Peer to Peer / User Space of OS)
๋ฐ์ดํฐ์ ๋ํ Translate, Encrypt (Decrypt), Compress (Decompress) ๋ฑ์ ์ํํ๋ Layer์ด๋ค. (์ฐธ๊ณ ๋ก ๋คํธ์ํฌ์์๋ Big Endian์ ์ฌ์ฉํ๋ค.)
๋ฐ์ดํฐ๋ฅผ Network Format์์ Application Format์ผ๋ก ๋ฐ๊พธ๊ฑฐ๋, Application Format์์ Network Format์ผ๋ก ๋ฐ๊พธ๋ ์ญํ ์ ํ๋ค.
์๋ฅผ ๋ค์ด์ ์ก์ ์์ Encoding, Compressing์ ์์
ํ๋ค๋ฉด, ์์ ์ธก์์๋ Decoding, Decompressing ์์
์ ์ํํ๋ค.
[7]Application (Peer to Peer / User Space of OS)
๋คํธ์ํฌ ์์์ ์ ๊ทผํ ์ ์๋๋ก ํด์ฃผ๋ Layer์ด๋ค. ๋คํธ์ํฌ ์์์ ์ ๊ทผํ ์ ์๊ธฐ ๋๋ฌธ์, ์ก์ ๊ณผ ์์ ์ ์ํ ๋ฐ์ดํฐ๋ฅผ ๋คํธ์ํฌ์ ์ ๊ณตํ๋ ์ญํ ์ ์ํํ๋ค.
7๊ฐ์ Layer ์ค์์ ๊ฐ์ฅ ์์ ์๋ Layer๋ก์จ, ์ฌ์ฉ์์ ์ง์ ์ํธ์์ฉ์ ํ๋ฉฐ ๋์ํ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์์๊ฒ ๋ณด์ด๋ ๋ถ๋ถ์ด๋ค.
์๋ฅผ ๋ค๋ฉด Internet Explorer ํน์ Google Chrome๊ณผ ๊ฐ์ Browser๊ฐ ์์ ์ ์๊ณ , Gmail๊ณผ ๊ฐ์ Email Client๊ฐ ์๋ค.
์ก, ์์ ์์ ์ก์ ์ธก์์๋ 7 ~ 1 ๊ณ์ธต์ ๊ฑฐ์ณ ์์ ์ธก์ 1 ~ 7 ๊ณ์ธต์ ์ง๋์ ๋ฉ์ธ์ง๊ฐ ์ ๋ฌ๋๋ค. ์ด ๋์ ์ฃผ๊ณ ๋ฐ๋ ๋ฉ์ธ์ง์ ๋ฐ์ดํฐ ํ์์ ์๋์ ๊ฐ๋ค.
OSI 7 Layer ์ด์ฉ์ ์ฅ์
1.
ํ ๊ณ์ธต์์์ ์์ ์ด ๋ค๋ฅธ ๊ณ์ธต์ ๋ํ ์์ ์ ์ผ๊ธฐํ๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์๋ค.
2.
์ฐ์
์ ์ผ๋ก ํ์คํ๋ฅผ ์ด๋์ด ๋ผ ์ ์๋ค.
3.
๋คํธ์ํฌ ํต์ ๊ณผ์ ์ ์ฌ๋ฌ ์์ ์์๋ก ์ชผ๊ฐฌ์ผ๋ก์จ ๊ฐ๋ฐ, ๋์์ธ, ๋ฌธ์ ํด๊ฒฐ ๋ฑ์ ์ฉ์ดํ๊ฒ ํ๋ค.
4.
๋คํธ์ํฌ ๊ตฌ์ฑ ์์์ ํ์คํ๋ฅผ ํตํด ๋คํธ์ํฌ์ ๋ํ ์ฌ๋ฌ ๊ณต๊ธ ์
์ฒด๋ฅผ ๊ฐ๋ฐํ ์ ์๋ค.
5.
๋คํธ์ํฌ ๊ด๋ฆฌ์์๊ฒ ๋คํธ์ํฌ ๊ด๋ฆฌ๋ฅผ ์ฉ์ดํ๊ฒ ํ ์ ์๋ค. (๋ฌธ์ ๊ฐ ์๊ฒผ์ ๋ ์ ์ฒด๋ฅผ ํ์ํ๋ ๊ฒ์ด ์๋๋ผ ํด๋น Layer๋ง ์ฐพ์๋ณด๋ ์์ผ๋ก ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ๋์ฒ๋ฅผ ํ ์ ์๋ค.)
4) Internet Architecture์ ๋ชฉํ
์ฃผ ๋ชฉํ๋ ์กด์ฌํ๋ ์๋ก ์ฐ๊ฒฐ๋ ๋คํธ์ํฌ๋ค์ Multiplexed Utilization (๋ค์ค ํ์ฉ)์ ์ํด ํจ์จ์ ์ธ ๊ธฐ๋ฒ์ ๋ง๋ค์ด ๋ด๊ณ ์ ํ๋ ๊ฒ์ด๋ค.
๋ถ๊ฐ์ ์ธ ๋ชฉํ๋ก๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒ๋ค์ด ์๋ค.
1.
ํ ์ชฝ์ ๋คํธ์ํฌ ํน์ Gateway์ ์์ค์ด ์๋๋ผ๋ ํต์ ์์ฒด๋ ๊ฐ๋ฅํด์ผ ํ๋ค๋ ๊ฒ
ํต์ ์ค๊ฐ์ ์๋ ์ฅ์น(Gateway)๋ค์๋ ๋ฏธ๋ฆฌ ์ค์ ๋์ด ์๋ State๊ฐ ์๋ค. ์ด ๋ง์ Endpoint ๊ฐ์ ์๋ก์ ๋ํ State๋ค์ ๊ฐ๊ณ ์๋ ํํ๊ฐ ๋๋ ๊ฒ์ ์๋ฏธํ๋๋ฐ, ์ด๋ ๊ฒ ํต์ ํ๊ณ ์๋ Endpoint์ State๋ฅผ ๋๋ ๊ฒ์ Fate Sharing์ด๋ผ๊ณ ํ๋ค. Endpoint์ State๋ฅผ ๋ชฐ์์ ๋ฌ์ผ ํ๋ฏ๋ก Endpoint์ ์ฌ์ฉ๋๋ ๊ธฐ๊ธฐ์ ๋ฐ์ ์ด ์๋ค๋ฉด ์ ์ฝ์ด ๋ง์ ํํ์์ผ๋, ๊ณผ๊ฑฐ์ ๋ฏธ๊ตญ๋ฐฉ์ฑ์์ ๊ตญ๋ฐฉ์ ์ํด ์ด๋ง์ด๋งํ ๋์ ๋ค์ฌ๊ฐ๋ฉด์ ๋ฐ์ ํ๊ฒ ๋์๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก๋ ์ค๊ฐ ๊ฑฐ์ ๋ง๋ค State๋ฅผ ๋์ง ์๋ ๊ฒ์ด ํฐ ์ฅ์ ์ผ๋ก ๋ค๊ฐ์ฌ ์ ์๊ฒ ๋์๋ค.
โ Gateway๋ Stateless, Endpoint๋ Stateful
2.
์ฌ๋ฌ ํ์
์ ํต์ ์๋น์ค๋ฅผ ์ง์ํ๊ณ ์ ํ๋ ๊ฒ
TCP, UDP์ ๊ฐ์ ์ฌ๋ฌ ํต์ Protocol์ ์ง์ํ๋ ๊ฒ์ด ๊ฐ๋ฅํด์ผ ํ๋ค. ๋ค๋ง, ์ํธ ๊ฐ ํต์ ์ ํ ๋๋ ์๋ก ๋์ผํ Protocol์ ์ด์ฉํด์ผ ๊ฐ๋ฅํ๋ค.
3.
๋ค์ํ ๋คํธ์ํฌ๋ฅผ ์์ฉํ๋ ๊ฒ
LAN, ์์ฑ๋ง, ํจํท๋ง ๋ฑ๊ณผ์ ์ํธ ์ฐ๊ฒฐ์ ํ ์ ์๋ค. ์ฆ, ๊ธฐ์กด์ ์กด์ฌํ๋ ๋ง์ ๋ง๋ค๊ณผ ์๋ก ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํด์ผ ํ๋ค. ์ด ๋, ๋ง ๊ฐ์ ์๋ก ๋ค๋ฅธ ๊ธฐ์ ๋ค์ ์ฌ์ฉํ ์๋ ์๋ ์ํฉ์ด๊ธฐ ๋๋ฌธ์ ์๋ก ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ๋๋ก ํ๊ธฐ ์ํด์ ์์ ์๋์ ์กด์ฌํ๋ ๊ธฐ์ (ํน์ Protocol)์ ํฌ๊ฒ ์ ๊ฒฝ ์ฐ์ง ์๋๋ค. ์์ ์๋์ ์กด์ฌํ๋ ๊ธฐ์ ์ ํฌ๊ฒ ์ ๊ฒฝ ์ฐ์ง ์๋ ๋ค๋ฅธ ์ด์ ๋ก๋ ์ ์ด์ ํ๋์ ๊ธฐ๋ฅ์ ์งค ๋ ์ผ์ผ์ด ๋ค๋ฅธ ๊ธฐ๋ฅ๋ค์ ๊ณ ๋ คํ๋ฉฐ ์ง๋ ๊ฒ์ด ์ด๋ ต๊ธฐ๋ ํ๊ณ , ์๊ธฐ ๊ธฐ๋ฅ๋ง ์ ๊ฒฝ ์ฐ๋ฉด ๋ค๋ฅธ ๊ธฐ๋ฅ๋ค๊ณผ Independentํ๋ฏ๋ก ์์ ์๋ ์ฉ์ดํ์ฌ ์ด๋ค ๊ธฐ์ ์๋ Mapping์ ํ์ฌ ์ด์ฉํ ์ ์๋ค๋ ์ฅ์ ์ ๋๊ธฐ ์ํด์๋ค.
4.
๋คํธ์ํฌ์ ์กด์ฌํ๋ ์์์ ๋ถ๋ฐฐ ๊ด๋ฆฌํ๋ ๊ฒ
์์๋ค์ ๋
๋ฆฝ์ ์ธ AS (Autonomous System)์ ์ํด์ ๊ด๋ฆฌ ๋๋ค. ์ด๋ฐ AS๋ค์ BGP(Border Gateway Protocol)์ ์ํด์ ์๋ก ์ฐ๊ฒฐ๋๋ค. BGP๋ฅผ ์ด์ฉํจ์ผ๋ก์จ Routing์ ์ค์ ์ง๊ถ์ ๋ง์ ์ ์๋ค. ์ด๋ฌํ ๊ด๋ฆฌ๊ฐ ์ค์ํ ์ด์ ๋ 18,000๊ฐ์ Constituent Network๊ฐ ์กด์ฌํ๊ณ 1M ์ด์์ ์ํธ๋ฆฌ๋ฅผ ๊ฐ์ง ๋ง์ Routing Table๋ค๋ก ์ธํ์ฌ, ๋ง์ ์ง์ถ์ด ๋๋ฐ๋๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋ฆฌ๊ณ AS๊ฐ์ ์์ฃผ ์์ ์ค๋ฅ๋ก ๊ตญ๊ฐ ๊ฐ์ ์ธํฐ๋ท ์ ๊ทผ์ ๊ต์ฅํ ํฐ ์ฅ์ ๋ฅผ ๋ง๋ค ์๋ ์๊ธฐ ๋๋ฌธ์ด๋ค.
5.
Cost-Effective ํ๋๋ก ๋ง๋๋ ๊ฒ
Packet Switched Network๋ฅผ ํตํด์ ์กฐ๊ธ ๋ ๋น์ฉ์ ์ ๊ฐํ ์ ์๋ ํํ๊ฐ ๋์๋ค. ๋ชจ๋ Packet๋ค์ ๊ณต์ฉ ์ธํฐ๋ท์ ํตํด ์ ๋ฌ๋๋๋ฐ, ์ด ๋๋ฌธ์ Packet ์ ์ก ์ ํ์ํ ์ ๋ณด๋ค์ด Overhead๊ฐ ๋๋ ๋จ์ ์ ์กด์ฌํ๋ค. (์ถ๊ฐ๋ก ๋ถ์ ์ ๋ณด๋ค์ ๋ํ Encapsulation, Decapsulation์ด Overhead๋ก ์์ฉํ๊ฒ ๋๋ค.)
6.
์ ์ ๋
ธ๋ ฅ์ผ๋ก ์๋ก์ด Host๊ฐ ๋คํธ์ํฌ์ ๋ถ์ ์ ์๋๋ก ํ๋ ๊ฒ
IP๋ ๊ต์ฅํ ํธ๋ฆฌํ๊ฒ Plug & Play๊ฐ ๊ฐ๋ฅํ๋ค. IP Stack์ ์ด์ฉํ๋ ๋ชจ๋ ๊ฒ๋ค์ ์ธํฐ๋ท์ ์ฐ๊ฒฐ ๋ ์ ์๋ค. ํ์ง๋ง ์ด ๋ถ๋ถ์ ๋ํด์ Endpoint ๋จ๋ง์ ๋ฌธ์ ๋ณด๋ค๋ ํ๋ก๊ทธ๋๋จธ์ ์ญํ ์ด ์ค์ํ๋ค. Endpoint๋ฅผ ์ด์ฉํ๋ ์ฌ์ฉ์๋ค์ ์ฝ๊ฒ ์ฌ์ฉํ์ง๋ง, ์ด๋ ๊ฒ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ๋ง๋๋ ์ญํ ์ ๋ณต์กํ ๊ธฐ๋ฅ๋ค์ ๊ฐ๋นํ ์ ์๋ ์์คํ
์ ํตํด์ ํ๊ฒ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฐ ์์คํ
์ ๋ํ ๋ถ๋ด์ ํ๋ก๊ทธ๋๋จธ๊ฐ ์ง๊ธฐ ๋๋ฌธ์ด๋ค.
7.
Internet Architecture์์ ์ฌ์ฉ๋๋ ๋คํธ์ํฌ ์์์ ๋ชจ๋ํฐ๋งํ ์ ์๋๋ก ํ๋ ๊ฒ
์ด๋ ๊ฒฐ๊ตญ์ Billing๊ณผ ์ง๊ฒฐ๋๋ค. ๊ธฐ๊ธฐ์ ๋ํ ๊ณ ์ฅ์ ์์ ์ ์์ด๋, Billing์ ๋ฌธ์ ๊ฐ ์์ผ๋ฉด ์ ๋ ์ ๋๋ค.
5) End-to-End ์์น
ํต์ ์ Endpoint์ Endpoint ๊ฐ์ ์ผ์ด๋๋ ๊ฒ์ด๊ณ , ํต์ ์ ์์ด์ ํ์ํ ๋ณต์กํ ๊ธฐ๋ฅ๋ค์ Endpoint์ ์์นํ๊ณ ์์ด์ผ ํ๋ค.
์ฆ, Transport Layer์ Application Layer๋ (5, 6, 7 ๊ณ์ธต์ ๋ณดํต ํฌ๊ฒ ๋ฌถ์ด์ Application Layer๋ผ๊ณ ํ๊ธฐ๋ ํจ) Host์ ์ปดํจํฐ์๋ง ์กด์ฌํ๋ฉฐ, Router๋ Network Layer, Data Link Layer, Physical Layer์ ๊ธฐ๋ฅ๋ง ์ํํ๊ฒ ๋๋ค. (Switch๋ Data Link Layer ๋ฐ Physical Layer์ ๋ํ ๊ธฐ๋ฅ์ ์ง์ํ๋ค.)
End-to-End ์์น์ ๊ณ ์ํ๋ ์ด์ ๋ ์ฌ๋ฌ ๊ธฐ์ ์ ์ฝ๊ฒ ์์ฉํ ์ ์๋๋ก ํ์ฌ ํ์ฅ์ฑ์ ๋์ด๊ธฐ ์ํจ์ด๋ค. ์ด๋ฐ ์ด์ ๋๋ฌธ์ End-to-End ์์น์ ๋คํธ์ํฌ ๊ณ์ธต ์ค๊ณ์ ํต์ฌ์ ์ผ๋ก ์์ฉํ์ง๋ง, ์ค์ ๋ก๋ ์๋์ ์ผ๋ก ๋ฌด์ํ๋ ๊ฒฝ์ฐ๋ค์ด ์กด์ฌํ๋ค.
์ฌ์ฉ์๋ค์ด ๊ด๊ณ ๋ฅผ ๋ณด๋ ์กฐ๊ฑด์ผ๋ก ๋ฌด๋ฃ WiFi๋ฅผ ์ ๊ณต ๋ฐ๋ ์ํฉ์ด๋ผ๊ณ ํ ๋, ๊ด๊ณ ๋ฅผ ๋ผ์๋ฃ๊ธฐ ์ํด์๋ Endpoint ๊ฐ์ ํต์ ์์ ๋ฌด์ ๊ณต์ ๊ธฐ๊ฐ ๋ผ์ด๋ค ์ ์์ด์ผ ํ๋ค. ๋ํ ๊ฒ์ ์๋น์ค๋ฅผ ์ ๊ณตํ ๋ ๋ก๋๋ฐธ๋ฐ์๋ฅผ ์ด์ฉํ๋ค๋ฉด, Client๋ผ๋ Endpoint์ Server๋ผ๋ Endpoint ์ค๊ฐ์ ๋ก๋๋ฐธ๋ฐ์๋ผ๋ ์ฅ๋น๋ฅผ ๋ฃ๋ ๊ฒ๋ ์ผ์ข
์ End-to-End ์์น์ ์๋์ ์ผ๋ก ๊นฌ ๊ฒ์ด๋ผ๊ณ ๋ณผ ์ ์๋ค. (๋ณด์ ์ฅ๋น ํน์ ํ ๋ ํธ์ ํธ๋ํฝ์ ๋ณ๋๋ก ์ฒ๋ฆฌํ๊ธฐ ์ํ QoS ์ฅ๋น๋ค๋ ์ด์ ํด๋นํ ์ ์๋ค.)
6) Curse of the Narrow Waist
"IP์์ ๋ชจ๋ ๊ฒ, ๋ชจ๋ ๊ฒ ์์ IP" (IP over anything, anything over IP)๋ผ๋ ๋ง์ด ์์ ์ ๋๋ก IP ์ ์๋๋ก์ ๊ธฐ์ ๋ฐ์ ์ด ๋ง์ด ์์๋ค. ๋๋ฌธ์ IP์ ๋ํ ์์ ์ ๊ต์ฅํ ์ด๋ ค์์ด ๋ฐ๋ฅธ๋ค.
Internet Architecture ๋ชฉํ๋ค ์ค ๋ค์ํ ๋คํธ์ํฌ ์์ฉ์ ์ํ ๋๋ถ๋ถ์ Independentํ ๊ธฐ์ ๋ค์ด(์๋ฌด๋ฆฌ Independentํ๊ฒ ์ง๋ ค๊ณ ํด๋), IP๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ๋ฐ์ ์งํํด์๊ธฐ ๋๋ฌธ์ด๋ค. ์ด๋ก ์ธํ ๋ฌธ์ ๋ ์์ ์ด๋ ต๋ค๋ ๊ฒ์ด๊ณ , ์ด ๋ฟ ์๋๋ผ ๊ทผ๊ฐ์ด๋๋ ์ตํ์ ๋ ๋ฒจ์์๋ ๊ต์ฅํ ์๋์ ์ ๋ณด๋ค๋ง ์ด์ฉํ ์ ๋ฐ์ ์๋ค๋ ์ด๋ ค์๋ ์๋ค. (๋ฌด์ ๊ณผ ๊ฐ์ด ๋ง์ด๋ค.)
7) Internet์ 3๊ฐ์ง ์์
1.
Host
(ํต์ ์๋น์ค์ ๊ถ๊ทน์ ์ธ ์๋น์์ด๋ค.)
2.
Packet Network
(Internet Protocol ์ด์ฉํ๋ Host์ปดํจํฐ์ ํต์ ์ ์ง์ํด์ค๋ค.)
3.
IP Router (๊ฐ์ ๋ง ๋ด์ ์์ ๋๋ Router, ๋ค๋ฅธ Domain์ ๊ฒฝ์ฐ Gateway)
(์ํธ ์ฐ๊ฒฐ๋ ๋คํธ์ํฌ์์ Packet-Switching์ ์ด์ฉํ๋ ์ปดํจํฐ๋ฅผ Gateway ํน์ IP Router๋ผ๊ณ ๋ถ๋ฅธ๋ค.)
8) Internet์ Architectural Assumption
1.
์ธํฐ๋ท์ ๋คํธ์ํฌ์ ๋คํธ์ํฌ์ด๋ค.
2.
(Fate Sharing์์ ์ธ๊ธ ๋์ ๋ฏ์ด) Gateway๋ Connection State๋ฅผ ๋ด๊ณ ์์ง ์๋ค.
3.
Routing Complexity์ ๋ํ ์ ๋ณด๋ Gateway์ ์์ด์ผ ํ๋ค. (๋ฉ์ธ์ง ์ ์ก์ ์ํ Path๋ฅผ ์ฐพ๋๋ฐ ์ฌ์ฉ๋๋ค. ์ด ๋ Host๋ Routing์ ๊ด์ฌ ํ์ง ์๋๋ค.)
4.
์ธํฐ๋ท ์์คํ
์ ๋์ ๋ฒ์์ ๋ค์ํ ๋คํธ์ํฌ์ ๋ํด์ ๊ฐ๋นํ ์ ์์ด์ผ ํ๋ค. (์ฆ, ๋คํธ์ํฌ์์ ์ฌ์ฉํ๋ ๊ธฐ์ ์ด ๋ฐ๋์ด๋, ์ฌ์ ํ ํต์ ์ ๊ฐ๋ฅํ ์ ์์ด์ผ ํ๋ค.)
9) NAI (Network Access Identifier)
Identity๋ ๋ฌด์์ผ๊น? ๋ฐ๋ก ๋ด๊ฐ ๋๊ตฌ์ธ์ง (Identifier), ๋ด๊ฐ ์ด๋์ ์๋์ง(Locator)๋ฅผ ๋ฐํ๋ ๊ฒ์ด๋ผ๊ณ ๋ณผ ์ ์๋ค. ์ด๋ฌํ Identity๋ ํต์ ์ ์๊ตฌ๋๋ ๊ธฐ๋ณธ ์ฌํญ์ด๋ค.
ํต์ ์์ Identity๋ฅผ ์๊ตฌํ๊ธฐ ๋๋ฌธ์ ์ ์ , ๋ฌด์ ์ ๋ํด์๋ ๊ฐ๊ฐ ํ์ค์ด ์กด์ฌํ๋ฉฐ, ๋น์ฐํ๊ฒ๋ ๋คํธ์ํฌ ํต์ ์์๋ ์ด๋ฐ ๊ฐ๋
์ด ์กด์ฌํ๋ค.
๋คํธ์ํฌ์์์ Identity๋ NAI๋ผ๊ณ ํ๋ฉฐ ์ด๋ RFC2486 (Obsoleted by RFC4282) โ RFC4282 (Obsoleted by RFC7542) โ RFC7542 ์์ผ๋ก ๋ฐ์ ํด์๋ค.
RFC(Request For Comment)๋?
์ธํฐ๋ท๊ณผ TCP/IP์ ๋ํ ์ ์, ์์ด๋์ด, ๊ธฐ์ , ๋ด์ค, ํ์ค ๋ฑ ์ข
ํฉ์ ์ธ Note์ด๋ค.
๋ชจ๋ ์ธํฐ๋ท ํ์ค์ ํญ์ RFC๋ก ๋ฌธ์ํ๋๊ณ ์๋ค. IETF์์ ์ด๋ฅผ ์์ฑํ๊ณ ์์ผ๋ฉฐ RFC๋ ๋๊ตฌ๋ ์
์๊ฐ ๊ฐ๋ฅํ๋ค.
RFC7542๋ Domain๊ฐ ๋ก๋ฐ(์ธ์ฆ) ์๋น์ค๋ฅผ ์ง์ํ๊ธฐ ์ํด ์ฌ์ฉ์๋ฅผ ๊ตฌ๋ถํ ์ ์๋ ํ์ค์ด ํ์ํ๋ค๋ ๊ท์ ์ด๋ค. RFC4282์ NAI์ ๋ํด ์๋์ ๊ฐ์ ์์ ๊ฐ ๋ฑ๋ก๋์ด ์๋ค.
username@realm
jseo@example.com
์ด๋ฌํ NAI์ ๋ํ RFC7542์์ ๋ํ๋๋ Identifier๋ RFC5322 + RFC6532๋ฅผ ๋ฐ๋ฅด๋ฉฐ Application Layer์์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ค.
RFC5322๋ Internet Message Format์ ๊ธฐ๋ฐ์ผ๋ก ํ ์ฌ์ฉ์์ ๋ํ ๋ถ๋ถ(User Portion / username)์ด๊ณ , RFC6532๋ ์์น์ ๋ํ ๋ถ๋ถ(Local Portion / realm)์ผ๋ก์จ Internationalized Email Header์ ์ฐ์ฅ์ ์ธ ์ด๋ฉ์ผ ํ์์ผ๋ก ๋ํ๋๋ค.
์ด๋ ๊ฒ ์ ์๋ Identifier๋ ๋์ฒด๋ก utf8์ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋๋๋ฐ, ์ด๋ฐ utf8์ผ๋ก ์์ฑ๋ realm ๋ถ๋ถ์ ๋ํด์๋ Internationalized Domain Names (IDNs)์ ๋ง๋ ํธํ์ฑ์ ๊ฐ๋ ์์ผ๋ก ์๋๋์ด ์๋ค. ๋ฐ๋ผ์ RFC5890์ ๋ฐ๋ฅธ๋ค.
RFC5890์ Internationalized Domain Names์ ๋ํ Syntax ์ ์ ๊ท์ฝ์ด๋ผ๊ณ ๋ณผ ์ ์๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก๋ RFC1034(LDH๋ผ๊ณ ํ์ฌ Letters, Digits, Hyphen๋ฅผ ์ฌ์ฉํ๋ Syntax)๋ฅผ ์ ํธํ๊ณ ๋ฐ๋ฅด๋ ๋ถ์๊ธฐ์ด์ง๋ง, Symmetry Constraint๋ง ์งํจ๋ค๋ฉด A-label (ASCII), U-label (UNICODE)์ ๋ํ ์ด์ฉ์ด ๊ฐ๋ฅํ๋ค.
Application Layer์์ NAI๋ฅผ ํตํด์ ์ฌ์ฉ์๋ค๊ณผ Domain์ ๋ํ ๊ตฌ๋ถ์ ์ง์๋ฏ์ด, ๋ค๋ฅธ ๊ณ์ธต์์๋ ๊ฐ์๋ง์ Identifier๋ก ๊ตฌ๋ถ์ ์ง๋๋ค.
โข
Data Link Layer์์๋ Interface & Device & Node์ ๋ํ ๊ตฌ๋ถ์ ์ํด Interface Identifier (MAC)๋ฅผ ์ด์ฉํ๋ค.
โข
Network Layer์์๋ Host & Gateway์ ๋ํ ๊ตฌ๋ถ์ ์ํด Host Identifier (IP)๋ฅผ ์ด์ฉํ๋ค.
โข
Tranport Layer์์๋ Process ๋ฐ Program์ ๋ํ ๊ตฌ๋ถ์ ์ํด Endpoint (Port)๋ฅผ ์ด์ฉํ๋ค.
10) ์์ผ๋ก ์์๋๊ฐ์ผ ํ ๊ฒ๋ค?
Internet Protocol Stack์ ๋ํด์ ๋ช
ํํ ์์์ผ ํ๋ค.
โข
๋ฉ์ธ์ง๊ฐ ์ธํฐ๋ท ์์์ ์ด๋ป๊ฒ ์ ๋ฌ ๋๋์ง
โข
๊ฐ Protocol์ Layer์ ๋ชฉ์ ์ ๋ฌด์์ธ์ง
โข
1๊ณผ 2๋ฅผ ๋ง์กฑ ํ๋ฉด์ ๊ฐ Protocol์ด ์ด๋ป๊ฒ ๋์ํ๋์ง
์ ์ด๋ ์ด ์ธ๊ฐ์ง๋ฅผ ๋ฌด๋ํ๊ณ ์ ํํ๊ฒ ๋ตํ ์ ์๋ค๋ฉด, ์ปดํจํฐ ๋คํธ์ํฌ์ ๋ํ ๊ธฐ๋ณธ ์ง์์ ๊น๋ ค์๋ค๊ณ ๋ณด๋ฉด ๋๊ฒ ๋ค.
2. IPv4 Address
1) IPv4 ๋ค์ด๊ฐ๊ธฐ ์์
RFC791 (IP ํ์ค์ ๋ํ ๊ท์ฝ)์ ๋ฐ๋ฅธ๋ค.
ํ์๋ CIDR์ด๋ผ๊ณ ํด์ Classless Inter-Domain Routing์ผ๋ก ์ฃผ์๋ฅผ ํ ๋นํ๊ณ ์ง๊ณ ์ ๋ต์ ํผ์ณค๋ค. (RFC1519)
Private Internet์ ๋ํ ์ฃผ์ ํ ๋น ๊ท์ฝ์ด ์๋ค. (RFC1918)
Address Mask๋ฅผ ์ด์ฉํ Internet Standard Subnetting Procedure (RFC950)๊ฐ ์กด์ฌํ๋ค.
IP Multicasting์ ์ํ Host Extension (RFC1112)์ด ์กด์ฌํ๋ค.
2) IPv4 Address ํน์ฑ
1.
IPv4 ์ฃผ์๋ Uniqueํ๊ณ Universalํ์ฌ Internet Protocol์ ์ด์ฉํ๋ ๋คํธ์ํฌ์์ ํน์ ๋ชฉ์ ์ง์ ๋ํด์ ์ธ์งํ ์ ์๋ค. (Public์ ํํ์ฌ)
2.
IPv4 ์ฃผ์์ ๊ธธ์ด๋ 32 ๋นํธ์ด๋ค. 32 ๋นํธ๋ 4๊ฐ์ Octet (8๊ฐ์ ๋นํธ)์ผ๋ก ๋๋๋ค. ํํ๋ฒ์ 2์ง์๋ก ๋ํ๋ด๋ ํํ๊ณผ, ์ ์ผ๋ก ๊ตฌ๋ถ๋ 10์ง์๋ก ๋ํ๋ด๋ ํํ 2๊ฐ์ง๋ก ๋๋๋ค.
2์ง์ โ 00000000 00000000 00000000 00000000
10์ง์ โ 0.0.0.0
3.
32๋นํธ์ ๊ฐ 4๊ฐ์ Octet์์ ํํ์ด ๊ฐ๋ฅํ ๋ฒ์๋ (๊ฐ Chunk๋ 8๋นํธ๋ฏ๋ก) 0~255๊น์ง์ด๋ค.
๋ฐ๋ผ์ 10์ง์๋ก ํํ๊ฐ๋ฅํ IP์ฃผ์์ ๋ฒ์๋
0.0.0.0 ~ 255.255.255.255
4.
IPv4 ์ฃผ์๋ Network Part (NAI์์์ Local Portion์ ์๋ฏธ), Host Part (NAI์์ User Portion์ ์๋ฏธ)๋ก ๊ตฌ์ฑ๋๋ค. ์ฌ๊ธฐ์ ์ฌ์ฉ๋๋ Network Part์ Host Part์ ๋ํ (์ผ๋งํผ์ ๊ธธ์ด๋ก) ๊ตฌ๋ถ์ IP Class์ ๋ฐ๋ผ ๋๋๋ค. โ ๋ ๋์๊ฐ Subnetting์ ๊ฐ๋
๊น์ง ๋ค์ด๊ฐ๋ฉด ์๋์ ๊ทธ๋ฆผ์ฒ๋ผ ์กฐ๊ธ ๋ Flexibleํ๊ฒ Host Part๋ฅผ ์ด์ฉํ๋ฉด์ Hierarchical(๊ณ์ธต์ ) Routing์ด ๊ฐ๋ฅํด์ง๋ค.
์์ ๊ฐ์ ํํ์ IPv4 ์ฃผ์๋ฅผ Hierarchical IPv4 Address๋ผ๊ณ ํ๋๋ฐ, ์ด๋ฅผ ํตํด Hierarchical Routing์ด ๊ฐ๋ฅํด์ง๋ค๋ฉด ๋ชฉ์ ์ง ๋์์ด ๋๋ ๋คํธ์ํฌ๋ฅผ ์ฝ๊ฒ ์ธ์ํ ์ ์์ด IP Routing์ ๋์์ด ๋๋ค. (Routing์๋ ๋์์ด ๋์ง๋ง, ์ด๋ฐ ๊ณ์ธต ๊ตฌ์กฐ๋ IP ์ฃผ์์ ๊ด๋ฆฌ ์ธก๋ฉด์์๋ ๊ต์ฅํ ์ ์ฉํ๋ค.)
5.
IPv4 ์ฃผ์๋ Classful์ด์๋ค๊ฐ Classless ๊ฐ๋
์ผ๋ก ๋ฐ๋์ด ๋๊ฐ๋ค. ์ด๋ฌํ ๋ณํ๋ก 4๋ฒ๊ณผ ๊ฐ์ด ์กฐ๊ธ ๋ Hierarchicalํ ๊ตฌ์กฐ๋ฅผ ๋๊ฒ ๋์๋ค.
3) Classful IPv4
โข
Class A
1๋ฒ์งธ Octet์ Network Part, ๋๋จธ์ง 3๊ฐ์ Octet์ Subnet / Host๋ก ํ์ฉ
โข
Class B
1, 2๋ฒ์งธ Octet์ Network Part, ๋๋จธ์ง 2๊ฐ์ Octet์ Subnet / Host๋ก ํ์ฉ
โข
Class C
1, 2, 3๋ฒ์งธ Octet์ Network Part, ๋๋จธ์ง 1๊ฐ์ Octet์ Subnet / Host๋ก ํ์ฉ
โข
Class D
Multicasting์ ์ํ IP ์ฃผ์
โข
Class E
ํน์ ํ๊ฒ ๋ชฉ์ ์ด ์ ํด์ ธ ์๋ ํ๋์ ์ํ IP ์ฃผ์
IPv4 ์ฃผ์์ ํํ๋
{<Network>, <Host>}
{<Network>, <Subnet>, <Host>}
์ ๊ฐ์ ํํ์ธ๋ฐ, Subnet์ ์ด์ฉํ๋ ๊ฒฝ์ฐ์ Mask ์ฃผ์ ํํ๋
{-1, -1, 0}
๊ฐ ๋๋ค. Masking ๋นํธ๋ค์ 1๋ก ์ฑ์์ ธ์ & ์ฐ์ฐ์ ํตํด Host๋ฅผ ๋ถ๋ณํด๋ผ ์ ์๋ค.
(์ด ๋ ์ฑ์์ง ๋ชจ๋ 1 ๊ฐ๋ค์ ๋นํธ๊ฐ ๊ฝ ์ฐจ์๋ ํํ๋ฏ๋ก -1๋ก ํํํ๋ ๊ฒ์ด๋ค.
๋ถํธ๊ฐ ์๋ 2์ง์ ํํ๋ฒ
4) IPv4 Packet Forwarding Method
[1] Unicast: MAC ์ฃผ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋์ธก IP์ฃผ์๋ฅผ ๋ชฉ์ ์ง๋กํ๋ 1:1 ํต์
ํ์ฌ ๋คํธ์ํฌ์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ฐฉ์์ด๋ค. Unicast ๋ฐฉ์์ ํ๋์ ์ก์ ์๊ฐ ๋ค๋ฅธ ํ๋์ ์์ ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐฉ์์ผ๋ก ์ผ๋ฐ์ ์ธ ์ธํฐ๋ท ์์ฉ ํ๋ก๊ทธ๋จ์ด ๋ชจ๋ Unicast ๋ฐฉ์์ ์ฌ์ฉํ๋ค. Unicast ํต์ ์ ๋ชฉ์ ์ง๋ฅผ ์ ์ธํ ๋ค๋ฅธ ๋คํธ์ํฌ์์ PC๋ค์ CPU์ฑ๋ฅ์ ์ ํ์ํค์ง ์๋๋ค! ๊ทธ ์ด์ ๋ ์์ ์๊ฒ ์จ Packet์ด ์๋๋ผ๊ณ ํ๋จ๋๋ฉด ํด๋น Frame์ ๋ฒ๋ฆฌ๊ธฐ ๋๋ฌธ์ด๋ค!
๋ง์ฝ ๋์ผํ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ์์ ์์๊ฒ ๋ณด๋ด๊ณ ์ถ๋ค๋ฉด, Unicast ํต์ ์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ๋ฒ ์ ์กํด์ผ ํ๋ฉฐ ๋์ผํ Packet์ ์ค๋ณต ์ ์ก์ผ๋ก ์ธํด ๋คํธ์ํฌ ํจ์จ์ด ์ ํ๋๋ค!
[2] Broadcast: Local ์์ ๋ถ์ด์๋ ๋ชจ๋ ๋คํธ์ํฌ ์ฅ๋น๋ค์๊ฒ ๋ณด๋ด๋ 1: N(all) ํต์
์ฌ๊ธฐ์ Local์ด๋ Router์ ์ํด์ ๊ตฌ๋ถ๋์ด์ง ๊ณต๊ฐ, ์ฆ Broadcast Domain์ด๋ผ๊ณ ํ๋ ๊ณต๊ฐ์ ๋ปํ๋ค. Broadcast ์ฃผ์๋ก Packet์ด ์ค๋ฉด ์์ ์ MAC ์ฃผ์์ ๊ฐ์ง ์์๋ ๋ฌด์กฐ๊ฑด ์ฝ์ด์ CPU๋ก ์ ๋ฌํ๋ค.
๋ฐ๋์ ํ์ํ ํต์ ๋ฐฉ์์ด์ง๋ง, ๋ฐ์ดํฐ ์์ ์ด ํ์์๋ Host๋ค์๊ฒ๋ ๋ฐ์ดํฐ๊ฐ ์ ์ก๋๊ธฐ ๋๋ฌธ์ ๋ถํ์ํ ์ธํฐ๋ฝํธ๊ฐ ๋ฐ์๋๋ค. ๋ํ ์์ ์ด ์ํ ๋คํธ์ํฌ์๋ง ํ์ ๋๊ณ , Router๋ฅผ ๊ฒฝ์ ํ์ง ๋ชปํ๋ค๋ ๋จ์ ์ด ์๋ค.
Broadcast๋ฅผ ์ฌ์ฉํ๋ ์์!
โข
ARP(Address Resolution Protocol)
์ฒ์ ๋ PC๊ฐ์ ํต์ ์ ํ๋ ๊ฒฝ์ฐ์, ์๋ IP ์ฃผ์๋ ์ ์ ์๋๋ผ๋ MAC ์ฃผ์๋ ์ ์๊ฐ ์๋ค!
์ด ๋, ์๋ํธ์ MAC ์ฃผ์๋ฅผ ์๊ธฐ ์ํด์ ํ๋ Protocol์ด ๋ฐ๋ก ARP์ด๋ค!
โข
Router๋ผ๋ฆฌ ์ ๋ณด๋ฅผ ๊ตํํ๊ฑฐ๋ ๋ค๋ฅธ Router๋ฅผ ์ฐพ๊ณ ์ถ์ ๊ฒฝ์ฐ
โข
Server๊ฐ ์์ ์ด ์ด๋ค ์๋น์ค๋ฅผ ์ ๊ณตํ๋ค๋ ๊ฒ์ ๋ชจ๋ Client๋ค์๊ฒ ์๋ฆด ๋
โข
DHCP๋ฅผ ํตํด์ ์์ ์ IPv4 ์ฃผ์ ์ค์ ์ ์งํํ ๋
[3] Multicast: ํ๋ ์ด์์ ์ก์ ์๋ค์ด ํน์ ํ ํ๋ ์ด์์ ์์ ์๋ค์๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ํต์
Multicast์ ๊ฒฝ์ฐ ์์ ์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ธฐ ์ํ๋ ํน์ Host๋ค์๊ฒ๋ง ๋ณด๋ด๋ ๊ฒ์ด ๊ฐ๋ฅํ์ง๋ง, Switch๋ Router๊ฐ ์ด ๊ธฐ๋ฅ์ ์ง์ํด์ฃผ์ด์ผ ํ๋ค! Multicast ์ ์ก์ ์ํ ๊ทธ๋ฃน ์ฃผ์๋ D Class IP ์ฃผ์ (224.0.0.0 ~ 239.255.255.255)๋ก ์ค์ Host๋ฅผ ๋ํ๋ด๋ ์ฃผ์๊ฐ ์๋๋ฉฐ ๊ทธ๋ฃน ์ฃผ์๋ฅผ ์ด์ฉํ๋ค.
์๋ฅผ ๋ค์ด, ๋คํธ์ํฌ ์์ 200๋ช
์ ์ฌ์ฉ์๊ฐ ์์ ๋, 150๋ช
์๊ฒ๋ง ์ ๋ณด๋ฅผ ๋ณด๋ด๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ ํต์ ์ด๋ค. Broadcast๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋น ๋ฐ์ดํฐ๊ฐ ํ์ํ์ง ์์ 50๋ช
์ PC์ฑ๋ฅ์ด ์ ํ๋๋ค, Unicast๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ์ Packet์ 150๋ฒ ์ ์กํด์ผ ํด์ ๋นํจ์จ์ ์ด๋ค. ์ฆ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ํต์ ๋ฐฉ๋ฒ์ธ ๊ฒ์ด๋ค.
Multicast๋ ๋คํธ์ํฌ ์์์ One-to-Many ํต์ ์ ์ํ ๊ธฐ๋ฒ์ด๋ค. Multicast๋ (๋ง์ ์์ ์๋ฅผ ๋ชฉํ๋ก ํ๋๋ผ๋) Packet์ด ํ ๋ฒ๋ง ์ ์ก๋ ์ ์๋๋ก ์์์ ๋์ด๋ชจ์ผ๋ ์์ผ๋ก ๋คํธ์ํฌ ์ธํ๋ผ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๋ค. ์ฆ, Unicast๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ค.
5) IPv4 Special Address
[1-1] 0.0.0.0 ({0, 0}
[1-2] {0, <Host>}
IPv4 Packet์ ์ ์กํ๋ ค๋ ์ปดํจํฐ์์ Source IP ์ฃผ์๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ์ ์์ ์ IPv4 ์ฃผ์๋ก 0.0.0.0์ด ์ด์ฉ๋๋ค.
์๋ฅผ ๋ค๋ฉด, DHCPDISCOVER์ ๊ฐ์ ์์
์ ์ด์ฉ๋๋๋ฐ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด IPv4 Packet์ ๋ ๋ฆฌ๋ฉด DHCP Server๋ก ๋ถํฐ ๋ต์ ๋ฐ์ ์ ์๋ค.
[2-1] 255.255.255.255 ({-1, -1}
[2-2] {<Network>, -1}
[2-3] {<Network>, <Subnet>, -1}
[2-4] {<Network>, -1, -1})
๋ชจ๋ ๋นํธ๊ฐ 1์ธ IPv4 ์ฃผ์๋ Broadcast์ ์ด์ฉ๋๋ค. ๋ํ ํน์ ๋คํธ์ํฌ ์ ์ฒด์ ๋ณด๋ด๋ Broadcast๊ฐ ์๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ํน์ Subnet์๋ง ๋ณด๋ด๋ Broadcast์ ๊ฒฝ์ฐ, ์ ํด์ง ์ ์ฒด ๋คํธ์ํฌ์ Broadcast Packet์ ๋ฟ๋ฆฌ๋ ๊ฒ์ด ์๋๋ผ ํน์ Subnet์ Broadcast Packet์ ๋ฟ๋ฆฌ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค. ์ด๋ฅผ IP Directed Broadcast๋ผ๊ณ ํ๋ค.
์ด์ ๊ฐ์ด IP Directed Broadcast๋ก Packet์ ๋ ๋ฆฌ๊ฒ ๋์ด์ Target Subnet์ ํฅํด ๊ฒฝ๋ก ํ๊ณ ๊ฐ๋ฉด, ๋คํธ์ํฌ๋ ์ด Packet์ Unicast Packet์ ์ ์กํ ๋์ ๋์ผํ ๋ฐฉ๋ฒ์ผ๋ก Forwarding ํ๋ค. (์ฆ, Unicast Packet๊ณผ ๋์ผํ ์ทจ๊ธ์ ํ๋ค.) ์ด๋ ๊ฒ Target Subnet์ ์ฐ๊ฒฐ๋ Switch๊น์ง Unicast์ฒ๋ผ ์ ์ก๋ Packet์ ํด๋น Switch์ ๋์ฐฉํ๋ฉด, Switch๊ฐ ์์์ Subnet์ ํด๋นํ ๋ชจ๋ Endpoint ๋จ๋ง์๊ฒ Packet์ Broadcastํด์ค๋ค.
[3-1]127.0.0.1
[3-2]({127, <Any>}
์๊ธฐ ์์ (Local Host)์ ๋ํ๋ด๋ Loopback ์ฃผ์์ด๋ค.
Loopback ์ฃผ์๋?
ํน์ ์ฃผ์๋ก ์ ์ํ์ ๋ ์์ ์ ์ปดํจํฐ์ ์ ์ํ ์ ์๋ ์ฃผ์์ด๋ค. ๋คํธ์ํฌ ๊ด๋ จ ํ๋ก๊ทธ๋จ์ด๋ ํ๊ฒฝ์ ํ
์คํธ๋ฅผ ์ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉํ๋ค.
[4]Private IPv4 Address
์ฌ์ค๋ง๊ณผ ํต์ ํ ๋ ์ฌ์ฉ๋๋ ์ฃผ์์ด๋ค. (๊ธฐ๊ด ๋ฑ์์ ์ ํ ํ์ ์ฐ์ฅ์ ์ํด ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋น์ทํ๋ค.)
6) Scaling Issues in Routing & CIDR (RFC4632)
IPv4 Address ๊ณต๊ฐ์ ๋ํ ๋นํจ์จ์ ์ธ ์ด์ฉ
ํด๋์ค C์์์ 2๊ฐ์ Host โ (2 / 254 = 0.78% Efficient) (
ํด๋์ค B์์์ 256๊ฐ์ Host โ (256 / 65536 = 0.39% Efficient) (
IPv4 ์ฃผ์๊ฐ ์ฐจ์งํ๋ ๊ณต๊ฐ์ ์๊ฐ ๊ต์ฅํ ๋น ๋ฅด๊ฒ ์๋ชจ๋๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
๋๋ฌด๋๋ ๋ง์ ๋คํธ์ํฌ๋ค
Routing Table์ ํ์ฅ๋์ง ์๋๋ค.
Routing Propagation Protocol ์ญ์ ํ์ฅ ๋์ง ์๋๋ค.
Forwarding์ ์ํ ํฐ Routing Table์ Router๊ฐ ์ค์บํ ๋ ๊ต์ฅํ ๋๋ ค์ง๋ค.
์ ๋ฆฌ
๊ทธ๋์..? ํด๋์ค์ ๋ํด์๋ง ์ธ์ํ๋ ์ธํฐ๋ท์ ๋ํด ํด๋์ค ๊ฐ๋
์ ์์ ๋ณด๋ ์ชฝ์ผ๋ก 2006๋
08์์ CIDR (Classless Inter-Domain Routing (RFC4632))์ด ์ ์๋์๋ค. (IPv4 ์ฃผ์์ ๋ํ ์์ ๋๊ฐ ์ฌ๋ผ๊ฐ)
CIDR์ ํด๋์ค A, B, C์ Network Part ๊ฐ๋
์ Classlessํ Prefix๋ก ๋ฐ๊พผ ๊ฒ์ ๋งํ๋ค. (๊ธฐ์กด ํด๋์ค A, B, C์ ๋ํด์ Class๋ฅผ ์์ ๋ฉด ์ด๋ ๋ถ๋ถ๊น์ง๊ฐ Network Part์ด๊ณ , ์ด๋ ๋ถ๋ถ๊น์ง๊ฐ Host Part์ธ์ง ๊ตฌ๋ถ์ด ๋ถ๊ฐ๋ฅํ๋ฏ๋ก Subnet Mask์ ๋ํ ํ์์ฑ์ด ๋ฑ์ฅํ๊ฒ ๋๋ค.) ์ด ๋, Network Part๋ ํน์ ๋ฒ์ฃผ ๋ด์์ ์ฌ์ฉ๋๋ Endpoint ๋จ๋ง์ Network Part๋ฅผ ์ด์ฉํ๋ค. (Subnet Mask๋ ๋ค์ ํํธ์์ ๋ค๋ฃฌ๋ค.)
CIDR ํ๊ธฐ๋ฒ์์ Prefix๋ ๊ธฐ์กด IPv4 ์ฃผ์์ฒ๋ผ 4๊ฐ์ Octet์ผ๋ก ํ๊ธฐ๋๋ฉฐ ๊ทธ ๋ค์ / ๊ฐ ๋ถ์ผ๋ฉด์ ์ด์ด์ ํน์ ๋นํธ ์์ ๋ํด์ ๋ช
์ํ๋ค. IPv4 ์ฃผ์์ ๊ฒฝ์ฐ 32 ๋นํธ์ ๊ธธ์ด๋ฅผ ๊ฐ๊ธฐ ๋๋ฌธ์, / ๋ค์๋ 0 ~ 32 ์ฌ์ด์ 10์ง์ ๊ฐ์ด ํ๊ธฐ ๋๋ค.
์๋ฌต์ ์ผ๋ก 255.255.0.0์ ๋คํธ์ํฌ ์ฃผ์ Mask๋ฅผ ์ด์ฉํ๋ ๊ธฐ์กด ํด๋์ค B ๋คํธ์ํฌ์ 172.16.0.0 IPv4 ์ฃผ์๋ CIDR ํ๊ธฐ๋ฒ์ผ๋ก 172.16.0.0/16์ด ๋๋ค.
7) Subnet Mask
Subnetwork ํน์ Subnet์ด๋ผ๊ณ ๋ถ๋ฅด๋ ๊ฒ์ IP ๋คํธ์ํฌ์ ๋ํ ๋
ผ๋ฆฌ์ ๋ถํ ์ด๋ค.
Subnet Mask ํน์ Subnetwork์ ๋ํด์ ์์๋ด๊ณ ์ ๊ณ์ฐ์ ํ ๋๋, Logicial Multiplication์ ์ด์ฉํ๋ค. ์๋ฅผ ๋ค์ด์ 192.168.0.1/24๋ผ๋ CIDR ํ๊ธฐ๋ฒ์ผ๋ก ๋ํ๋ธ IPv4 ์ฃผ์๊ฐ ์ฃผ์ด์ก๋ค๊ณ ํด๋ณด์. ์ด์ ๋ฐ๋ฅธ Subnetwork ์ฃผ์ ๊ตฌํ ๋๋ IPv4 ์ฃผ์์ Subnet Mask ์ฃผ์๋ฅผ & ์ฐ์ฐ์ ์ทจํ๋ฉด ๋๊ณ , Subnet Mask ์ฃผ์๋ฅผ ๊ตฌํ ๋๋ IPv4 ์ฃผ์์ Subnetwork ์ฃผ์๋ฅผ & ์ฐ์ฐ์ ์ทจํ๋ฉด ๋๋ค.
IPv4 by Binary โ . . .
Subnet Mask โ . . .
Subnetwork โ . . .
์ด ๋์ ์ถ๊ฐ๋ก ์ฌ์ฉํ ์ ์๋ Host์๋ 253๊ฐ์ด๋ค. (์๊ธฐ ์์ IP, ๋คํธ์ํฌ ์์ฒด์ ๋ํ IP {<Network>, 0}, ๋คํธ์ํฌ์ Broadcast IP {<Network>, -1}์ ์ ์ธํ 253๊ฐ์ด๋ค.)
Subnet Mask ๊ฐ์ ๋ชฉ์ ์ Host Part ๋ถ๋ถ์ ๋ํ ์ ๋์ ์ธ ๋ถํ ์ ๋ํ ๋ช
์์ด๋ค. Subnet ์์ฒด๋ ํด๋น ๋คํธ์ํฌ ๋ด๋ถ์์๋ง ํ์ธ์ด ๊ฐ๋ฅํ๋ค. ๋จ์ํ IPv4 ์ฃผ์๋ง ์ฃผ์ด์ง ์ํ์์๋ Subnet์ด ์ด๋ป๊ฒ ๋๋์ง ์ ์ ์๋ค. ๋ฐ๋ผ์ ์๋์ ๊ฐ์ด ํด๋์ค B์ IPv4 ์ฃผ์๊ฐ ์ฃผ์ด์ก์ ๋๋ ์ด๋ค Subnet์ธ์ง ์ ์ ์์ง๋ง, Subnet Mask๊ฐ ์ฃผ์ด์ง๋ฉด ์ด๋ Subnet์ ์ด์ฉํ๊ณ ์๋์ง ์ ์ ์๋ค. (๊ณ์ฐํ ๋๋ ํญ์ 2์ง์!)
8) Subnetting & Supernetting from CIDR
๋ Netting ๋ชจ๋ Network Mask๋ฅผ ์ฌ์ฉํ๋ค.
Subnetting
ํฐ ๋คํธ์ํฌ๋ฅผ ์์ ์ฌ๋ฌ ๊ฐ์ ๋คํธ์ํฌ๋ก ๋๋๋ ๊ธฐ๋ฒ์ด๋ค. ๋คํธ์ํฌ ๊ตฌ์กฐ๋ฅผ ๊ณ์ธต์ ์ผ๋ก ๋ ์ ์๋ค. Supernetting๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก Routing์ ๋์์ ์ค๋ค. ๊ธฐ์กด ๋คํธ์ํฌ Prefix์์ ์ถ๊ฐ์ ์ผ๋ก ๊ทธ๋ฃน์ ํ์ฑํ์ฌ ๋๋ด๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฃน์ ๋ฐ๋ผ์ ๋คํธ์ํฌ Prefix๋ฅผ ์ํ ๋นํธ ์๊ฐ ์ฆ๊ฐํ๋ค.
์๋ฅผ ๋ค์ด์ ํด๋์ค B ๋คํธ์ํฌ์ ๊ฒฝ์ฐ, 256๊ฐ์ ํด๋์ค C ๋คํธ์ํฌ๋ก ๋๋ ์ ์๋ค. ์ด ๋์ Network Part์ Prefix๋ 16 ๋นํธ์์ 24 ๋นํธ๋ก ์ฆ๊ฐํ๋ค.
๊ธฐ์กด์ ํด๋์ค๋ก ์ด์ฉ๋๋ ๋คํธ์ํฌ
Subnet ๊ฐ๋
์ด ์๊ธฐ๊ณ ๋ ํ์ ๋คํธ์ํฌ
๋ค์์ ํ์ด๋ณด์
์ ๋ต
Supernetting
์์ ์ฌ๋ฌ ๊ฐ์ ๋คํธ์ํฌ๋ฅผ ํ๋์ ํฐ ๋คํธ์ํฌ๋ก ๋ฌถ๋ ๊ธฐ๋ฒ์ด๋ค. ๊ทธ๋ฃจํ์ ๋์์ฃผ๊ธฐ ๋๋ฌธ์ Routing Entry๊ฐ ์ข์์ง๊ฒ ๋๊ณ ์ด๋ฅผ ํตํด Router์ Lookup์ด ํธํด์ง๋ค. ๊ธฐ์กด์ ์ฌ๋ฌ ๋คํธ์ํฌ๋ฅผ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ด๋๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด์ ์ด์ฉํ๋ ๋คํธ์ํฌ Prefix์ ๋นํธ ์๊ฐ ๊ฐ์ํ๋ค.
์๋ฅผ ๋ค์ด์ 4๊ฐ์ ํด๋์ค C ๋คํธ์ํฌ๋ฅผ ํ๋์ ๋คํธ์ํฌ๋ก Supernettingํ ๊ฒฝ์ฐ, Network Part์ Prefix๋ 24 ๋นํธ๋ฅผ ์ฌ์ฉํ๋ค๊ฐ 2 ๋นํธ (4๊ฐ์ ํด๋์ค โ โ 2 ๋นํธ) ๋งํผ ์ค์ด์ Network Part์ Prefix๋ 22 ๋นํธ๋ก ์ด์ฉํ๊ฒ ๋๋ค.
Supernetting์ ๋ํ ํํ์ Supernetting๋ ๋คํธ์ํฌ IPv4 ์ฃผ์์ ๋ฌถ์ ์์ ๋ํ ์๊ดํธ ์์ธ
(<IPv4 Address>, <Count>)
์ ๊ฐ์ด ํ๊ธฐํ๋ค.
์๋ฅผ ๋ค์ด์ (192.5.48.0, 3)์ด๋ผ๊ณ ํ๋ฉด ์ค์ ๋ก๋ 192.5.48.0, 192.5.49.0, 192.5.50.0 ์ด๋ ๊ฒ 3๊ฐ๊ฐ ๋ฌถ์ธ ๊ฒ์ด๋ค. ์ด์ ๋ํ ํ์ด๋ ์๋์ ๊ฐ๋ค.
โ 48.0์ผ๋ก Supernetting ๋ ๊ฒ์ด๋ ์ด๋ฅผ 2์ง์๋ก ๋ณํ ํด๋ณด๋ฉด 00110000.00000000 ์ธ๋ฐ, ์ฌ๊ธฐ์ 3๊ฐ๋ฅผ ๋ฌถ๊ธฐ ์ํด์ 2 ๋นํธ (4๊ฐ์ ์ฌ์ฉ์์ ๋ํ ์ปค๋ฒ๋ฆฌ์ง โ โ 2 ๋นํธ)๊ฐ ํ์ํ๋ค๋ ์ฌ์ค์ ์ ์ ์๋ค. ํด๋์ค C IPv4 ์ฃผ์์ ๋ํด์ 2 ๋นํธ๋ฅผ ์ด์ฉํ Supernetting์ ํ ๊ฒ์ด๋, 24 ๋นํธ์์ 2 ๋นํธ๊ฐ ์ค์ด์ 22 ๋นํธ๋ก ๊ทธ๋ฃจํ์ ํ ๊ฒ์ด๋ผ๊ณ ๋ณผ ์ ์๋ค๋ ๊ฒ์ด๋ค. ๊ทธ๋ผ ๊ทธ๋ฃจํ ๋ 3๊ฐ์ IPv4 ์ฃผ์๋ 00110000.00000000 (48.0), 00110001.00000000 (49.0), 00110010.00000000 (50.0) 3๊ฐ๊ฐ ๋จ์ ์ ์ ์๋ค.
๋น์ทํ ์๋ก X.Y.32.1 ~ X.Y.32.254 (์ฒซ ๋ฒ์งธ ํด๋์ค C ์ฃผ์๋ค), X.Y.33.1 ~ X.Y.33.254 (๋ ๋ฒ์งธ ํด๋์ค C ์ฃผ์๋ค), X.Y.34.1 ~ X.Y.34.254 (์ธ ๋ฒ์งธ ํด๋์ค C ์ฃผ์๋ค), X.Y.35.1 ~ X.Y.35.254 (๋ค ๋ฒ์งธ ํด๋์ค C ์ฃผ์๋ค)์ด ์ฃผ์ด์ก์ ๋, 4๊ทธ๋ฃน์ ๋ชจ๋ ๋ฌถ์ ์ ์๋ Supernetting ์ฃผ์๋ (X.Y.32.0, 4)๊ฐ ๋๋ค.
โ 32.0์ 00100000.00000000, 33.0์ 00100001.00000000, 34.0์ 00100010.00000000, 35.0์ 00100011.00000000์ด๋ค.์ด ๋ ํด๋์ค C์ ๋ํ Network Prefix๋ 24 ๋นํธ์ธ๋ฐ 4๊ฐ์ ๊ทธ๋ฃน์ ๋ฌถ์ด์ผ ํ๋ฏ๋ก ์์ ์์ ์ ๋ง์ฐฌ๊ฐ์ง๋ก 2 ๋นํธ๊ฐ ๊ฐ์๋์ด ๊ทธ๋ฃจํ ๋๋ค. ์ฆ 22 ๋นํธ์ ๋ํด์ Masking์ ํ๋ฉด, 00100000.00000000์ด ๋์ด 32.0์ด ์ต์ข
Supernetting ๊ฒฐ๊ณผ๊ฐ ๋๋ค.
๋ค์ ์์๋ ์์ ๋๊ฐ์ ๋ฐฉ์์ผ๋ก ์ด๋ค์ง๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
9) IPํต์ ์ด ๋์ํ๊ธฐ ์ํ ์ต์ ์กฐ๊ฑด
1.
IPv4 Address
2.
Subnet Mask
3.
Default Gateway
4.
Default DNS Server
3. IPv6 Address
1) IPv6 ๋ค์ด๊ฐ๊ธฐ ์ ์
RFC4291 (IPv6 ์ฃผ์์ ๋ํ ํ์ค ๊ท์ฝ)์ ๋ฐ๋ฅธ๋ค. IPv4 ์ฃผ์์๋ Incomptiable ํ ํ์์ด๋ฏ๋ก ์๋ก์ ๋ํ Translator๊ฐ ์์ด์ผ IPv4 ์ฃผ์์ ํต์ ์ด ๊ฐ๋ฅํ๋ค. ์ด๋ ๊ฒ Translator๋ฅผ ๋๋ ๋ฐฉ์์ ๊ต์ฅํ ๋ถํธํจ์ด ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ํด IPv4 ์ฃผ์์ ๋ํด์ IPv6 ์ฃผ์๋ฅผ ๊ฒน์น๋ ์ค๋ฒ๋ ์ด ๋ฐฉ์์ ํตํด์ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ด ์ ํธ๋๋ค.
2) IPv6 Address ํน์ฑ
1.
IPv6 ์ฃผ์์ ๊ธธ์ด๋ 128 ๋นํธ์ด๋ค. (16 ๋ฐ์ดํธ) โ ์ด๋ ๊ณง ๋ก ์ฝ ๊ฐ ๋งํผ ์ฃผ์๋ฅผ ์ฌ์ฉํ ์ ์๋ค๋ ์๋ฏธ์ด๋ค.
2.
IPv4 ์ฃผ์์์๋ Octet์ . (Dot)์ผ๋ก ๊ตฌ๋ถ ํ๋ค๋ฉด, IPv6 ์ฃผ์์์๋ 2๊ฐ Octet์ : (Colon)์ผ๋ก ๊ตฌ๋ถํ๋ค.
3.
1 ๋ฐ์ดํธ๋ 2๊ฐ์ 16์ง์๋ก ํํ๋๋ฉฐ (1 ๋ฐ์ดํธ = 8 ๋นํธ = 2๊ฐ์ 16์ง์), ์ด 16 ๋ฐ์ดํธ ๊ธธ์ด๋ฅผ 2 ๋ฐ์ดํธ ๋จ์๋ก ๋ฌถ์ผ๋ฉด 8๊ฐ์ ๊ทธ๋ฃน์ด : (Colon)์ผ๋ก ๊ตฌ๋ถ ๋๋ ํ์์ด๋ฏ๋ก ์ด 32๊ฐ์ 16์ง์๋ก ํํ๋๋ค. (ํ ๊ทธ๋ฃน๋น 4๊ฐ์ 16์ง์๋ก ํํ๋๋ฏ๋ก)
4.
๊ฐํน ์ฃผ์ ํํ์ ์์ด์ :: (Double Colon)์ผ๋ก ํ๊ธฐ๋ ๊ฒ์ ๋ณผ ์ ์๋๋ฐ, ์ด ์๋ฏธ๋ 0์ผ๋ก ์ฑ์์ง 2 ๋ฐ์ดํธ๊ฐ ์ฌ๋ฌ ๊ทธ๋ฃน ์๋ค๋ ๊ฒ์ด๋ค.
5.
IPv6 ์ฃผ์์ ๊ฒฝ์ฐ 64 ๋นํธ์ Network Prefix์ 64 ๋นํธ์ Interface Identifier๋ก ๊ตฌ์ฑ๋๊ธฐ ๋๋ฌธ์, IPv6 ์ฃผ์๋ Node๊ฐ ์๋ Interface์ ํ ๋น๋๋ค. (๋ชจ๋ Interface๋ ์ ์ด๋ 1๊ฐ ์ด์์ Link-Local Unicast ์ฃผ์๋ฅผ ๊ฐ๊ณ ์์ด์ ์ด๋ฅผ ํ์ฉํ ์ ์๋ค.) ๋ฐ๋ผ์ ํ๋์ Interface๋ Unicast, Multicast, Anycast์ ๋ฐ๋ฅธ ์ฌ๋ฌ IPv6 ์ฃผ์๋ฅผ ๊ฐ์ง ์ ์๋ค.
6.
IPv4 ์ฃผ์์ ๋ง์ฐฌ๊ฐ์ง๋ก IPv6 ์ฃผ์ ์ญ์ Subnet Prefix๋ ํ๋์ Link์ ํ ๋น๋์ด ์๋ ํํ์ด๋ค. (์๋ Subnet Prefix๋ ํ๋์ Link์ ์ฐ๊ด๋์ด ์๋ค.) ๋ฐ๋ผ์ ์๋์ ๊ฐ์ด ๋์ผํ Link์ ๋ํด์ ์ฌ๋ฌ Subnet Prefix๊ฐ ์กด์ฌํ ์ ์๋ค. ์๋ ๊ทธ๋ฆผ์ 3๊ฐ์ IPv6 Subnet์ด ๋ํ๋ ์๋ค.
7.
IPv6 ์ฃผ์์์๋ ์ค๋ก์ง Network Mask๋ก์จ CIDR ํ๊ธฐ๋ฒ๋ง ๋ฐ๋ฅธ๋ค. (์ค์ ๋ก IPv6 ์ฃผ์์๋ ํด๋์ค๊ฐ ์๋ค.)
3) 3 Types of IPv6 Address
IPv6 ์ฃผ์๋ ์๋์ ๊ฐ์ ํต์ ํํ์ ๋ฐ๋ผ ์ฌ๋ฌ ์ฃผ์๋ฅผ ๊ฐ์ง ์ ์๋ค.
Unicast
ํ๋์ Interface๋ฅผ ๋ํ๋ด๊ธฐ ์ํ Identifier
Anycast
Unicast์ ํฌ๊ฒ ๋ค๋ฅผ ๊ฒ์ด ์์ด Unicast ํน์ฑ์ ๊ฐ์ง๋ค. ๋ค๋ง ๋ํ ์ ํ์ ๊ฐ์ด ํ Interface์์๋ง ์์ ํ ์ ์์ผ๋ฉด ๋๋ค.) ์ฌ๋ฌ Interface๋ค์ ๋ํ ๋ํ Identifier
Multicast
Anycast์ ๊ฐ์ด ์ฌ๋ฌ Interface๋ค์๊ฒ ์ ์ก๋์์ ๋ ๋ฐ์ ์ ์๋ Idenfier์ด๋ค. Anycast๋ ์ฌ๋ฌ Interface๋ค์๊ฒ ์ ์กํ์ ๋ ํ๋์ Interface๋ง ๋ฐ์ ์ ์์ผ๋ฉด ๋์๋ค๋ฉด, Multicast๋ Identifier๋ฅผ ๊ฐ์ง ๋ชจ๋ Interface๊ฐ Packet์ ๋ฐ๊ฒ ๋๋ค.
Mutlicast๋ ๊ทธ๋ฅ ์ข์ ํต์ ์ ์๋๋ค. Multicast๋ฅผ ๋ฐ๊ธฐ ์ํด ๊ทธ๋ฃน์ ์์๋ Node๋ค์ด ์ธ๋ฐ์๋ ์ผ์ ํ๊ฒ๋ ์๋ ์๋ค. ๊ทธ๋ผ์๋ Broadcast๋ณด๋ค๋ ๋ซ๋ค.
IPv6 ์ฃผ์ ์ฒด๊ณ
4) IPv6 Address Format
IPv6 ์ Unicast ์ฃผ์์๋ Link์์ Interface๋ฅผ ํ์ธํ ์ ์๋ Interface Identifier๊ฐ ์ฌ์ฉ๋๋ค๊ณ ํ์๋ค. ์ด ๋ Interface Identifier๋ 64 ๋นํธ์ ๊ธธ์ด์ด๋ฉฐ, Modified EUI-64 Format์ ๋ฐ๋ฅธ๋ค.
IPv6 ์ฃผ์์ IID (Interface Identifier)๊ฐ ์ฌ์ฉ๋๊ธฐ ์ํด์ , Subnet Prefix ๋ฒ์ ๋ด์์ Unique ํด์ผํ๋ค. (IID์ Uniqueํจ์ IPv6 ์ฃผ์์ Unique์ ๋
๋ฆฝ์ ์ด๋ค.)
IPv6 Address Format
IPv6 ์ฃผ์์ ํํ๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค. ๋ง์ผ Global Unicast Address๋ก์จ IPv6 ์ฃผ์๋ฅผ ๋ํ๋ด๋ฉด, IID๋ 64 ๋นํธ๋ก ๊ณ ์ ์ด๊ณ ์ญ์ 64 ๋นํธ๊ฐ ๋๋ค.
Modified EUI-64 Format
IID๋ Modified EUI-64 Format์ ๋ฐ๋ฅธ๋ค๊ณ ํ์๋๋ฐ, ์ด์ ๋ํด์ ์์๋ณด์. EUI๋ผ๋ ๋ง์ Extended Unique Identifier์ ์ฝ์ด์ด๋ค.
Modified EUI-64 Format์์์ EUI๋ IPv6 ์ฃผ์์์ ์ฌ์ฉ๋๋ IID์ ๋ํด์ 64 ๋นํธ์ ๊ธธ์ด์ Uniqueํจ์ ๋ณด์ฅํด์ค๋ค. IPv4 ์ฃผ์์ ๋ฌ๋ฆฌ IPv6 ์ฃผ์์์์ ์ฃผ์ํ ์ฅ์ ์ด ๋ฐ๋ก EUI์ ์๋ค. ๋ฐ๋ก IPv4 ์ฃผ์ ์ฒด๊ณ์์ IPv4 ์ฃผ์ ํ ๋น์ ์ํ ์๋ ์ค์ ๋ฐ DHCP์ ํ์์ฑ์ ์์ ์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค.
IPv6 ์ฃผ์ ์ฒด๊ณ์์๋ DHCP ์์ด๋ ์ฃผ์๋ฅผ ์ ์ ์๋ค๋ ์๋ฆฌ์ธ๋ฐ, ๊ทธ๋ผ IPv6 ์ฃผ์๋ ์ด๋ป๊ฒ ์์ฑ๋๋๊ฑธ๊น? Node ์์ฒด๊ฐ MAC ์ฃผ์๋ฅผ ์ด์ฉํ์ฌ IPv6 ์ฃผ์๋ฅผ ์์ฑํ์ฌ ํ ๋นํ๊ฒ ๋๋ค.
EUI-64 Format์ ์งํค๊ธฐ ์ํด์ ์ด๋ค ํ์์ ๋ง์กฑํด์ผ ํ๋์ง ์กฐ๊ธ ๋ ์์ธํ ์์๋ณด์. ๋ชจ๋ ๊ธฐ๊ธฐ๋ค์ ๊ฐ์ ๋คํธ์ํฌ ์์์ ๊ฐ์ Mapping ๊ธฐ๋ฒ์ ์ฌ์ฉํด์ผํ๋๋ฐ, ๋์ฒด์ ์ผ๋ก Data Link Layer์์์ ๋ณดํธ์ ์ธ ๋ฐฉ๋ฒ์ IEEE 802 MAC ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ค. ์ด ๋ Data Link Layer์์ ์ฌ์ฉํ๋ MAC ์ฃผ์๋ 48 ๋นํธ์ ๊ธธ์ด์ด๊ณ EUI-64๋ ์ด MAC ์ฃผ์๋ฅผ ์ด์ฉํ์ฌ 64 ๋นํธ๋ฅผ ์ด๋ฃฌ๋ค๊ณ ํ๋๋ฐ, ๋ถ์กฑํ 16 ๋นํธ๋ ์ด๋ป๊ฒ ๋ฉ๊พธ์ด IPv6 ์ฃผ์๋ฅผ ๋ง๋ค์ด ๋ผ๊น?
Data Link Layer์ 48 ๋นํธ ๊ธธ์ด์ ์ฃผ์๋ 24 ๋นํธ ์ฉ ์ชผ๊ฐ์ Upper 24 ๋นํธ, Lower 24 ๋นํธ๋ก ๋ณผ ์ ์๋ค. Upper 24 ๋นํธ๋ OUI (Organizationally Unique Identifier)๋ฅผ ์๋ฏธํ๊ณ Lower 24 ๋นํธ๋ ๊ธฐ๊ธฐ์ Identifier๋ฅผ ์๋ฏธํ๋ค. EUI-64 Format์ MAC ์ฃผ์์ Upper์ Lower ์ฌ์ด์ ๋ชจ๋ 1๋ก ์ฑ์์ง 16 ๋นํธ๋ฅผ ์ฝ์
ํ์ฌ 64 ๋นํธ๋ฅผ ํ์ฑํ๋ค.
EUI-48 โ EUI-64 โ Modified EUI-64 ๋ฅผ ๋ง๋๋ ๊ณผ์ ์ ๊ทธ๋ฆผ์ผ๋ก ์ดํด๋ณด์.
์ด ๋, IPv6 ์ฃผ์๋ EUI-64 Format์ ์ฌ์ฉํ๊ธด ํ๋, Modfied EUI-64 Format์ ์ด์ฉํจ์ ์ ์ํ์!
๋จ์ํ EUI-64 Format์ ์ด์ฉํ๋ ๊ฒ์ด ์๋๋ผ 3๋ฒ ๊ณผ์ ์ฒ๋ผ 7๋ฒ์งธ ๋นํธ์ ๋ํด์ ์ํฉ์ ๋ง๋ ๋ณํ๋ฅผ ์ฃผ์ด ์ด์ฉํ๋ค. ์์ ์กฐ๊ฑด์ด ๋ํ๋ด๋ ๊ฒ์ ํตํด ์ ์ ์๋ฏ์ด, IPv6 ์ฃผ์๋ฅผ ๋นํธ๋ก ๋ํ๋ด์ด ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ์ 7๋ฒ์งธ ๋นํธ๋ฅผ ๋ณด๋ฉด Uniqueํจ์ ์ ์ ์๋ค. IPv6 ์ฃผ์๊ฐ Uniqueํ๋ค๋ฉด IID์ ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ์ 7๋ฒ์งธ ๋นํธ๋ฅผ 1๋ก, ๊ทธ๋ ์ง ์๋ค๋ฉด 0์ผ๋ก ์ฑ์๋ฃ๋๋ค.
MAC ์ฃผ์์ ์ ๋ฌ
MAC ์ฃผ์์ ํํ๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค.
์ด ๋ 16์ง์๋ก ํํ๋ ๊ฐ ๊ฐ๋ค์ด ์ค์ ๋ก ํต์ ์์ ์ ์ก๋ ๋๋ ๋ค์งํ์ ์ ๋ฌ๋๋ค.
์ด๋ฐ ๊ณผ์ ์ด ์ผ์ด๋๋ ๊ฒ์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๊ฐ Octet๋ณ ํํ์ด ์์ ๋, ๊ฐ Octet์ LSB๋ถํฐ (๋์์๋ถํฐ) ์ ์ก์ด ๋๊ธฐ ๋๋ฌธ์ด๋ค.
5) IPv6 Special Address
IPv6 ์ฃผ์์ Speical Address๋ IPv4 ์ฃผ์์ ํฌ๊ฒ ๋ค๋ฅผ ๊ฒ์ ์๋ค.
Unspeicified Address
0:0:0:0:0:0:0:0 ํน์ :: ์ฃผ์๋ IPv6 ์ฃผ์์ ๋ถ์ฌ๋ฅผ ์๋ฏธํ๋ค. IPv4 ์ฃผ์์ 0.0.0.0๊ณผ ๋์ผํ ํํ์ด๋ค. Uniqueํ ์ฃผ์๋ฅผ ๋ฐ๊ธฐ ์ํด ์ ๋ฌํ๋ Packet์ Source์ ์์ ์ฃผ์๋ก ์ด์ฉ๋๋ค.
Loopback Address
IPv4 ์ฃผ์์ 127.0.0.1๊ณผ ๋์ผํ ํํ์ด๋ค. IPv6 ์ฃผ์์์๋ 0:0:0:0:0:0:0:1 ํน์ :: 1๋ก ํํํ๋ค. Loopback ์ฃผ์๋ฅผ ํฅํ Packet์ ์ ๋๋ก IPv6 Router๋ก Forward ๋์ง ์๋๋ค. (๋ค์ Link๋ก๋ ๋๊ฐ์ง ์๋ ๊ฒ๋ ๋น์ฐํ๋ค.)
IPv4-Mapped IPv6 Address
[1] IPv4-Compatiable IPv6 Address (Deprecated)
IPv6 ์ฃผ์๋ฅผ ์ด์ฉํ๋ ์ปดํจํฐ์ธ๋ฐ IPv4 ์ฃผ์์ ์ฐ๊ฒฐ๋ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ค.
[2] IPv4-Mapped IPv6 Address
IPv4 ์ฃผ์๋ฅผ ์ด์ฉํ๋ ์ปดํจํฐ์ธ๋ฐ IPv6 ์ฃผ์๋ฅผ ํ ๋นํ๋ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ค.
์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ ์ํฉ์ผ ๋, ์ฃผ์๋ฅผ ๋ค์๊ณผ ๊ฐ์ด Mapping ํ๋ค. 80 ๋นํธ๋ 0์ผ๋ก ์ฑ์ฐ๊ณ , 16 ๋นํธ๋ 1๋ก ์ฑ์ด ๋ค (๋ง์ผ ์ด ๋ถ๋ถ์ 16 ๋นํธ๊ฐ 0์ผ๋ก ์ฑ์์ ธ ์๋ค๋ฉด ์ด๋ IPv4-Mapped IPv6 Address๊ฐ ์๋ IPv4-Compatiable IPv6 Address์ด๋ค.), 32 ๋นํธ ๊ธธ์ด์ IPv4๋ฅผ ์์ด๋ค.
6) Unicast
IPv6 Unicast ์ฃผ์์ ๋ฒ์๋ ํฌ๊ฒ 3๊ฐ์ง๋ก ๋๋๋ค.
Scope
[1] Link-Local Scope
Link-Local Addresses๋ผ๊ณ ๋ถ๋ฅธ๋ค. ํ๋์ Link ๋ฒ์ ๋ด์ ์ํ ๋ชจ๋ Host๋ค์ ๋ํ Identifier๋ฅผ ์๋ฏธํ๋ค.(Link-Local Scope์ ํด๋นํ๋ ์ฃผ์๋ Link-Local Addresses์ Site-Local Addresses๊ฐ ์๋๋ฐ ํ์๋ Deprecated ๋์๋ค.)
[2] Unique-Local Scope
Unique-Lcoal Addresses๋ผ๊ณ ๋ถ๋ฅธ๋ค. ํน๋ณํ ๊ด๋ฆฌ๋๋ ๋ฒ์ ํน์ ๋ณ๋์ Link ๋ด์ ์ํ ๋ชจ๋ Host๋ค์ ๋ํ Identifier๋ฅผ ์๋ฏธํ๋ค.
[3] Global Scope
Global Unicast Addresses๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๋ชจ๋ ์ธํฐ๋ท ์์์ ๊ธฐ๊ธฐ๊ฐ ๋๋ฌํ ์ ์๋ Identifier๋ฅผ ์๋ฏธํ๋ค.
Address Type
[1] Global Unicast Address
ํด๋น Unicast ์ฃผ์๋ IPv4์ ์ฃผ์์ ์ผ๋งฅ์ํตํ๋ค. Globally Routableํ๊ณ , Reachableํ๋ค. ๋ค๋ง ์ํ์ ์ด๋ฉด์๋ ๊ณ์ธต์ ์ธ IPv4 ์ฃผ์ ํ๊ฒฝ์ ์ธํฐ๋ท๊ณผ ์กฐ๊ธ์ ๋ค๋ฅธ ์ ์ด ์๋ค๋ฉด, IPv6 ์ฃผ์ ํ๊ฒฝ์ ์ธํฐ๋ท์ ์ค๊ณ๋ถํฐ ํจ์จ์ ์ด๊ณ ๊ณ์ธต์ ์ธ ์ฃผ์์ Routing์ ๋ชฉ์ ์ผ๋ก ๋์ด ์๋ค๋ ๊ฒ์ด๋ค.
Globalํ Scope๋ฅผ ๋์ด ํต์ ํ๋ ค๋ Unicast ์ฃผ์๋ ์ต์์ 3๊ฐ์ ๋นํธ๊ฐ 001๋ก ๋์ด ์๋ค.
๊ทธ๋ฆผ์์ ์ ์ ์๋ฏ์ด Global Unicast Address๋ 3๊ฐ์ง ์์ญ์ผ๋ก ๋๋์ด์ ธ์๋ค. ์ฒซ 3๊ฐ์ ๋นํธ๋ 001๋ก ๊ณ ์ ๋์ด ์๊ณ , ๊ทธ ์ธ์ Global Routing Prefix (Site Prefix), Subnet ID, Interface ID๋ก ๋๋์ด์ ธ ์๋ค.
์ฌ๊ธฐ์ Global Routing Prefix๋ Leaf Site๋ก ๊ธฐ๊ด์ ๋ฑ๋ก๋๋ค. ์ด๋ Provider Prefix๋ก์จ ๋ฑ๋ก๋๋ค. ์ด๋ ๊ฒ ๋ฑ๋ก๋ Prefix๋ ์ถ๊ฐ 16 ๋นํธ๋ฅผ Subnet ID๋ก ์ด์ฉ์ด ๊ฐ๋ฅํ๋ค. ๋ฐ๋ผ์ ๊ธฐ๊ด์ ์ต๋ ๊ฐ์ Subnet์ ์์ฑํ ์ ์๋ค. Host ๋ถ๋ถ์ Node์ Interface Identifier๋ก์จ ๊ธฐ๋ก๋๋ค. ์ด์ ๋ํ ์๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค.
[2] Link-Local Address
์ฃผ๋ก Link ์์ ์ด์ ์ฌ์ด์ ์ฌ์ฉ๋๊ฑฐ๋, NDP (Neighbor Discovery Processes)์์ ์ฌ์ฉ๋๋ค.
์ด ์ฃผ์๋ ๋ค๋ฅธ Unicast ์ฃผ์๊ฐ ์กด์ฌํ์ง ์์๋ Default Gateway๋ก๋ถํฐ ์ปดํจํฐ ๋ถํ
์ ์๋์ผ๋ก ์ค์ ๋๋ค. ์ด ๋ Link-Local Address์ Prefix๋ FE80::/10์ด๋ค. (์ด์ด์ง๋ ๋๋จธ์ง 54 ๋นํธ๋ 0์ผ๋ก ์ฑ์์ง๊ธฐ ๋๋ฌธ์ FE80::/64๋ก ๋ณด๊ธฐ๋ ํ๋ค.)
[3] Site-Local Address (Deprecated)
Site-Local Address๋ IPv4 ์ฃผ์์์์ Private ์ฃผ์์ ๋์ผํ๋ค.
(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 ๋ด์ ์ฃผ์๋ค๊ณผ ๋์ผํ๋ค.)
Site-Local Address์ ๋ฒ์๋ ํด๋น Site์๋ง ํด๋นํ๋ค. Site-Local Address๋ ๋ค๋ฅธ Site์์๋ ์ ๊ทผ์ด ๋ถ๊ฐ๋ฅํ๋ค. ๋ฐ๋ผ์ ๋ฐ๋๋ก๋ Router๋ Site-Local Traffic์ Site ๋ฐ์ผ๋ก Forward ํด์๋ ์ ๋๋ค.
Site-Local Address์ Prefix๋ FEC0::/10์ด๋ค. (Link-Local Address์ ๋ฌ๋ฆฌ ์๋์ผ๋ก ์ค์ ๋์ง๋ ์์ง๋ง, Link-Local Address์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋๋จธ์ง 54 ๋นํธ๋ 0์ผ๋ก ์ฑ์์ง๋ฏ๋ก FEC0::/64๋ก ๋ณด๊ธฐ๋ ํ๋ค.)
[4] Unique Local IPv6 Unicast Address
7) Anycast
Anycast๋ ์๋ก ๋ค๋ฅธ Node์ Interface์ ๋์ผํ Anycast ์ฃผ์๊ฐ ํ ๋น๋์ด ์๋ ๊ฒฝ์ฐ์ ์ด์ฉํ ์ ์๋ค.
Anycast๋ก ์ ๋ฌ๋ Packet๋ค์ ์๋ก ๋ค๋ฅธ Node์์ Anycast ์ฃผ์๊ฐ ์ ๊ทผ ๊ฐ๋ฅํ Interface์ ์ ๋ฌ๋๋ค. ์ด ๋, Packet์ Routing Protocol์ ๋ฐ๋ผ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒ์ผ๋ก ๊ฒฐ์ ๋ Node์ Interface๋ก ๊ฐ๊ฒ ๋๋ค. (๋์ผํ Anycast ์ฃผ์๋ฅผ Node๋ค์ด ๊ฐ๊ณ ์๋ค๊ณ ํด๋ ์๋ฌด๋ฐ๋ก๋ ๊ฐ๋ ๊ฒ์ด ์๋๋ค.)
์์ฒ๋ผ Routing Protocol์ด ์ด๋๋ก ํฅํด๊ฐ๋์ง ๋ณธ ๊ฒ์ฒ๋ผ, Anycast๋ฅผ ์ฌ์ฉํ๋ ์ฃผ๋ ๋ชฉ์ ์ Traffic์ ๋ํ Load Balancing์ด๋ค. (Packet์ ์ฒ๋ฆฌํ ์ ์๋ Node๊ฐ ์ฌ๋ฟ์ธ ๊ฒฝ์ฐ, ๊ฐ์ฅ ๊ฐ๊น์ด Node๋ก ๊ฐ์ผ๋ก์จ Traffic์ด ๋ชฐ๋ฆฌ๋ ๊ฒ์ ์ด๋ ์ ๋ ๋ฐฉ์งํ ์ ์๋ค.) ์ค์ ๊ตฌ๊ธ์ Cloud Service๋ก ์ด์ฉํ๋ Load Balancer๋ Anycast ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํ๋ค.
์ด์ธ์๋ ์ ๊ทธ๋ฆผ์ฒ๋ผ DNS Server ์ญ์ Anycast๋ฅผ ํตํด ๋์ ๋ณผ ์ ์๋ค. DNS Server๊ฐ Anycast๋ฅผ ์ด์ฉํ๊ฒ ๋ ๋ฐฐ๊ฒฝ์ ์กฐ๊ธ ์ดํด๋ณด๋ฉด DNS Server์ ๋ํ ๊ณต๊ฒฉ๊ณผ ๋ง์ ์ฐ๊ด์ด ์๋ค. 2002๋
10์ Root DNS DDoS Attack์ด ์์๊ณ ์ด๋ก ์ธํด ์ ์ธ๊ณ์ ์๋ 13๊ฐ์ Root DNS ์ค 8๊ฐ๊ฐ ์ฃฝ์ด๋ฒ๋ฆฌ๋ ์ฌ๊ฑด์ด ์์๊ณ , 2003๋
1์์๋ Worm DDos Attack์ผ๋ก 5๊ฐ์ Root DNS๊ฐ ์ฃฝ์์๋ค. ์ด ๋๋ฌธ์ ๋ง์ ์ฌ์ฉ์๋ค์ด DNS Server๋ฅผ ์ด์ฉํ์ง ๋ชปํ๋ ์ผ์ด ์์๋ค. ๋ฐ๋ผ์ DNS Server๋ฅผ ์ด์ฉํ ๋, Anycast ๋ฐฉ์์ ์ด์ฉํ๊ฒ ํ์ฌ ๋ง์ผ ํ ์ชฝ ์ง์ญ์ ์๋ DNS Server๊ฐ ์ฃฝ๋๋ผ๋ ๋ค๋ฅธ ์ง์ญ์ DNS Server๋ฅผ ์ด์ฉํ ์ ์๋๋ก ๋ง๋ค์ด์ ์ด๋ฐ ํ์์ ๋์ฒํ ์ ์๊ฒ๋ ๋ง๋ค์๋ค. ์ด์ ๋ํ ์ ๋ช
ํ ์๋ก๋ ๊ตฌ๊ธ์ Public DNS 8.8.8.8์ ์๋ค. ๊ตฌ๊ธ์ DNS๋ ์ ์ธ๊ณ์ ๊ต์ฅํ ๊ด๋ฒ์ํ๊ฒ ํฉ์ด์ ธ ์๋ค. ๋ง์ผ ๋ด๊ฐ ๊ตฌ๊ธ์ Public DNS๋ฅผ ์ด์ฉํ๋ฉด, ๋ด ์ง์ญ์์ ๊ฐ์ฅ ์ต์ ์ Routing Path์ ์๋ ์ง์ญ์ DNS ์๋น์ค๋ฅผ ์ด์ฉํ๊ฒ ๋๋ค. (๋ณดํต ์ด๋ฐ ์๋น์ค๊ฐ ์ ๊ณต๋๋ ๊ณณ์ ์ง์ญ์ ๊ตฌ๊ธ ์๋น์ค๋ฅผ ์ํ ์ต์ ์ธ ์ง์ญ์ ๋๋ค. ์์์์ ๊ฒฝ์ฐ ๋๋ง๊ณผ ํ์ฝฉ์ ์์นํด์๋ค.)
๋ํ IPv6 ์ฃผ์์ Anycast๋ Network Redundancy์ ๋ชฉ์ ์ ๊ฐ๊ณ ์๊ธฐ๋ ํ๋ค. (์ค๊ณ๋ ํ์ง๋ง ์ฐ๋ ์ฌ๋์ ์ ์๋ค.)
๋ง์ผ A Server์ B Server์ Anycast ์ฃผ์๊ฐ ๋์ผํ๊ณ A Server์ ํต์ ์ด ์์๊ณ B Server์ ํต์ ์ ํ๊ณ ์์๋ค๊ณ ํ๋ค๋ฉด, Client Anycast๋ฅผ ์๋ํ ๋ ๋ณ๋์ ์ค์ ์์ด ์๋์ผ๋ก B Server๋ก ํต์ ์ ๋ณด๋ด๊ฒ ๋๋ค.
๋ง์ง๋ง์ผ๋ก Subnet-Router Anycast Address๋ฅผ ์์๋ณด์. Subnet-Router Anycast Address๋ ์ฌ์ ์ ์ ์๋ ์ฃผ์์ด๋ค. (Anycast์์์ Subnet Prefix๋ ํน์ Link์ ๋ํด์ ์์ฉํ๋ Identifier์ด๋ค.) ์ด ๋, Subnet-Router Anycast Address๋ ์ด๋ค Node๊ฐ ์ฌ๋ฌ Router๋ค ์ค ํ๋์ ํต์ ์ ํด์ผํ๋ ๊ฒฝ์ฐ ์ด์ฉ๋๋ค. (์ฆ, Anycast์ธ๋ฐ ํน์ Subnet์ ๋ํ Anycast๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.) Subnet-Router Anycast Address๊ฐ ์์ฑ๋๋ฉด, ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด Subnet Prefix์ ๋นํธ๊ฐ ์ ์ ํ ๊ฐ์ผ๋ก ์ ํด์ง๋ฉฐ ๋๋จธ์ง ๋นํธ๋ 0์ผ๋ก ํ ๋น๋ ์ํ๋ก ์ด์ฉ๋๋ค.
์ด๋ฐ Subnet-Router Anycast Address์ ๋ํด์ ์ ๋ฆฌํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
โข
Subnet์ด ์๋ Router์ ๋ชจ๋ Interface๋ค์ ํด๋น Interface์ Subnet์ ์ํด Subnet-Router Anycast Address๊ฐ ํ ๋น๋์ด ์๋ค.
โข
Subnet-Router Anycast Address๋ ํน์ Subnet๊ณผ ์ฐ๊ฒฐ๋ ๊ฐ์ฅ ๊ฐ๊น์ด Router์ ํต์ ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
์ด์ Anycast์ ๋ํ ์ค๋ช
๋ค์ด๊ณ , ๋ง์ง๋ง์ผ๋ก ์ฃผ์ํ ์ ์ Anycast ์ฃผ์๋ IPv6 Packet์ Source ์ฃผ์๋ก ์ฌ์ฉ๋์ด์๋ ์ ๋๋ค!
8) Multicast
IPv6 ์ฃผ์์์๋ ๋ ์ด์์ Broadcast๋ ์กด์ฌํ์ง ์๋๋ค. ์ค๋ก์ง Multicast๋ก๋ง ๋ถํน์ ๋ค์์๊ฒ Packet์ ๋ณด๋ผ ์ ์๋ค. (IPv6 ์ฃผ์์์๋ Unicast, Anycast, Multicast๋ง์ด ์กด์ฌํ๋ค.) IPv6 ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๋ชจ๋ Node์์๋ Multicast๋ฅผ ์ง์ํด์ผ ํ๋ค. Multicast๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด IPv6์์๋ ์ฌ์ฉํ๊ณ ์ ํ๋ ๋๋ถ๋ถ์ ์๋น์ค๊ฐ ์๋ํ์ง ์๋๋ค. (IPv4 ์ฃผ์๊ฐ ๊ณตํ๋์์ ๋๋ Multicast์ ๋ํ ํ์ค์ด ์กด์ฌํ์ง ์์์๊ธฐ ๋๋ฌธ์, ARP ํน์ DHCP์ ๊ฐ์ Protocol์ Broadcast์ ์์กดํ์๋ค.) ๋จ์ํ ์๊ฐํด์ Broadcast๋ณด๋ค Multicast๊ฐ ๋ ์ข๊ธฐ ๋๋ฌธ์ Broadcast๋ ์ฌ์ฉํ์ง ์๊ฒ ๋์๋ค. LAN์ ํฌ๊ธฐ๊ฐ ์ปค์ง๊ณ Switch๊ฐ ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ํ๋์ Broadcast๋ ๋ฌธ์ ๊ฑฐ๋ฆฌ์ด๋ค.
1.
IPv6 ์ฃผ์์์ Multicast์ Traffic์ IPv4์ ๊ฐ์ด ์ํ๋๋ค.
2.
IPv6 ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ Node์์๋ ๋์์ ์ฌ๋ฌ ๊ฐ์ Multicast ์ฃผ์์ ๋ํด์ Listen ํ ์ ์๋ค.
3.
Node๋ ์ธ์ ๋ ์ง Multicast ๊ทธ๋ฃน์ ์ฐธ๊ฐํ๊ณ ๋๊ฐ ์ ์๋ค.
4.
Multicast ์ฃผ์๋ Source ์ฃผ์ ํน์ Intermediate Destination ์ฃผ์๋ก ์ฌ์ฉ๋ ์ ์๋ค.
5.
Multlicast์ ์ฃผ๋ ๋ชฉ์ ์ Node ๊ฐ์ ์ฃผ๊ณ ๋ฐ๋ Packet์ ์๋ฅผ ์ต์ ํํ์ฌ ๋์ญํญ์ ์๋ผ๋ ํจ์จ์ ์ธ ๋คํธ์ํฌ๋ฅผ ์ ์งํ๊ธฐ ์ํ ๊ฒ์ด๋ค.
๊ทธ๋ ๋ค๋ฉด Mutlicast ์ฃผ์ ํํ๋ ์ด๋ค ์์ผ๊น? Multicast๋ฅผ ์ด์ฉํ ๋ IPv6 ์ฃผ์์ ์ฒซ Octet์ ๋ชจ๋ ๋นํธ๋ค์ 1๋ก ์ฑ์์ง๋ค. ์ด๋ ๊ณง ์ฒซ Octet์ด FF๋ก ์์ํจ์ ์๋ฏธํ๋ค. (๋นํธ Masking์์๋ ์ฝ๊ฒ Mutlicast์์ ํ์ธํ ์ ์๋ค.)
์ ๊ทธ๋ฆผ์์ ์ ์ ์๋ฏ, flgs์ scop์ ๋ํ ํญ๋ชฉ์ด ์๋๋ฐ ์ด๋ฅผ ํตํด์ ํน์ ๋ฒ์์ ์ฃผ์์ ๋ํ ํ์
์ ๊ตฌ๋ถ์ง์ ์ ์๋ค. ๋๋จธ์ง 112 ๋นํธ๋ค์ Multicast์ ๋ํ ๊ทธ๋ฃน ID๋ฅผ ํํํ๋๋ฐ ์ฌ์ฉ๋๋ค.
IPv6 ์ฃผ์์์ Flag๋ ๋ค์๊ณผ ๊ฐ๋ค.
T๋ Transient Flag, P๋ Prefix Flag, R์ Rendezvous Point Address Flag๋ฅผ ์๋ฏธํ๋ค.
T ๊ฐ์ด 0์ด๋ฉด IANA (Internet Assigned Numbers Authority์ ์ฝ์ด๋ก IPv4, IPv6 ๋ฑ์ ํ ๋น์ ๊ด์ฌํ๋ ๊ธฐ๊ด์ด๋ค.) ์ ์ํด ํ ๋น๋ Permanent Assigned Multicast Address์ด๊ณ , T ๊ฐ์ด 1์ด๋ฉด Non-Permanent Assigned Multicast Address์ด๋ค.
Prefix Flag๋ RFC3306์ ์ํด ์ ์๋ Flag์ผ๋ก์จ, Unicast ์ฃผ์์ Prefix์ ๊ธฐ๋ฐํ Multicast ์ฃผ์์ธ์ง์ ๋ํ Flag์ด๋ค.
R Flag๋ Rendezvous Point Address๋ฅผ ๋ด์ฅํ๊ณ ์๋ ์ฌ๋ถ์ ๋ฐ๋ผ ์ค์ ๋๋ Flag์ด๋ค.
IPv6 ์ฃผ์์์ Scope๋ ๋ค์๊ณผ ๊ฐ๋ค.
Scope์ ๋ํด์ Link์ ์๋ฏธ๋ Interface-Local, Link-Local, Subnet-Local๋ก 3๊ฐ์ง๋ฅผ ๊ฐ๋๋ค. Interface-Local์ FF01::1 ํน์ ::1๋ก Loopback์ ๋งํ๊ณ , Link-Local์ FF02::1 (๋ชจ๋ Node), FF02::2 (๋ชจ๋ Router)๋ฅผ ๋งํ๋ค. Link-Local์ ๊ฒฝ์ฐ ๊ฐ์ Link ์์ ์๋ ์ธ์ ํ Node์ ํต์ ํ ๋ ์ฌ์ฉ๋๋ค. Subnet-Lcoal์ ์ฃผ๋ก ํ์ฉ๋์ง๋ ์๋๋ค.
9) Solicited-Node Multicast Address
Solicited-Node Multicast Address๋ IPv4 ์ฃผ์์์๋ ํ์ํ์ง ์์์ง๋ง, IPv6 ์ฃผ์์์๋ ํ์ํ ์ฃผ์์ด๋ค. ์ด ์ฃผ์๋ DAD (Duplicate Address Detection)์ ํ์ธํ ํ์ ํ ๋น์ ๋ฐ์ ์ ์๋ค. DAD๋ NDP (Neighbor Discovery Protocol)์ ์ผ๋ถ๋ก์จ, DAD๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ฌ Node์์ Stateless Auto Configuration์ ํตํด ์ฌ์ฉํ๋ ค๊ณ ํ๋ IPv6 ์ฃผ์์ ๋ํด์ Local-Link์์ ์ด๋ฏธ IPv6 ์ฃผ์๊ฐ ์ฌ์ฉ ์ค์ธ์ง ํ์ธ์ ํ ์ ์๋ค. Solicited-Node Multicast Address๋ ๋ค๋ฅธ Node์์ ์ด๋ฏธ ๊ตฌ์ฑ๋ Unicast ์ฃผ์ ํน์ Anycast ์ฃผ์๋ฅผ ๊ฒ์ํ์ฌ Local-Link์์ ์ฌ์ฉ ์ค์ธ ์ฃผ์๋ฅผ ํ์ธํ๋๋ฐ ์ฌ์ฉ๋๋ค.
Solicited-Node Multicast Address์ Prefix๋ FF02::1:FF00:0000/104๋ก์จ Link-Local์ Multicast ์ฃผ์์ Prefix๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค. ์ฃผ์ด์ง 104 ๋นํธ๋ฅผ Prefix๋ก ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋จ์ 24 ๋นํธ ๊ฐ์ Unicast ์ฃผ์ ํน์ Anycast ์ฃผ์์ ๋ 24 ๋นํธ๋ฅผ ๋ณต์ฌํด์์ Solicited-Node Multicast Address๋ก ์ด์ฉํ๋ค. ๋ณํ ๊ณผ์ ์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค.
์๋ฅผ ๋ค์ด์ Unicast ์ฃผ์๊ฐ FE80::2AA:FF:FE28:9C5A๋ผ๊ณ ํ๋ค๋ฉด, Solicited-Node Multicast Address๋ FF02::1:FF28:9C5A๊ฐ ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ์ด๋ฐ Solicited-Node Multicast Address๋ ์ ํ์ํ ๊ฒ์ผ๊น? ํ์ฌ ๋ด IPv6 ์ฃผ์๋ฅผ ๋ค๋ฅธ ๊ณณ์์ ์ด์ฉํ๊ณ ์๋์ง DAD๋ฅผ ํตํ ํ์ธ์ ์ํด Destination ์ฃผ์๋ก ์ด์ฉํ๋ ๊ฒ์ ์์ธกํ ์ ์๋๋ฐ, ์์ํ๋๋ก Solicited-Node Mutlicast Address๋ IPv4 ์ฃผ์์์ ARP์ ๋์ฒด๋ก ์ด์ฉํ๊ธฐ ์ํด ์กด์ฌํ๋ค. IPv6 ์ฃผ์์์๋ ARP๊ฐ ์กด์ฌํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ๋๋ฉฐ, ์ด๋ ํ์ฌ์ Node ํน์ Router์๊ฒ ์ธ์ ํ Node ํน์ Router์ Data Link Layer ์ฃผ์๋ฅผ ํ์ธํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. IPv4 ์ฃผ์์์์ ARP์ ๋ง์ฐฌ๊ฐ์ง๋ก, IPv6 Packet์ Data Link Layer์ Frame์ผ๋ก ์ ๋ฌ์ ํ๊ธฐ ์ํด์ ์ธ์ ํ Node์ Data Link Layer์ ์ฃผ์๊ฐ ํ์ํ๋ค.
10) IPv6 ๊ธฐํ ๋ฑ๋ฑ...
IPv4 ์ฃผ์์ ๊ฒฝ์ฐ ๋คํธ์ํฌ ์ด๋ํฐ์ ๋ถ์ ํ๋์ Host๋ ํ๋์ IPv4 ์ฃผ์๋ฅผ ๊ฐ์ก์์ง๋ง, IPv6 ์ฃผ์์ ๊ฒฝ์ฐ ํ๋์ Interface์๋ง ์ฌ๋ฌ IPv6 ์ฃผ์๋ฅผ ๊ฐ์ง ์ ์๋ค.
Summary for Unicast on Host & Router
[1] IPv6 Host๋ ๋ค์๊ณผ ๊ฐ์ Unicast ์ฃผ์๋ค์ ํ ๋น ๋ฐ์ ์ ์๋ค.
โข
๊ฐ Interface ๋ณ Link-Local Address
โข
๊ฐ Interface ๋ณ Site-Local Address ๋ฐ ์ฌ๋ฌ Global Unicast Address
โข
Loopback Interface ๋ณ Loopback Address
[2] IPv6 Router๋ ๋ค์๊ณผ ๊ฐ์ Unicast ์ฃผ์๋ค์ ํ ๋น ๋ฐ์ ์ ์๋ค.
โข
๊ฐ Interface ๋ณ Link-Local Address
โข
๊ฐ Interface ๋ณ Site-Local Address ๋ฐ ์ฌ๋ฌ Global Unicast Address
โข
Subnet-Router Anycast Address
โข
Loopback Interface ๋ณ Loopback Address
์ฆ, IPv6 ์ฃผ์๋ฅผ ์ด์ฉํ๋ Host๋ค ๋ฐ Router๋ค์ IPv4 ์ฃผ์์ ๋ฌ๋ฆฌ Packet์ ๋ฐ์ ์ ์๋ ์ฃผ์๊ฐ ์ ์ด๋ 2๊ฐ ์ด์์ด ์กด์ฌํ๋ค. ์ด๋ฅผ Logically Multihomed๋ผ๊ณ ํ๋ค. (Local-Link Traffic์ ๋ฐ์ ์ ์๋ Link-Local Address, Site-Local Address ํน์ Global Address์ ๊ฐ์ด Routableํ ์ฃผ์) ๋ํ ๊ฐ Host๋ค ๋ฐ Router๋ค์ ์ด๋ ๊ฒ 2๊ฐ์ ์ฃผ์๋ก Packet์ ๋ฐ์ ์ ์์ ๋ฟ ์๋๋ผ Multicast Address์ ๋ํด์๋ Traffic์ ๋ฐ์ ์ ์๋๋ก Listen ํ๊ณ ์๋ค.
Summary for Multicast on Host & Router
[1] IPv6 Host๋ ๋ค์๊ณผ ๊ฐ์ Multicast ์ฃผ์๋ค์ ํ ๋น ๋ฐ์ ์ ์๋ค.
โข
Interface-Local Scope์ ๋ชจ๋ Node๋ค์ ๋ํ Multicast Address (FF01::1)
โข
Link-Local Scope์ ๋ชจ๋ Node๋ค์ ๋ํ Multicast Address (FF02::1)
โข
๊ฐ Interface์์์ ๋ค๋ฅธ Unicast ์ฃผ์๋ค์ ํฅํ Solicited-Node Multicast Address
โข
๊ฐ Interface๊ฐ ์ํ ๊ทธ๋ฃน์ Multicast Address
[2] IPv6 Router๋ ๋ค์๊ณผ ๊ฐ์ Multicast ์ฃผ์๋ค์ ํ ๋น ๋ฐ์ ์ ์๋ค.
โข
Interface-Local Scope์ ๋ชจ๋ Node๋ค์ ๋ํ Multicast Address (FF01::1)
โข
Interface-Local Scope์ ๋ชจ๋ Router๋ค์ ๋ํ Multicast Address (FF01::2)
โข
Link-Local Scope์ ๋ชจ๋ Node๋ค์ ๋ํ Multicast Address (FF02::1)
โข
Link-Local Scope์ ๋ชจ๋ Router๋ค์ ๋ํ Multicast Address (FF02::2)
โข
Site-Local Scope์ ๋ชจ๋ Router๋ค์ ๋ํ Multicast Address (FF05::2)
โข
๊ฐ Interface์์์ ๋ค๋ฅธ Unicast ์ฃผ์๋ค์ ํฅํ Solicited-Node Multicast Address
โข
๊ฐ Interface๊ฐ ์ํ ๊ทธ๋ฃน์ Multicast Address
4. Public / Private IP Address
IPv4 ์ฃผ์ ์ฒด๊ณ๋ ํฌ๊ฒ 2๊ฐ์ง, Public IP ์ฃผ์์ Private IP ์ฃผ์๋ก ๋๋์ด์ ธ์๋ค.
๊ทธ๋ ๋ค๋ฉด IP ์ฃผ์๋ฅผ Public๊ณผ Private๋ก ๋๋ ์ด์ ๋ ๋ฌด์์ผ๊น?
๊ฐ์ฅ ํฐ ์ด์ ๋ ๋ฐ๋ก ํ ๋น ๊ฐ๋ฅํ IPv4์ฃผ์์ ๊ณ ๊ฐ์ด๋ค. IPv4 ์ฃผ์ ์ฒด๊ณ์์ ์ด๋ก ์์ผ๋ก ์ฝ 43์ต ๊ฐ์ ๋จ๋ง์ ์๋ณํ ์ ์๋ค. ํ์ง๋ง ์ ์ ์ธํฐ๋ท ์ฌ์ฉ์๋ ๋์ด๋๊ณ ํต์ ์ด ๊ฐ๋ฅํ ๊ธฐ๊ณ๋ค์ด ์ ์ ์๊ฒจ๋๋ฉด์ 43์ต ๊ฐ์ ์ฃผ์๊ฐ ๋ถ์กฑํ ์๋๊ฐ ์๋ค. ๊ทธ๋์ Public IP ์ฃผ์์ Private IP ์ฃผ์๋ก ๋๋์ด IP ์ฃผ์๋ฅผ ์ ์ฝํ๋ ์์คํ
์ ๋ง๋ค์๋ค.
1) Public IP Address
์ธํฐ๋ท ์ฌ์ฉ์์ Local ๋คํธ์ํฌ๋ฅผ ์๋ณํ๊ธฐ ์ํด ISP(์ธํฐ๋ท ์๋น์ค ๊ณต๊ธ์)๊ฐ ์ ๊ณตํ๋ IP ์ฃผ์์ด๋ค. Public IP ์ฃผ์๋ ์ธ๋ถ์ ๊ณต๊ฐ๋์ด ์๋ IP ์ฃผ์์ด๋ค.
โข
Public IP ์ฃผ์๋ ์ ์ธ๊ณ์์ ์ ์ผํ IP ์ฃผ์๋ฅผ ๊ฐ๋๋ค.
โข
Public IP ์ฃผ์๊ฐ ์ธ๋ถ์ ๊ณต๊ฐ๋์ด ์๊ธฐ์ ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋ ๋ค๋ฅธ PC๋ก๋ถํฐ์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค. ๋ฐ๋ผ์ Public IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ๋ฐฉํ๋ฒฝ ๋ฑ์ ๋ณด์ ํ๋ก๊ทธ๋จ์ ์ค์นํ ํ์๊ฐ ์๋ค.
2) Private IP Address
์ผ๋ฐ ๊ฐ์ ์ด๋ ํ์ฌ ๋ด ๋ฑ์ ํ ๋น๋ ๋คํธ์ํฌ์ IP ์ฃผ์์ด๋ฉฐ, Local IP, ๊ฐ์ IP๋ผ๊ณ ๋ ํ๋ค. IPv4 ์ฃผ์ ๋ถ์กฑ์ผ๋ก ์ธํด Subnetting๋์๊ธฐ ๋๋ฌธ์ Router์ ์ํด Local ๋คํธ์ํฌ์์ PC ๋ ์ฅ์น์ ํ ๋น๋๋ค.
Private IP ์ฃผ์ ๋์ญ์ ์๋์ ๊ฐ๋ค.
โข
Class A :ย 10.0.0.0 ~ย 10.255.255.255
โข
Class B :ย 172.16.0.0 ~ย 172.31.255.255
โข
Class C :ย 192.168.0.0 ~ย 192.168.255.255
๊ฐ๋จํ ์์ ๋ก ์์๋ณด์.
โข
Public IP ์ฃผ์๋ ์ ์ธ๊ณ์์ ์ ์ผํ IP ์ฃผ์ ์ด๋ฏ๋ก ์ค๋ณต๋์ง ์๊ฒ ํ ๋น๋๋ค.
โข
Private IP ์ฃผ์๋ ํน์ ํ ๋คํธ์ํฌ ๋ด์์ ์ ์ผํ IP ์ฃผ์์ด๋ฏ๋ก ํด๋น ๋คํธ์ํฌ ๋ด์์ ์ค๋ณต๋์ง ์๊ฒ ํ ๋น๋๋ค.
๋ฐ๋ผ์ Private IP ์ฃผ์๋ ๋ค๋ฅธ ๋คํธ์ํฌ ์์์ ๊ฐ์ ์ฃผ์๊ฐ ์กด์ฌํ ์ ์๋ค.
์ด๋ ๊ฒ Private, Public IP ์ฃผ์๋ฅผ ํ์ฉํด์ ๋คํธ์ํฌ๋ฅผ ๊ตฌ์ฑํ์์ ๊ฒฝ์ฐ, Public IP ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉด ์ด๋์๋ ๋์ ์ฃผ์๋ก ์ฐพ์์ฌ ์ ์์ง๋ง Private IP ์ฃผ์๋ ํด๋น IP ์ฃผ์๊ฐ ํฌํจ๋ ์ฌ์ค๋ง ๋ด์์๋ง ์ฐพ์ ์ ์๋ค.(์ธ๋ถ ๋คํธ์ํฌ์์๋ ์ฐพ์ ์ ์๋ค.)
์ฌ๊ธฐ์ ์ค์ํ ๊ฒ์ด ์ฌ์ค๋ง ์ญ์ Public IP ์ฃผ์๋ฅผ ๊ฐ์ง Host์ ํต์ ํ ์ ์์ด์ผ ํ๋ค. ์ฌ์ค๋ง์ IP ์ฃผ์๋ฅผ ๊ฐ์ง Host๋ ์ธ๋ถ ๋คํธ์ํฌ์ ์ ๊ทผํ ์ ์์ด์ผ ์ธํฐ๋ท์ ์๋ฏธ๊ฐ ์๋ค. ๋ฐ๋ผ์ Public IP ์ฃผ์์ Private IP ์ฃผ์ ๊ฐ Host์ ํต์ ํ ์ ์๋๋ก ๋ง๋ ๊ฒ ๋ฐ๋ก NAT์ด๋ค.
3) NAT(Network Address Translation)
NAT๋ ์ฃผ๋ก Private IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๋คํธ์ํฌ ๋ง์์ Public IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๋คํธ์ํฌ ๋ง์ผ๋ก์ ํต์ ์ ์ํด ๋คํธ์ํฌ ์ฃผ์๋ฅผ ๋ณํํ๋ ๊ฒ์ด๋ค.
์ฆ, ์ฌ์ค๋ง์์๋ Private IP ์ฃผ์๋ฅผ ์ด์ฉํด์ ํต์ ์ ํ๊ณ , ์ธ๋ถ ๋คํธ์ํฌ์ ํต์ ํ ๋์๋ NAT๋ฅผ ๊ฑฐ์ณ์ Public IP ์ฃผ์๋ก ์๋ ๋ณํ๋๋ค.
NAT๋?
โข
์ธ๋ถ์ ๊ณต๊ฐ๋ Public IP ์ฃผ์์ ๋ด๋ถ์์ ์ฌ์ฉํ๋ Private IP ์ฃผ์๊ฐ ๋ค๋ฅธ ๊ฒฝ์ฐ ๋คํธ์ํฌ ์ ์ก ์ํ ์ ๋ IP ์ฃผ์๋ฅผ ๋งตํํ์ฌ ํต์ ์ ์ํํ๊ฒ ํด์ฃผ๋ ๊ธฐ์ ์ด๋ค.
โข
๋ณดํต Router ํน์ ๋ฐฉํ๋ฒฝ์ ์ค์น๋์ด ๋์ํ๋ค.
NAT์ ์ฅ์
โข
IP ์ฃผ์ ๋ถ์กฑ ๋ฌธ์ ํด๊ฒฐํ ์ ์๋ค.
โข
๋ณด์์ฑ์ด ์ข๋ค. (์ธ๋ถ์์ ์ฌ์ค๋ง์ ์ ๋ณด๋ฅผ ์ฝ๊ฒ ์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.)
NAT์ ์ข ๋ฅ
[1] Static NAT
Public IP ์ฃผ์์ Private IP ์ฃผ์๋ฅผ 1 : 1 ๋ก Mappingํ์ฌ ๋ณํํ๋ค.
๊ฐ์ฅ ์ฌ์ด ๋ณํ ๋ฐฉ์์ด์ง๋ง ์ด๋ ๊ฒ ๊ตฌ์ฑํ ๊ฒฝ์ฐ Public IP ์ฃผ์์ Private IP ์ฃผ์์ ๊ฐ์๊ฐ ๊ฐ์์ผ ํ๊ธฐ ๋๋ฌธ์ Public IP ์ฃผ์๋ฅผ ํจ์จ์ ์ผ๋ก ์ฐ๊ณ ์ ํ๋ ๋ชฉ์ ์ ๋ง์ง ์๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ฌ์ค๋ง์ ์ญํ ์ด ๋ง์์ Port Forwarding ์์
์ด ๋ง์ด ํ์ํ ๊ฒฝ์ฐ, ์์ ํด๋น ์ฌ์ค๋ง์ IP ์ฃผ์๋ฅผ Public IP ์ฃผ์๋ก Mappingํ๋ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ๋ค.
[2] Dynamic NAT
Public IP ์ฃผ์์ Private IP ์ฃผ์๋ฅผ N : N ์ผ๋ก Mappingํ์ฌ ๋ณํํ๋ค.
ํ์ฌ ์ฌ์ฉ์ค์ด์ง ์์ Public IP ์ฃผ์์ Private IP ์ฃผ์๋ฅผ ๋์ ์ผ๋ก Mappingํ๋ค.
๋ณดํต Public IP ์ฃผ์๊ฐ Private IP ์ฃผ์๋ณด๋ค ์ ์ ๊ฒฝ์ฐ์ ์ฌ์ฉ๋๋ค.
[3] NAPT
Public IP ์ฃผ์์ Private IP ์ฃผ์๋ฅผ 1 : N ์ผ๋ก ๋งตํํ์ฌ ๋ณํํ๋ค.
์ฌ์ค๋ง ๋ด ๊ฐ Host๋ง๋ค Port๋ฅผย ์ง์ ํด์ฃผ์ด, Private IP + Port๋ฅผ ํ๋์ Public IP + Port๋กย Mappingํ๋ค.
NAT ๋ฐ NAPT ์ ํต์ ์๋ฆฌ
์ฌ์ค๋ง์์ ์ธ๋ถ ๋คํธ์ํฌ๋ก ํต์ ์ ์๋ํ๋ฉด ํด๋น Packet์ ํญ์ Gateway๋ฅผ ๊ฑฐ์น๊ฒ ๋์ด์๋ค. ์ด๋ฌํ ํต์ ๊ณผ์ ์ ์๋์ ๊ฐ์ด ํฌ๊ฒ 4๊ฐ์ง ๋จ๊ณ๋ก ์งํ๋๋ค.
1.
Node 1 โ Gateway
2.
Gateway โ Node 2
3.
Node 2 โ Gateway
4.
Gateway โ Node 1
์๋๋ ์ด ๊ณผ์ ์ ๊ทธ๋ฆผ์ผ๋ก ๊ทธ๋ ค๋ณธ ๊ฒ์ด๋ค. ์ฌ๊ธฐ์ Source IP ์ฃผ์๋ Packet์ ๋ณด๋ด๋ ์ฃผ์, Destination IP ์ฃผ์๋ Packet์ด ๋์ฐฉํ๋ ์ฃผ์์ด๋ค.
Packet์ Node 1์์ Node 2๋ก ๋ณด๋ด๋ ๊ณผ์ ์๋ Gateway๋ฅผ ํญ์ ๊ฑฐ์น๊ฒ ๋๋ฏ๋ก ์ 1๋ฒ ๊ณผ์ ์ ์ดํด๋ณด๋ฉด, Source IP ์ฃผ์๋ Private IP ์ฃผ์์ธ 192.168.0.2๋ก ์ฑ์์ ธ์๊ณ , Destination IP ์ฃผ์๋ Node 2์ ์ฃผ์์ธ 2.2.2.2๋ก ์ฑ์์ ธ ์๋ค. ์ด ๋ Gateway๋ Private IP ์ฃผ์๋ก ๊ธฐ๋ก๋ Source IP ์ฃผ์๋ฅผ ์์ ์ Public IP ์ฃผ์๋ก ๋ฐ๊ฟ ๋ฃ๊ฒ ๋๋ค. ์ด๋ Node 2๊ฐ Packet์ ํ์ ํ ๋ Private IP ์ฃผ์๋ฅผ ์ด์ฉํ๊ฒ ๋๋ฉด Packet์ ์ด๋๋ก ๋ณด๋ด์ผํ ์ง ๋ชจ๋ฅด๊ธฐ ๋๋ฌธ์ 2๋ฒ ๊ณผ์ ์์๋ Gateway๊ฐ ์์ ์ Public IP ์ฃผ์๋ฅผ Packet์ ๋ด๊ฒ๋๋ ๊ฒ์ด๋ค.
Packet์ Node 2์์ Node 1์ผ๋ก ํ์ ํ๋ ๊ณผ์ ์๋ ์ก์ ์ ๊ณผ์ ์ฒ๋ผ Gateway๋ฅผ ๊ฒฝ์ ํ๊ฒ ๋๋ค. ์ก์ ๊ณผ์ ์์ Gateway์ Public IP ์ฃผ์๋ฅผ ๋ฐ์์๊ธฐ ๋๋ฌธ์ 3๋ฒ ๊ณผ์ ์์์ Destination IP ์ฃผ์๋ ์ด๋ฅผ ๊ทธ๋๋ก ์ด์ฉํ๊ฒ ๋๋ค. ๊ทธ๋ ๋ค๋ฉด 4๋ฒ ๊ณผ์ ์์ Gateway๋ ํ์ ๋ Packet์ด Node 1์ผ๋ก ํฅํ๋ ๊ฒ์์ ์ด๋ป๊ฒ ์๊ณ , ์ด๋ฅผ ๋ ์ด๋ป๊ฒ Node 1์ผ๋ก ๋ณด๋ด๊ฒ ๋๋ ๊ฒ์ผ๊น?
์ด๋ 2๋ฒ ๊ณผ์ ์์ Gateway๊ฐ Source IP ์ฃผ์๋ฅผ ์์ ์ Public IP ์ฃผ์๋ฅผ ๋ฐ๊พธ๋ ๊ณผ์ ์ ๋ต์ด ์กด์ฌํ๋ค. ์ด ๊ณผ์ ์์ ๋จ์ํ Packet์ IP ์ฃผ์๋ง ๊ต์ฒดํ๋ ๊ฒ์ด ์๋๋ผ ๋ด๋ถ์ ์ผ๋ก NAT Table์ ์ด ์ ๋ณด๋ค์ ๊ธฐ๋กํ๊ฒ ๋๋ค. ๋ฐ๋ผ์ ํ์ ๋ Packet์ ๋ฐ๊ฒ ๋๋ฉด, Table์ ํตํด ์ ์ ํ Private IP ์ฃผ์๋ก ๋ฐ๊พธ์ด ์ฌ์ค๋ง์ Node 1์ผ๋ก Packet์ ๋ณด๋ด๊ฒ ๋๋ค.
์ด๋ฐ ๋ฐฉ์์ ํต์ ์ NAT ํต์ ์ด๋ผ๊ณ ํ๋๋ฐ, ์ด๋ ํฐ ๋จ์ ์ด ์๋ค. ์ธ๋ถ๋ก Packet์ ๋ณด๋ธ Node์ ๋ํด์ ๊ธฐ๋ก์ ํ ๋ ํ๋์ IP ์ฃผ์๋ง Gateway์ Public IP ์ฃผ์์ Binding ๋๋ฏ๋ก ์ฌ์ค๋ง ๋ด์ ์ฌ๋ฌ Node๊ฐ ์ธ๋ถ ๋คํธ์ํฌ๋ก Packet์ ๋ณด๋์ ๋ ๋์ผํ Gateway๋ฅผ ์ฌ์ฉํ๋ ค ํ๋ฉด ๊ณค๋ํ ์ํฉ์ด ๋ฐ์ํ๊ฒ ๋๋ค. ๋ฐ๋ผ์ ์ด๋ฌํ ์ํฉ์ ์ ์ฐํ๊ฒ ๋์ฒํ๊ธฐ ์ํด NAPT ํต์ ์ ์ฃผ๋ก ์ด์ฉํ๊ฒ ๋๋ค.
NAPT ํต์ ์ ์ฌ์ค๋ง์์ ์ด์ฉ ์ค์ธ Node์ Private IP ์ฃผ์๋ฅผ Gateway์ Public IP ์ฃผ์ + ์์์ Port๋ก Bindingํ์ฌ Table์ ๊ธฐ๋กํ๋ค. ์ด๋ฅผ ํตํด ์ฌ์ค๋ง ๋ด๋ถ์ ์ฌ๋ฌ Node๊ฐ ๋์ผํ Gateway๋ฅผ ์ด์ฉํ๋๋ผ๋ Packet ํ์ ์์ ์ ์์ ์ผ๋ก Node๋ค์๊ฒ ๋ถ๋ฐฐํ ์ ์๊ฒ ๋๋ค. ์ด์ฉํ ์ ์๋ Port๊ฐ 65535๊ฐ์ด๋ฏ๋ก ๋์์ 65535๊ฐ ๋งํผ์ Session์ ์ ์งํ ์ ์๊ฒ ๋๋ค. ํ์ฌ๋ NAPT ํต์ ์ ๋ง์ด ์ด์ฉํ๋ค.
5. Network Layer Protocol
1) IP (Internet Protocol) ์ค๊ณ ๋ชฉ์
ํ์ฌ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ๋คํธ์ํฌ์ฒ๋ผ Packet Switch๊ฐ ๊ฐ๋ฅํ ์ปดํจํฐ ๊ฐ์ ๋คํธ์ํฌ ํต์ ์ด ๊ฐ๋ฅํ๋๋ก Internet Protocol์ด ์ค๊ณ๋์๋ค. Internet Protocol์ Source๋ก๋ถํฐ Destination๊น์ง Datagram์ด๋ผ๊ณ ํ๋ ๋ฐ์ดํฐ ๋ธ๋ก๋ค์ ์ ์กํ ์ ์๊ฒ ํด์ฃผ๊ฒ ํด์ค๋ค. (์ฌ๊ธฐ์ ๋งํ๋ Source์ Destination์ ํน์ ๊ธธ์ด์ IP ์ฃผ์๋ก ๋ช
์๋ Host๋ฅผ ์๋ฏธํ๋ค.) ์ด ๋ IP๋ Network Layer์์ ์ต์ํ์ ๊ธฐ๋ฅ๋ง ์ํํ๋ฉฐ, Small Packet๋ง ์ง์ํ๋ ๋คํธ์ํฌ์์๋ ํต์ ์ด ๊ฐ๋ฅํ๋๋ก ๊ธด Datagram์ ๋ํด์ Fragment ๋ฐ Reassemble๋ฅผ ์ง์ํ๋ค.
2) Baisc of IP Operation
IP๋ ๊ธฐ๋ณธ์ ์ผ๋ก 2๊ฐ์ง Function์ ์คํํ๋ค. ํ๋๋ Addressing์ด๊ณ , ๋๋จธ์ง ํ๋๋ Fragmentation์ด๋ค.
Internet Module๋ค์ IP Header์ ๋ช
์๋์ด ์๋ ์ฃผ์๋ฅผ ์ด์ฉํ์ฌ Destination์ผ๋ก Datagram์ ์ ์กํ๋๋ฐ, ์ด ๋ Destination์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ธฐ ์ํด ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ๊ฒ์ Routing์ด๋ผ๊ณ ํ๋ค.
๋ํ Internet Module๋ค์ IP Header์ ์๋ ๋ช ํ๋๋ค์ ์ด์ฉํ์ฌ Datagram์ ๋ํ Fragment์ Reassemble์ ์ํํ๊ฒ ๋๋ค.
์ด ๋ ์ค์ํ ๊ฒ์ด IP๋ ์๋ก ๋ค๋ฅธ Datagram์ ๋ํด์ ๊ด๋ จ์ฑ์ด ์๋ ๊ฐ๊ฐ ๋
๋ฆฝ์ ์ธ ๊ฐ์ฒด๋ก ์ธ์ํ๋ค๋ ๊ฒ์ด๋ค. ์ด ๋ง์ ์ ์กํ๋ Datagram์ ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์ง ์๊ฒ ๋ค๋ผ๋ ๋ง๋ก State๋ฅผ ๋์ง ์์ ์ฑ๋ก ๊ธฐ์ตํ์ง ์๊ฒ ๋ค์ ๋์ผํ ์๋ฏธ์ด๋ฉฐ, Network Layer์์ ์ต์ํ์ ๊ธฐ๋ฅ๋ง์ ์ํํ๊ฒ ๋ค๋ ์๋ฏธ์ด๋ค. ์ด๋ฐ State์ ๋ํ ์ ๋ณด๋ End-to-End ๋ฐ Fate Sharing์ ๋ฐ๋ผ End ๋จ๋ง์๋ง ๋๊ณ , ์ธ์ ๋จ๋ง์์๋ Datagram์ ๋ํด์ ๋ณ๋์ ์ ์ฅ์ ํ์ง ์๊ณ ๋น ๋ฅด๊ฒ๋ง ์ฒ๋ฆฌํ๋ค๋ ๊ฒ์ผ๋ก ๋ณด๋ฉด ๋๋ค. (์ค์ ๋ก End์ธ์ ๋จ๋ง์์๋ ํต๊ณ์ ๋ํ ์ ๋ณด ์ ๋๋ ์ ์ฅ์ ํ๋ค.)
์์ ๊ฐ์ 2๊ฐ์ Function์ ์ํํ๋๋ฐ ์์ด์ IP๋ ์๋์ 4๊ฐ์ง์ ํต์ฌ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ๋ค.
โข
Type of Service
โข
Time to Live
โข
Options
โข
Header Checksum
(์์ 4๊ฐ์ง๋ณด๋ค๋ IP๋ Addressing๊ณผ Fragmentation์ด๋ผ๋ Function์ ์ํํ๋ค๋ ๊ฒ์ ๋ช
์ฌํ์.)
3) IPv4 Header Format
Datagram์ ๊ตฌ์กฐ
IPv4 ์ฃผ์ ์ฒด๊ณ์์ Datagram์ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ์ด๋ค.
Header์ ๊ตฌ์กฐ
Datagram ๋ด์ Header์ ๊ตฌ์กฐ๊ฐ ๊ฐ์ฅ ์ค์ํ๋ฐ ๊ทธ ๊ตฌ์กฐ๋ ์๋์ ๊ฐ๋ค.
โข
Version์ IPv4์ธ์ง IPv6์ธ์ง ๋ํ๋ธ๋ค.
โข
HLEN์ Header Length๋ผ๊ณ ํด์ Header์ ๊ธธ์ด๋ฅผ 32 ๋นํธ ๋จ์๋ก ์๋ผ์ ๋ช ๊ฐ์ Chunk๊ฐ ๋์ค๋์ง ๋ํ๋ด๋ ๊ฒ์ด๋ค. (์ ๊ทธ๋ฆผ์์ Header์ ๊ฐ๋ก ํญ์ 32 ๋นํธ์ด๋ฏ๋ก Option์ ํฌ๊ธฐ๊ฐ 0์ด๋ผ๊ณ ํ์ ๋, ๊ธฐ๋ณธ์ ์ผ๋ก Header์ ๋ค์ด๊ฐ์ผ ํ๋ ์ธ๋ก ํญ์ 5๊ฐ์ด๋ค. ์ฆ, ์ด ๋๋ HLEN์ด 5๊ฐ ๋์ด HLEN ํ์๋ฅผ ์ํ 4 ๋นํธ ์ค 3 ๋นํธ๋ฅผ ์ด์ฉํด 101์ด ํ๊ธฐ๋๋ค. ๋ํ ๊ธฐ๋ณธ์ ์ผ๋ก ํฌํจํด์ผ ํ๋ ์ธ๋ก ํญ์ด 5๊ฐ๋ผ๊ณ ํ๊ณ ๊ฐ๋ก ํญ์ ๊ธธ์ด๋ 4 ๋ฐ์ดํธ (32 ๋นํธ)์ด๋ฏ๋ก Header์ ๊ธธ์ด๋ ์ต์ 20 ๋ฐ์ดํธ๊ฐ ๋๋ค. ๊ทธ๋ฆฌ๊ณ Option์ ํฌ๊ธฐ๋ ์ต๋ 40 ๋ฐ์ดํธ๊น์ง ์ฌ ์ ์๊ธฐ ๋๋ฌธ์ Header์ ์ต์ ํฌ๊ธฐ 20 ๋ฐ์ดํธ์ Option์ ์ต๋ ํฌ๊ธฐ 40 ๋ฐ์ดํธ๋ฅผ ํฉํ์ฌ 60 ๋ฐ์ดํธ๊น์ง ๋์ฌ ์ ์๋ ๊ฒ์ด๋ฉฐ, ์ด 60 ๋ฐ์ดํธ๋ฅผ HLEN์ ํ์ํ๊ธฐ ์ํด์ 4 ๋ฐ์ดํธ Chunk๋ก ๋์์ ๋ 4 ๋นํธ (๊ฐ) ๋ด๋ก ํํํ ์ ์์ผ๋ฏ๋ก HLEN์ 4 ๋นํธ๋ก ํ๊ธฐํ๋๋ก ํด๋์ ๊ฒ์ด๋ค.)
โข
Total Length๋ Header๋ฅผ ํฌํจํ Datagram์ ์ด ๊ธธ์ด๋ฅผ ๋ํ๋ธ๋ค.
โข
Protocol ํ๋๋ Datagram์ ๋ฐ์ดํฐ์ ์ฌ์ฉ๋๋ ์์ ๊ณ์ธต์ Protocol์ ๋ช
์ํ๋ ํ๋์ด๋ค. ๋ค์ํ Protocol์ ๋ํ ๊ฐ๋ค์ ํน์ ๊ฐ์ผ๋ก ๋ฏธ๋ฆฌ ์ ํด์ ธ์๋ค. ๋ฐ๋ผ์ ์ด ๊ฐ์ ๋ฐ๋ผ์ ์์ ๊ณ์ธต์์ ์ด๋ค Protocol์ด Packet์ ๋ด๊ฒจ ์๋์ง ์ ์ ์๋ค.
โข
Time to Live์ ๊ฒฝ์ฐ Datagram์ ์๋ช
์ ๋ํ ์ํ์ ๋ํ๋ธ๋ค. (TTL ํ๊ณ์น๋ฅผ ๋์ด๊ฐ๋ฉด Packet์ ์ค์ค๋ก ์๋ฉธํ๋ค.) TTL์ ๊ฒฝ์ฐ Router์ ๋๋ฌํ ๋๋ง๋ค 1์ฉ ๊ฐ์ํ๋ฉฐ IP Packet์ ๋ฐ๊ฒ ๋๋ค. (๋ง์ผ TTL์ด 0์ธ ์ํ๋ก Router์ ๋๋ฌํ๋ฉด, ํด๋น Packet์ ๋ฒ๋ฆฌ๊ฒ ๋๋ค. ์ด๋ง์ Router๋ TTL์ด 0์ธ Packet์ ๋ฐ์ง ์๊ฒ ๋ค๋ ๊ณตํต์ ์ธ ์ฝ์์ด ์๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฅํ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ์์ ์ด ์ํ Link์์ ๋ฒ์ด๋์ง ์์ ์ฑ๋ก Packet์ ๋ณด๋ด๊ณ ์ถ๋ค๋ฉด, TTL์ 1๋ก ์ฃผ๋ฉด Router ๋์ฐฉ ์ 0์ด ๋์ด Router ๋ฐ๊นฅ์ ๋ฒ์ด๋์ง ์๋ ์์ผ๋ก ํต์ ์ ๋ณด๋ผ ์ ์๋ค.) TTL์ ์กด์ฌ ๋ชฉ์ ์ ๋๋ฌด ์ค๋๋์ ๋คํธ์ํฌ์์ ๋ ๋ Packet์ ๋ํด์ Router๊ฐ ์ฒ๋ฆฌํ ์ ์๋๋ก ๋ง๋๋ ๊ฒ์ด๋ค. Packet์ ๊ต์ฅํ ๋ค์ํ ์ด์ ๋ก ์ ํด์ง ๋ชฉ์ ์ง์ ์ ์๊ฐ์ ๋๋ฌํ์ง ๋ชป ํ ์ ์๋๋ฐ, ํนํ ์ฌ๋ฐ๋ฅด์ง ์์ ์ ๋ณด๋ก Routing Table์ ๊ตฌ์ฑํ๊ฒ ๋ ๊ฒฝ์ฐ Packet์ ์์ํ Cycle์ ๋๋ฉด์ ๋คํธ์ํฌ ์์์ ์๋ชจํ๊ณ ์์ ์ ์๋ค. ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด TTL์ ์ฌ์ฉํ๊ฒ ๋์๋ค.
โข
Identification ๋ฐ Flag, Fragmentation Offset์ Fragmentation์์ ์ด์ฉ๋๋ค.
โข
Option ํ๋๋ ์ด๋ฆ์์ ์์ํ๋ฏ Datagram์์ ํ์ ์ฌํญ์ ์๋๋ค. ์ด ํ๋๋ ๋คํธ์ํฌ์ ๋ํ Testing, Debugging์ ์ด์ฉ๋๋ค. NOP ํน์ END-OF-LIST๋ผ๋ Option์ ์ ์ธํ๊ณ ๋ Datagram์์ ์์ ํ ๋ชจ๋ Option๋ค์ ๋ฐ๋์ Transport Layer๋ก ์ ๋ฌ๋์ด์ผ ํ๋ค. ํนํ, Source Route์ ๋ํ Option์ด ์ ์ก๋์ด์ผ ํ๋ค. Source Route์ ํ์
์๋ Strict Source Routing (๋ฐ๋์ ์ ํด์ง ๊ฒฝ๋ก๋ก๋ง ๊ฐ์ผํ๋), Loose Source Routing (์ ํด์ง ๊ฒฝ๋ก์์ ์กฐ๊ธ ๋ฌ๋ผ์ ธ๋ ๋๋)๊ฐ ์กด์ฌํ๋ค. ์ ์์ ๊ฒฝ์ฐ ์ก์ ์ธก์์ Datagram์ด ๊ฐ์ผํ๋ ์ ํํ ๊ฒฝ๋ก๋ฅผ ๋ช
์ํ๋ค. ๋ง์ผ Source Route์ ๋ช
์๋ Router๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด, ICMP๊ฐ source router failed๋ผ๋ Error๋ฅผ ๋ฐํํ๋ค. ํ์์ ๊ฒฝ์ฐ๋ ์ก์ ์ธก์์ Datagram์ด ์ง๋๊ฐ ์ ์๋ ๊ฒฝ๋ก๋ค์ ๋ฆฌ์คํธ๋ฅผ ๋ช
์ํ๋ค. ์ด ๋ ๊ผญ ์ด ๋ฆฌ์คํธ์ ์๋ ์ฃผ์์ Router๊ฐ ์๋๋๋ผ๋ Error๋ฅผ ๋ด์ง ์๊ณ ๊ฒฝ์ ํด๊ฐ ์ ์๋ค.
๊ฐ๋จํ ์ด ์ง๋ฌธ์ ๋ํ ๋ต์ ์๊ฐํด๋ณด์.
IP Packet์์ HLEN์ด 8๋ก ์ฃผ์ด์ก๊ณ (4 ๋นํธ๊ฐ 1000์ผ๋ก ๋ํ๋จ) ์ด ๋ Packet ๋ด์ Option์ ํฌ๊ธฐ๋ ๋ช ๋ฐ์ดํธ์ธ๊ฐ?
์ ๋ต
4) IP Function : Addressing
Node์ ๋ํ ๊ตฌ๋ณ์ 3์์๋ Names, Addresss, Routes์ด๋ค.
Name์ ์ฐ๋ฆฌ๊ฐ ์ฐพ๊ณ ์ ํ๋ ์๋ณ ๋์์ด๊ณ , Address๋ ์๋ณ ๋์์ ์์น๋ฅผ ๋งํ๋ฉฐ, Route๋ ์ด๋ป๊ฒ ๊ทธ ์์น๊น์ง ๋๋ฌํ ์ ์๋์ง ์ด๋ค.
IP๋ 3๊ฐ์ง๋ฅผ ๋ค ๋ง์กฑํ ์ ์๋๋ก Addressing์ ์ํํด์ค๋ค.
5) IP Function : Fragmentation
Fragmentation์ Datagram์ ๋ํด์ Datagram์ด ์์ฑ๋ ๊ณณ์์ ํ์ฉํ Packet ํฌ๊ธฐ๋ณด๋ค Datagram์ด ํฅํด ๊ฐ๋ Destination์์ ํ์ฉํ Packet์ ํฌ๊ธฐ๊ฐ ๋ ์์ ๊ฒฝ์ฐ ์ํํ๊ฒ ๋๋ค. Fragmentation์ ํ์ ์ฌํญ์ ์๋ ์ ์๊ธฐ ๋๋ฌธ์, Fragmentation์ ์ํํ์ง ๋ง๋ผ๊ณ Packet์ ๋ช
์ํ ์ ์๋ค.
MTU
Fragmentation์ ๋จ์๋ MTU๋ผ๊ณ ๋ณผ ์ ์๋ค. MTU๋ Maximum Transmit Unit์ ์ฝ์ด๋ก, ๋คํธ์ํฌ Interface์์ ๋ถํ ์ ํ์ง ์์๋ ๋๋ Datagram์ ์ต๋ ํฌ๊ธฐ๋ฅผ ์๋ฏธํ๋ค. (์๋ ๊ทธ๋ฆผ์ ์ฐธ๊ณ )
1๋ฒ Index์ ํด๋นํ๋ MTU๊ฐ ๊ต์ฅํ ํฐ ๊ฒ์ ๋ณผ ์ ์๋๋ฐ, ์ด๊ฒ์ Loopback์ด๋ผ์ (์์ ์ ํฅํ ๊ฒ์ด๋ผ) ๊ทธ๋ ๋ค.
๋ง์ผ Datagram์ Data Link Layer๋ก ๋๊ธฐ๋ ๊ณผ์ ์์ Frameํ๋ฅผ ํด์ผํ ๋, MTU ๋จ์๋ก ๋์ด์ Frameํ๋ฅผ ์งํํ๋ค. (์๋ ๊ทธ๋ฆผ ์ฐธ๊ณ )
Fragmentation์ ์ด์ฉํ๋ Header ๊ตฌ์กฐ
IPv4 Header Format์์ ๋ฐํ ๊ฒ์ฒ๋ผ Header์๋ Fragmentation์ ๋ํ ์ ๋ณด๊ฐ ๋ด๊ฒจ์๋ค. Identification, Flag, Fragmentation Offset ํ๋๋ค์ด ์ด์ ํด๋นํ๋ค.
Identification์ ์๋ก ๋ค๋ฅธ Datagram์ด ์์ด์ง ์๋๋ก ์ก์ ์ธก์์ ์์ฑํ์ฌ ์ ์ฒด์ฑ์ ๋ณด์ฅํด์ค๋ค. ์ด๋ฅผ ํตํด ์์ ์ธก์์๋ Datagram์ด ์์ด์ง ์๋๋ก ํธํ๊ฒ Assembling์ด ๊ฐ๋ฅํ๋ค.
Flag์ ๊ฒฝ์ฐ 3 ๋นํธ๋ฅผ ์ด์ฉํ๋๋ฐ, ์ฒซ ๋ฒ์งธ ๋นํธ๋ ํ์ฉํ์ง ์์ผ๋ฉฐ, ๋ ๋ฒ์งธ ๋นํธ๋ Do Not Fragment๋ก Fragmentation์ ์ํํ์ง ์์ ๋ 1๋ก ํ๊ธฐํ๋ค. ๋ง์ง๋ง ๋นํธ๋ More ๋นํธ๋ก ํ์ ์ถ๊ฐ์ ์ผ๋ก ๋ฐ์์ผํ๋ Fragment๊ฐ ์๋ค๋ฉด 1๋ก ํ๊ธฐ ๋๊ณ , ์์ ์ ๋ง์ง๋ง์ผ๋ก ๋ ๋ฐ์ Fragment๊ฐ ์๋ค๋ฉด 0์ผ๋ก ํ๊ธฐํ๋ค.
Fragmentation Offset์ ํ์ฌ Fragment๊ฐ Datagram์ ์ด๋ ๋ถ๋ถ์ ์ํ๋์ง๋ฅผ ์๋ฏธํ๋ค. Fragmentation Offset๊ณผ Total Length๋ฅผ ํตํด์ ์๋์ Datagram์์ ์ด๋ ๋ถ๋ถ์ ์ํ๋์ง ํ์ธํ ์ ์๊ฒ ๋๋ค. ์ด ๋ Datagram์ ํฌ๊ธฐ๋ Header๋ฅผ ํฌํจํ์ฌ ๋ฐ์ดํธ๋ก ๋ฐ์ดํธ๋งํผ ๊ฐ์ง ์ ์๋ค๊ณ ํ์๋๋ฐ ์ด๋ ๊ณง ๋นํธ๋ฅผ ํํํ ์ ์์ด์ผ ํ๋ค๋ ๊ฒ์ด๋ค. Fragmentation Offset์ 13 ๋นํธ๋ง ์ฃผ์ด์ ธ ์๊ธฐ ๋๋ฌธ์ ๋นํธ๋งํผ์ ํํํ ์ ์๊ธฐ ๋๋ฌธ์ ์ ๋ง์ ํฌ๊ธฐ๋ฅผ ํํํ ์ ์๋ ์ํ์ธ ๊ฒ์ ์ ์ ์๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก Fragmentation Offset์ ๋ฐ์ดํธ ๋จ์์ ํํ์ ํ๊ธฐ ๋๋ฌธ์ ์์์ ๋ถ๋ถ์ ํด๊ฒฐํ ์ ์๋ค. ์ด์ ๋จ์ ๊ฒ์ 13 ๋นํธ๋ฅผ ํตํด์ ์ ์ด๋ป๊ฒ ํํํ ๊ฒ์ด๋์ธ๋ฐ, Fragmentation Offset์ ๊ธฐ๋ณธ์ ์ผ๋ก 8๊ฐ์ Octet์ ํ๋์ ๋จ์๋ก ๋ณธ๋ค. ๋ฐ๋ผ์ ์ ๊น์ง ์ค์ผ ์ ์๊ณ , ์ด๋ 13 ๋นํธ๋ก ํํ์ด ๊ฐ๋ฅํ๊ฒ ๋๋ค. ์ดํดํ๋ฉด ๊ฐ๋จํ์ง๋ง, ์กฐ๊ธ์ ๋ฐ์๋ค์ด๊ธฐ ์ด๋ ค์ธ ์ ์๊ธฐ ๋๋ฌธ์ ์๋ ์์๋ฅผ ์ดํด๋ณด์.
์ข์ธก๊ณผ ๊ฐ์ด ์ด 4000 ๋ฐ์ดํธ ๊ธธ์ด์ Datagram์ด ์๋ค๊ณ ํด๋ณด์. ์ด ๋ Total Length๋ Datagram ํฌ๊ธฐ 4000์ Header ํฌ๊ธฐ 20์ ๋ํด 4020์ผ๋ก ๊ธฐ๋ก๋๋ค. ํ์ฌ๋ Fragmentation์ด ๋์ง ์์๊ธฐ ๋๋ฌธ์ Flag ํ๋์ More ๋นํธ๋ 0์ด๊ณ , Fragmentation Offset ๋ 000์ธ๊ฒ์ ํ์ธํ ์ ์๋ค. ์ฌ๊ธฐ์ MTU๊ฐ 1400 ๋ฐ์ดํธ๋ผ๊ณ ํ์ฌ ์๋ณธ Datagram 4000 ๋ฐ์ดํธ๊ฐ ๊ฐ๊ฐ 1400, 1400, 1200์ผ๋ก ์ชผ๊ฐ์ก๋ค๊ณ ๊ฐ์ ํด๋ณด์.
์ฒซ ๋ฒ์งธ Fragment์ Total Length๋ 1400 ๋ฐ์ดํธ + Header ํฌ๊ธฐ 20 ๋ฐ์ดํธ๋ก 1420์ด๋๊ณ , ๋ค์ ์์ง 2๊ฐ์ Fragment๊ฐ ๋จ์๊ธฐ ๋๋ฌธ์ Flag ํ๋์ More ๋นํธ๊ฐ 1์ด ๋๋ค. ๋ํ ์ฒซ Fragment์ด๋ฏ๋ก Fragmentation Offset๋ 0์ธ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๋ ๋ฒ์งธ Fragment์ ๊ฒฝ์ฐ ์ฒซ ๋ฒ์งธ Fragment์ฒ๋ผ Flag์ More ๋นํธ๊ฐ 1, Total Length๊ฐ 1420์ธ ๊ฒ์ ์ ์ ์๋ค. ์ด ๋ Fragmentation Offset์ ํฌ๊ธฐ ๋ฐ์ดํธ์ ๋ํด์ 8๊ฐ์ Octet์ผ๋ก ํํํ๋ค๊ณ ํ๊ธฐ ๋๋ฌธ์ ์ฒซ ๋ฒ์งธ Fragment์ ํฌ๊ธฐ 1400 ๋ฐ์ดํธ์ 8 ๋ฐ์ดํธ ๋จ์๋ก ํํํ๋ค๊ณ ํ์ผ๋ฏ๋ก 8๋ก ๋๋์ด 175๋ก ํ๊ธฐํ๊ฒ ๋๋ค.
์ธ ๋ฒ์งธ Fragment์ ๊ฒฝ์ฐ ํฌ๊ธฐ๊ฐ 1200 ๋ฐ์ดํธ๋ฏ๋ก Header ํฌ๊ธฐ๋ฅผ ๋ํ์ฌ Total Length๋ 1220์ด ๋๊ณ , ๋ง์ง๋ง Fragment์ด๋ฏ๋ก Flag์ More ๋นํธ๊ฐ 0์ธ ๊ฒ์ ํ์ธํ ์ ์๋ค. Fragmentation Offset์ ๋ํด์๋ ๋ ๋ฒ์งธ Fragment์ ํฌ๊ธฐ๊ฐ 1400 ๋ฐ์ดํธ์์ผ๋ฏ๋ก 8๋ก ๋๋์ด (8 ๋ฐ์ดํธ ๋จ์๋ก ํํํ๋ฏ๋ก) ๋์จ 175๋ฅผ ๋ ๋ฒ์งธ Fragmentation Offset์ธ 175์ ๋ํ์ฌ 350์ด ๋๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
์ถ๊ฐ์ ์ผ๋ก ๋ง์ผ ๋ ๋ฒ์งธ Fragment์ ๋ํด์ MTU 800์ผ๋ก ์ชผ๊ฐ ๋ค๊ณ ๊ฐ์ ํ์ฌ ๋ ์ชผ๊ฐ๋ณด์. 2.1 Fragment์ Total Length๋ Header ํฌ๊ธฐ๋ฅผ ๋ํ์ฌ 820, Flag์ More ๋นํธ๋ (์์ง ๋ Fragment๊ฐ ์๋๋ฏ๋ก) 1์ด ๋๋ค. Fragmentation Offset์ ์ฒซ ๋ฒ์งธ Fragment์ ํฌ๊ธฐ๊ฐ 1400์ด์์ผ๋ฏ๋ก 8๋ก ๋๋์ด 175์ธ ์ํ์ธ ๊ฒ์ ๋ณผ ์ ์๋ค. 2.2 Fragment์ ๊ฒฝ์ฐ ๋ ๋ฒ์งธ Fragment์ ํฌ๊ธฐ 1400์์ 2.1 Fragment์ ํฌ๊ธฐ 800์ ๋บ 600 ๋ฐ์ดํธ์ด๊ณ , Header ํฌ๊ธฐ๋ฅผ ๋ํ์ฌ Total Length๋ 620์ด ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ์ธ ๋ฒ์งธ Fragment๊ฐ ์๊ธฐ ๋๋ฌธ์ Flag์ More ๋นํธ๋ 1์ธ ๊ฒ์ ๋ณผ ์ ์๋ค. Offset์ ๊ฒฝ์ฐ 2.1 Fragment์ Fragmentation Offsest 175์ 2.1 Fragment์ ํฌ๊ธฐ 800 ๋ฐ์ดํธ๋ฅผ 8๋ก ๋๋ 100์ ๋ํ์ฌ 275๊ฐ ๋๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
๋ค์ ์ง๋ฌธ์ ๋ตํด๋ณด์.
Packet์ด ๋์ฐฉํ์ฌ ํ์ธํด๋ณด๋ Fragmentation Offset์ด 100์์ ํ์ธํ๋ค. ์ด ๋ HLEN์ 5์๊ณ , Total Length๋ 100์ด๋ผ๊ณ ํ์ ๋, ์ด Fragment์ ์์ Byte์ ๋ Byte๋ ๋ช์ด ๋ ๊น?
์ ๋ต
6) IPv4 Header Checksum
Checksum์ด๋ผ๋ ๊ฒ์ TCP/IP ๋ชจ๋ธ์์ ์ฌ์ฉํ๋ Error Detection ๋ฐฉ๋ฒ ์ค์ ํ๋์ด๋ค. Error์ ๋ํด์ ์ฐพ์ ์ ์๊ธฐ ๋๋ฌธ์ Packet ์ ์ก ์ค์ ๋ง๊ฐ์ง ๋ฐ์ดํฐ์ ๋ํด์ Protection์ด ๊ฐ๋ฅํ๋ค.
Checksum์ ์ก์ ์ธก์์ ๊ณ์ฐํ์ฌ Packet์ ๋ฃ๊ฒ๋๊ณ , ์์ ์ธก์์๋ ์ก์ ์ธก์ผ๋ก๋ถํฐ ๋ฐ์ ๋ชจ๋ Packet์ ๋ํด Packet์ ๊ธฐ์
๋ Checksum์ ์ด์ฉํ์ฌ ๋์ผํ ๊ณ์ฐ์ ๋ฐ๋ณตํ๋ค. ๋ง์ผ Checksum ํ์ธ์์ ๋ฌธ์ ๊ฐ ์์ด ๋ค ํต๊ณผ๊ฐ ๋๋ค๋ฉด ์์ ์ธก์์ Packet์ ๋ฐ๊ฒ๋๋ค. ๊ทธ๋ ์ง ์๋ค๋ฉด Packet์ ๋ฐ์ง ์๋๋ค.
Header Checksum์ ์ค๋ก์ง Header์ ๋ํด์๋ง ๊ฒ์ฆํ๋ค. ๋ง์ผ Header์ ํน์ ํ๋์ ๊ฐ์ด ๋ณํ์ ๊ฒฝ์ฐ (๋ํ์ ์ผ๋ก TTL๊ณผ ๊ฐ์...), Header๊ฐ ์ฒ๋ฆฌ๋๋ ๊ฐ ์ง์ ์์ ๋ค์ ๊ณ์ฐ๋์ด ๊ฒ์ฆ๋๋ค.
๊ฐ Header์์ 16 ๋นํธ์ฉ ๋์ด์ ๋์จ ๊ฐ๋ค์ ๋ชจ๋ ๋ํ์ฌ (๋ง์
์ 1์ ๋ณด์๋ก ๋ํจ) ๋์จ ๊ฐ์ Negate (๋นํธ๋ค์ ๋ชจ๋ Flip)ํ ๊ฐ์ด Checksum ํ๋์ ๊ธฐ์ฌ๋๋ค. ์ด ๋ 16 ๋นํธ์ฉ ๋์ด์ ์ฌ์ฉํ ๋ Checksum์ ๊ฐ๋ ๊ณ์ฐ์ ๊ธฐ์ฌํ๊ฒ ๋๋๋ฐ ์ด๊ธฐ Checksum์ ๊ฐ์ 0์ผ๋ก ๊ณ์ฐ๋๋ค. ์ฌ๊ธฐ์ ๋ง์
์ 1์ ๋ณด์๋ก ๋ํ๋ค๊ณ ํ ๊ฒ์ Carry ๋ฐ์ ์ Carry๋ฅผ ๋ํ๋ ๊ฒ์ ์๋ฏธํ๋ค. (2์ ๋ณด์ ๋ง์
์์๋ Carry ๋ฐ์ ์ Carry๋ฅผ ๋ฒ๋ฆฐ๋ค.) ์๋ ์์๋ฅผ ์ดํด๋ณด์.
์์ ๊ฐ์ด ๊ณ์ฐ๋ Checksum์ด Packet์ ๋ด๊ธฐ๊ฒ ๋๋ฉด ์์ ์ธก์์๋ ๋ชจ๋ Header์ ๋ด์ฉ๋ค์ ์ก์ ์ธก์์ Checksum์ ๊ณ์ฐํ์ ๋ ์ฒ๋ผ 16 ๋นํธ์ฉ ๋์ด์ ๋ชจ๋ ๋ํด๋ณด๊ฒ ๋๋ค. ์ด ๋ ๋ง์ผ Header์ ๋ฌธ์ ๊ฐ ์๋ค๋ฉด, ๊ฒฐ๊ณผ๋ FFFF๊ฐ ๋์ค๊ฒ ๋๊ณ Negate ์์ 0000์ด ๊ฒฐ๊ณผ๋ก ๋์ค๊ฒ ๋์ด ์์ ์ธก์์๋ ์ก์ ์ผ๋ก๋ถํฐ ๋ฐ์ Packet์ Header์ ๋ฌธ์ ๊ฐ ์๋ค๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. (์๋ ๊ทธ๋ฆผ์ ์ฐธ๊ณ )
7) Requirements for Internet Host (RFC1122)
Network Layer์์ ํต์ ์ ํ๊ธฐ ์ํด์ Host์ ์ํํธ์จ์ด์๋ IP์ ICMP (RFC792)๊ฐ ๊ตฌํ๋์ด ์์ด์ผ ํ๋ค.
Host์์ ๋์ํ๋ IP๋ ์์์ ์ธ๊ธํ๋ ๊ฒ์ฒ๋ผ 2๊ฐ์ง ๊ธฐ๋ฅ์ ์ํํ๋๋ฐ, ์ฒซ ์งธ๋ก๋ Datagram์ด ๋ณด๋ด์ง ์ ์๋๋ก Next Hopํ Gateway ํน์ Host๋ฅผ ์ฐพ์ ์ ์๋ Addressing, ๋ ์งธ๋ก๋ Datagram์ ๋ํ Fragmentation ๋ฐ Reassembling์ด๋ค.
ICMP๋ Network Layer๊ฐ ์ ์ ๋์์ด ๊ฐ๋ฅํ์ง ์ง๋จํ๋ ๊ธฐ๋ฅ์ ๋ํด์ ์ํํ๊ฒ ๋๋ค. ์์ ์นดํ
๊ณ ๋ฆฌ๋ค์์ ์ธ๊ธํ๋ ๋ด์ฉ๋ค์ด์ง๋ง ์์ฝํ์ฌ ์ ๋ฆฌํด๋ณด์.
Datagram์ ๋ฐ๋ ์ ์ฅ์์...
1.
Datagram์ด ์ฌ๋ฐ๋ฅธ ํ์์ธ์ง ํ์ธํ๋ค.
2.
ํ์ฌ Local Host๋ฅผ ํฅํด์ ์จ ๊ฒ์ด ๋ง๋์ง ํ์ธํ๋ค. (Destination์ด ๋์ธ์ง ํ์ธํ๋ ๊ฒ์ธ๋ฐ ์๋ ๊ธฐ์ค ์ค์ ํ๋๋ผ๋ ๋ง์กฑํ๋ฉด ๋๋ค.)
โข
Host์ IP ์ฃผ์์ ํด๋นํ ๋
โข
์ฐ๊ฒฐ๋ ๋คํธ์ํฌ์ ์ ํจํ IP Broadcast ์ฃผ์์ผ ๋
โข
Host๊ฐ ์์ ํ๋ Physical Interface๊ฐ Multicast ๊ทธ๋ฃน์ ์ํ๊ณ , ํด๋น Multicast ์ฃผ์๊ฐ ์ด์ฉ ๋์์ ๋
3.
Packet์ ๋ช
์๋ Option์ ๋ํด ์ฒ๋ฆฌํ๋ค.
4.
ํ์ํ๋ค๋ฉด Datagram์ Reassembleํ๋ค.
5.
Capsuleํ๋ ๋ฉ์ธ์ง๋ฅผ ์ ์ ํ Transport Layer Protocol ๋ชจ๋์๊ฒ ๋๊ฒจ์ค๋ค.
Datagram์ ๋ณด๋ด๋ ์ ์ฅ์์...
1.
Transport Layer์์ ์ค์ ๋์ง ์์ ํ๋๋ค์ ๋ํด์ ์ค์ ํ๋ค.
2.
์ฐ๊ฒฐ๋ ๋คํธ์ํฌ์์ ๊ฐ์ฅ ๋จผ์ Hop ํด์ผํ ์ฌ๋ฐ๋ฅธ ์ง์ ์ ๊ณ ๋ฅธ๋ค.
3.
ํ์ํ๋ค๋ฉด Datagram์ Fragment๋ก ๋๋๋ค.
4.
Packet์ ์ฌ๋ฐ๋ฅธ Data Link Layer์ Driver๋ก ๋ณด๋ธ๋ค.
์ถ๊ฐ์ ์ผ๋ก...
RFC1122์๋ ์ ๋ด์ฉ ์ธ์๋ IP ํต์ ์ ์ํด Routing Outbound Datagrams (Route Cache ํ์์ฑ, Default Gateway๋ค์ด ๋ช
์๋ ๋ฆฌ์คํธ ํ์์ฑ), Forwarding Outbound Datagrams (Local / Remote Decision์ ๋ํ Rule์ ํ์์ฑ, Gateway Selection์ ๋ํ Rule์ ํ์์ฑ), Dead Gateway Detection, New Gateway Selection, Host Initialization, ARP Cache Validation, ARP Packet Queue ๋ฑ์ด ๋ง์กฑ๋์ด์ผ ํ๋ค.
8) IPv4 Packet Forwarding
Forwarding ์ฉ์ด ๊ตฌ๋ถ
[1] Forwarding
Forwarding Table์ ์ด์ฉํ์ฌ Packet ํน์ Frame์ ํจ์จ์ ์ธ ์ ์ก์ ์ง์นญํ๋ค.
[2] Routing Algorithm
Source์ Destination ์ฌ์ด์์ ์ ํํด์ผํ ๊ฒฝ๋ก๋ฅผ ๊ฒฐ์ ํ ์ ์๋ ๊ท์น๋ค์ ์งํฉ์ ์ฐพ์๋ด๋ ๋ฐฉ๋ฒ์ด๋ค. ์ด๋ฅผ ํตํด Forwarding Table์ ๊ตฌ์ฑํ ์ ์๋ค.
[3] Routing Protocol
ํน์ Routing Algorithm์ ์คํํ ์ ์๋๋ก ๋ฉ์ธ์ง ๊ตํ์ ๋ํ ๋จ๊ณ๋ค์ ์ ์ ํด๋์ ๊ฒ์ ์๋ฏธํ๋ค.
Packet Forwarding?
IP๊ฐ ์ฌ์ฉํ๋ LAN ๊ธฐ์ (Ethernet ํน์ 802.3 ๋ฑ) ์ ๊ธฐ๋ฐํ Forwarding ๋ฐฉ๋ฒ์ ์๋ฏธํ๋ค. ์ด๋ฐ Packet Forwarding ๋ฐฉ์์๋ 2๊ฐ์ง๊ฐ ์๋ค.
[1] Direct Packet Forwarding
1.
B๊ฐ Packet์ A์๊ฒ ๋ณด๋ด๊ณ ์ถ์ ์ํฉ์ด๋ค.
2.
B๋ ์์ ์ IP ์ฃผ์์ Destination IP ์ฃผ์์ธ A์ IP ์ฃผ์๋ฅผ ์๊ณ ์๊ธฐ ๋๋ฌธ์ Mask ๊ณ์ฐ์ ํตํด ๋์ผํ Subnet์ ์๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
3. B๋ Forwarding Table์ ํตํด์ A์ Packet์ด ๋์ฐฉํ ์ ์๋๋ก Packet์ ๋ณด๋ด์ผํ๋ Next Hop์ ์ค์ ์ฃผ์๋ฅผ ์ฐพ์๋ธ๋ค.
4. Ethernet ๋ฑ์ ์ด์ฉํ๊ธฐ ์ํด B๋ Network Layer์์ Data Link Layer๋ก Packet์ ํ๋ ค๋ณด๋ธ๋ค. ๊ทธ๋ฆฌ๊ณ Next Hop ๋จ๋ง๋ก ๋ณด๋ด๊ฒ ๋๋ค. ํ์ฌ ๊ฒฝ์ฐ์๋ Next Hop์ผ๋ก ๋ฐ๋ก A์ ๋ณด๋ผ ์ ์๋ ์ํฉ์ด๋ค.
์ฃผํฉ์ ๋ถ๋ถ์ด Frame์ ํด๋นํ๋ SRC ๋จ๋ง ์ฃผ์, DST ๋จ๋ง ์ฃผ์๊ฐ ๊ธฐ๋ก ๋๋ฉฐ ํ๋ ๋ถ๋ถ์ด Packet์ ํด๋นํ๋ ๋ถ๋ถ์ด๋ค. ๊ทธ ์๋์ ๋ณด๋ฉด Header์ Payload (Datagram์ ์๋ฏธ)๋ก ๋๋์ด ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
[2] Indirect Packet Forwarding
1.
B๋ IP Packet์ D๋ผ๋ Host์๊ฒ ๋ณด๋ด๊ณ ์ถ์ ์ํฉ์ด๋ค.
2.
B๋ ์์ ์ IP ์ฃผ์์ Destination IP ์ฃผ์์ธ D์ IP ์ฃผ์๋ฅผ ์๊ณ ์๊ธฐ ๋๋ฌธ์ Mask ๊ณ์ฐ์ ํตํด ๋์ผํ Subnet์ ์์ง ์๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
3.
๋ฐ๋ผ์ ๋คํธ์ํฌ ๊น์ง ์ฐพ์๊ฐ ์ ์๋๋ก Router์๊ฒ ํด๋น Packet์ ๋ณด๋ด๊ฒ ๋๊ณ , D์ ํด๋นํ๋ Network๋ฅผ ์ฐพ์ ๋๊น์ง Indirect Packet Forwarding์ ๋ฐ๋ณตํ๊ฒ ๋๋ค. ๋ง์ผ D์ ํด๋นํ๋ ๋คํธ์ํฌ๋ฅผ ์ฐพ๊ฒ ๋๋ฉด Direct Packet Forwarding์ ์ํํ๊ฒ ๋๋ค.
ํ ๋ฒ์ Packet Forwarding์ ํ ์ ์๊ธฐ ๋๋ฌธ์ Router๋ก Forwarding ํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค. Frame์ ์ฐ์ฌ์ง ์ฃผ์์๋ ๋ฌ๋ฆฌ Packet์๋ ์ฌ์ ํ Source B, Destination D๊ฐ ์ ํ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
Forwarding Table Lookup Rule
์ด ๋ Packet์ Forwarding ํ ๊ณณ์ ์ฐพ๊ธฐ ์ํด์ Forwading Table์ Lookup ํ๋ Rule์ ๋ํด์ ์์๋ณด์.
๊ฒฐ๋ก ๋ถํฐ ๋งํ๋ฉด ๊ฐ์ฅ ๊ธด Network Prefix์ ๋ํด์ ๋จผ์ ์ฌ์ฉํด์ Matching์ด ๋๋์ง ์์๋ณธ๋ค. ์ด๋ฅผ Logest Prefix Matching์ด๋ผ๊ณ ํ๋ค.
์์๋ ๋ค์๊ณผ ๊ฐ๋ค.
[1] Full Matching์ด ๋ ๊ฒฝ์ฐ (Host๋ฅผ ๋ฐ๋ก ์ฐพ์ ๊ฒ์ผ๋ก Direct Forwarding์ ์ฌ์ฉํ๋ค.)
Destination IP ์ฃผ์์ ์๋ฒฝํ ์ผ์นํ ๊ฒฝ์ฐ๋ฅผ ๋งํ๋ค. ์ด ๊ฒฝ์ฐ์ Network Prefix๋ 32 ๋นํธ๋ก ๊ฐ์ฃผํ๋ค. ๊ฒฐ๊ณผ๋ก๋ ์ด์ฉํ Interface ์ฃผ์๋ฅผ ๋ฐ๊ฒ ๋๋ค.
[2] Network Matching์ด ๋ ๊ฒฝ์ฐ (Indirect Forwarding์ ์ฌ์ฉํ๋ค.)
๊ฐ์ฅ ๊ธด Network Prefix์ ํด๋นํ๋ Entry๋ถํฐ Destination IP ์ฃผ์์์ Matching ์ฌ๋ถ๋ฅผ Forwarding Table์์ ์ดํด๋ณธ๋ค. ๊ฒฐ๊ณผ๋ก๋ Next Hop ํด์ผํ Gateway์ Interface ์ฃผ์๋ฅผ ๋ฐ๊ฒ ๋๋ค.
[3] ์ 2๊ฐ์ง ๊ฒฝ์ฐ์ ๊ฑธ์น์ง ์์์ ๋, Default Route๊ฐ ์ ์๋์ด ์๋ ๊ฒฝ์ฐ
์ ํ์ ์ผ๋ก Default Route์ ํํ์ 0.0.0.0/0์ผ๋ก ๋ํ๋๋ค. Network Prefix๊ฐ 0 ๋นํธ์ด๋ฏ๋ก ์ ์๋ง ๋์ด ์๋ค๋ฉด ๋ชจ๋ ์ผ์นํ ์ ์๋ ์กฐ๊ฑด์ ๊ฐ๊ณ ์๋ค. ๊ฒฐ๊ณผ๋ก๋ Default Gateway์ Interface ์ฃผ์๋ฅผ ๋ฐ๊ฒ ๋๋ ๊ฒ์ด๋ค.
[4] Packet์ ํ๊ธฐ ์ฒ๋ถ
Entry Matching ์ฌ๋ถ ํ๋จ
์ ์ฌํญ์ ์ฝ์ด๋ณด๋ฉด Matching ์ฌ๋ถ๋ Network Prefix๋ฅผ ์ด์ฉํ๋ค๋ ๊ฒ์ ์ด๋ ดํ์ด ์ ์ ์๋๋ฐ, Network Prefix๋ฅผ ์ด์ฉํด์ ์ด๋ป๊ฒ Matching ์ฌ๋ถ๋ฅผ ์์๋ด๋์ง ํ์ธํด๋ณด์.
[1] Packet์ Destination IP ์ฃผ์๋ฅผ ๊ฐ๊ณ ์จ๋ค.
[2] Forwarding Table์์ ์ฐพ์ ๊ฐ์ฅ ๊ธด Network Prefix์ ํด๋นํ๋ Entry๋ฅผ ๊ฐ๊ณ ์จ๋ค.
[3] Destination IP ์ฃผ์์ Entry๋ก ์ป์ ๊ฐ์ ๋ํด & ์ฐ์ฐ์ ์ํํ๋ค.
[4] Source IP ์ฃผ์์ [3]์ ๊ฒฐ๊ณผ๋ฅผ ๋น๊ตํ๋ค.
[5] ๋ง์ผ ์ผ์นํ๋ค๋ฉด Entry์ ๋ํ ์ ๋ณด๋ฅผ Forwarding Table์์ ๊ฐ๊ณ ์์ ๋ฐํํ๋ค.
[6] ์ผ์นํ์ง ์์ผ๋ฉด ๊ทธ ๋ค์ Entry์ ๋ํด์ 2๋ฒ๋ถํฐ ๋ค์ ์ํํ๋ค.
์ ๊ณผ์ ์ ์์๋ฅผ ํตํด ์ดํด๋ณด์.
Destination IP ์ฃผ์๊ฐ 162.152.161.078 ์ด๋ผ๊ณ ํ์ ๋ ์๋ ๊ทธ๋ฆผ์์ Forwarding ํ ์ ์๋ Entry๋ ๋ ๋ฒ์งธ 163.152.161.0์ธ Entry์ด๋ค.
๋ง์ผ Destination IP ์ฃผ์๊ฐ 163.152.162.179 ์๋ค๋ฉด, ์ด ๋๋ ์๋ ๊ทธ๋ฆผ์์ Forwarding ํ ์ ์๋ Entry๋ Default Gateway๊ฐ ๋๋ค.
9) ARP(Address Resolution Protocol) (RFC826)
์ค์ ํต์ ์์ IP ์ฃผ์๋ ๋
ผ๋ฆฌ ์ฃผ์์ด๊ธฐ ๋๋ฌธ์ ์ด๊ฒ๋ง ์์์๋ ํต์ ์ ํ ์๊ฐ ์๋ค. ๊ธฐ๊ธฐ์ ์ค์ ์ฃผ์์ธ MAC ์ฃผ์๋ ํจ๊ป ์์์ผ ํ๋ค. ARP๋ ๋์ผํย LANย ๋ด์ ์ฐ๊ฒฐ๋ ์ปดํจํฐ์ย IPย ์ฃผ์์ ๋์๋๋ MAC ์ฃผ์๋ฅผ ์ป๋๋ฐ ์ฌ์ฉ๋๋ค. ๋ฐ๋ผ์ ์ค์ง์ ์ผ๋ก ARP๋ Network Layer์ Protocol์ ๋๋ Data Link Layer์ Protocol๋ก ๋ณผ ์ ์๋ค. ARP๊ฐ ๋์ํ๊ธฐ ์ํด์๋ ๊ธฐ๋ณธ์ ์ผ๋ก Data Link๊ฐ Broadcast์ ๋ํ ์์ฉ ๋ฅ๋ ฅ์ด ์๋ค๋ ๊ฒ์ ์ ์ ๋ก ํ๋ค. (Data Link๊ฐ Broadcast์ ๋ํ ์์ฉ ๋ฅ๋ ฅ์ด ์๋ค๋ ๊ฒ์ Limited Broadcast ์์ ์๋ฏธํ๊ธฐ ๋๋ฌธ์, ๊ทธ ๋ฒ์๊ฐ ํ๋์ Router๋ฅผ ๋ฒ์ด๋์ง ๋ชปํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.) ๊ฒฐ๋ก ์ ์ผ๋ก ARP๋ ๋
ผ๋ฆฌ์ ์ธ IP ์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ์ ์ธ MAC ์ฃผ์๋ก ๋ฐ๊พธ์ด์ฃผ๋ ํ๋กํ ํ ์ฝ์ด๋ค.
์๋์ ๊ทธ๋ฆผ์ ์ดํด๋ณด์. (์ด ์์๋ Indirect Packet Forwarding์ด ๋ ์ํ์ด๋ค.)
๋ง์ฝ ์ฐ๋ฆฌ๊ฐ WAN ๊ตฌ๊ฐ์ ๊ฑฐ์ณ์ ๊ตฌ๊ธ์ด๋ผ๋ LAN ๊ตฌ๊ฐ์ ๋์ฐฉํ๋ค๊ณ ๊ฐ์ ํด๋ณด์. ์ฐ๋ฆฌ๋ Router๋ฅผ ์ฐพ์์ผ๋ ์ด์ ์ํ๋ Server์ ์ ์ํด์ผํ๋ค. ์ด๋ป๊ฒ ์ฐพ์ ์ ์์๊น? LAN ๊ตฌ๊ฐ์์๋ IP ํต์ ์ ํ๋๊ฒ ์๋๋ผ MAC ํต์ ์ ํตํด Server์ ์ ์ํ๋ค๊ณ ํ๋ค. ํ์ง๋ง ์ด๋ Router๋ Server์ MAC ์ฃผ์๋ฅผ ๋ชจ๋ฅด๊ณ ์๋ค. ๊ทธ๋ฌ๋ฉด Router๋ MAC ์ฃผ์๋ฅผ ์ฐพ๊ธฐ ์ํด Broadcast ๋ฐฉ์์ผ๋ก ๋ชจ๋์๊ฒ MAC ์ฃผ์๋ฅผ Requestํ๋ค. ์ด๋, ํจ๊ป ์ ์ก๋ IP ์ฃผ์์ ์์ ์ IP ์ฃผ์๊ฐ ์ผ์นํ๋ Server๋ ์์ ์ MAC ์ฃผ์๋ฅผ ์ฒจ๋ถํด Reply๋ฅผ ๋ณด๋ด๊ฒ ๋๋ค. ์ด๋ ๊ฒ Server์ Destination IP ์ฃผ์์ ํด๋นํ๋ MAC ์ฃผ์๋ฅผ ์์๊ธฐ ๋๋ฌธ์ Router๋ ๋น๋ก์ Forwarding์ ํ ์ ์๋ค.
ARP ๋์ ์๋ฆฌ
[1] Host ์ก์ ์๋ Destination IP ์ฃผ์๋ฅผ ์ง์ ํ์ฌ Broadcast๋ฅผ ๋ณด๋ธ๋ค.
[2] IP์์๋ ARP๋ฅผ ์ด์ฉํ์ฌ ARP Request ๋ฉ์ธ์ง๋ฅผ ์์ฑ์ ์์ฒญํ๋ค.
[3] ARP Request ๋ฉ์ธ์ง๋ Data Link Layer์ผ๋ก ์ ๋ฌ๋๊ณ ์ ๋ฌ๋๊ณ Ethernet Frame์ผ๋ก Encapsulation (์บก์ํ)๋๋ค. โ ์ก์ ์ MAC ์ฃผ์๋ฅผ Sender Address, ์์ ์ MAC ์ฃผ์๋ฅผ Broadcast ์ฃผ์๋ก ์ง์ ํ๋ค.
[4] ๋ชจ๋ Host์ Router๋ Frame์ ์์ ํ ํ ์์ ์ ARP์๊ฒ ์ ๋ฌํ๋ค.
[5] Destination IP ์ฃผ์์ ์ผ์นํ๋ ์์คํ
์ ์์ ์ MAC ์ฃผ์๋ฅผ ํฌํจํ๊ณ ์๋ ARP Reply ๋ฉ์ธ์ง๋ฅผ ๋ณด๋ธ๋ค. ์ผ์นํ์ง ์๋ ์์คํ
๋ค์ ํด๋น Packet์ ํ๊ธฐ๋ฆฐ๋ค.
[6] ์ก์ ์ธก์ ์ง์ ํ IP ์ฃผ์์ ๋์ํ๋ MAC ์ฃผ์๋ฅผ ๋ฐ์ ์ ์๋ค.
ARP Request์ Broadcast, ARP Reply๋ Unicast
ARP Header
ARP Header์ Operation ํ๋์๋ Request, Reply ๋ฑ 2๊ฐ๋ง ์กด์ฌํ๋ค. Request๋ฅผ ํ ๋๋ 1, Reply์ ํ ๋์๋ 2๋ก ์ง์ ๋๋ค. Request๋ฅผ ๋ณด๋ผ ๋ Target Hardware Address๋ฅผ ๋ชจ๋ฅผ ๊ฒฝ์ฐ์ ์๋ต ํ๊ฑฐ๋, 0์ผ๋ก ์ฑ์ฐ๊ฑฐ๋, 1๋ก ์ฑ์๋ ๋๋ค. (ํ์ฌ๋ ๋์ฒด์ ์ผ๋ก 0์ผ๋ก ์ฑ์์ ๋ณด๋ธ๋ค.)
ARP Cache
ARP๋ ์๋๋ฅผ ํฅ์์ํค๊ธฐ ์ํด ๋ค์ํ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋๋ฐ ์ฒซ๋ฒ์งธ๊ฐ ๋ฐ๋ก ARP Cache์ด๋ค. ARP Request๋ฅผ ํตํด ์ป์ MAC ์ฃผ์๋ ๊ฐ๊น์ด ์๊ฐ์์ ๋ ์ฌ์ฉ๋ ์ ์๊ธฐ ๋๋ฌธ์ ARP Cache Table์ ์ผ์ ์๊ฐ๋์ ์ ์ฅํ๊ฒ ๋๋ค. ๋ค์ Request๋ฅผ ๋ณด๋ผ ๋, ์ฐ์ ์ ์ผ๋ก Cache Table์ ๊ฒ์ฌํ์ฌ ๋ง์ฝ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์์ผ๋ฉด ์ดํ ๊ณผ์ ์ ๊ฑฐ์น์ง ์๊ณ ์ํ๋ ์ฃผ์๋ฅผ ๋ฐ๋ก ์ ์ ์๊ฒ ๋๋ค. ํฐ๋ฏธ๋์์ arp -a ๋ช
๋ น์ด๋ฅผ ํ์ฉํ์ฌ ARP Cache Table์ ํ์ธํ ์ ์๋ค.
Gratuitous ARP (GARP)
Gratuitous ARP ๋ด๊ฐ ๊ฐ๊ณ ์๋ IP ์ฃผ์์ ๋ํ MAC ์ฃผ์๋ฅผ ์ป๊ธฐ ์ํด ARP Request์ ๋ณด๋ด๋ ํ์๋ฅผ ๋งํ๋ค. ์ด๋ Source์ Target์ IP ์ฃผ์๊ฐ ๊ฐ์ ํํ๋ก ์งํ๋๊ธฐ ๋๋ฌธ์, ๋ค๋ฅธ ์ด์ MAC ์ฃผ์๋ฅผ ์๊ณ ์ ํ๋ ์๋๊ฐ ์๋๋ค. ๋ฐ๋ผ์ ๋ง ๊ทธ๋๋ก ๋ฌด์ตํ ARP์ธ ๊ฒ์ด๋ค. ๊ทธ๋ผ์๋ Gratuitous ARP๊ฐ ์กด์ฌํ๋ ์ด์ ๋ ๋ฌด์์ผ๊น?
[1] Duplicated IP Address Detection
๋ค๋ฅธ Host์ ์๋ต์ด ์๋ ๊ฒฝ์ฐ ํด๋น IP ์ฃผ์๊ฐ ์ด๋ฏธ ๋ค๋ฅธ Host์ ์ํด์ ์ฌ์ฉ๋๊ณ ์์์ ์ ์ ์๋ค.
[2] ARP Caceh Update
๋์ผํ Subnet์์ ARP Cache๋ฅผ ์๋ก ์์ ํ๋๋ฐ ์ฌ์ฉ๋๋ค. ๋๊ตฐ๊ฐ๊ฐ GARP์ ํด๋นํ๋ Packet์ ๋ณด๋ด๊ฒ ๋๋ฉด, ํด๋น Packet์ ์์ ํ๋ ๋ชจ๋ Node๋ค์ ARP Cache๋ฅผ GARP Packet์ ์๋ {Sender MAC ์ฃผ์, Sender IP ์ฃผ์}๋ก ์
๋ฐ์ดํธ ํ๊ฒ ๋๋ค.
Proxy ARP
Proxy ARP๋ ํน์ Node๊ฐ ๋ค๋ฅธ Node๋ฅผ ๋์ ํ์ฌ ARP Request์ ์๋ตํ๋ ๊ธฐ๋ฒ์ด๋ค. ์ด ๋ ๋์ Reply๋ฅผ ๋ณด๋ธ Node๋ ์์ ์ ID๋ฅผ ์์ฌ ์ค์ Destination์ ํฅํด ๋ณด๋ธ ARP Packet์ ๋ํด์ ์ฒ๋ฆฌํ ์๋ฌด๋ฅผ ์ง๊ฒ ๋ง๋ ๋ค. ์ด๋ ๊ฒ ๋๋ฉด Proxy ARP๋ฅผ ์ด์ฉํ์ฌ Routing์ด๋ Default Gateway์ ๋ํ ์ค์ ์ด ์์ด๋ Subnet์ Node๊ฐ ์๊ฒฉ Subnet์ ๋๋ฌํ ์ ์๊ฒ ๋๋ค. ์๋ฅผ ์ดํด๋ณด์.
Subnet A์์ 172.16.10.100์ธ Host A๊ฐ Subnet B์ ์๋ 172.16.20.200์ Host D์๊ฒ Packet์ ๋ณด๋ด๋ ค๋ ์ํฉ์ด๋ค. ๊ทธ๋ฆผ์ ๋ํ๋ ๊ฒ์ฒ๋ผ Host A๋ 16์๋ฆฌ์ Subnet Mask๋ฅผ ๊ฐ๊ณ ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค. ์ด ๋ 172.16.X.X๋ ํด๋์ค B์ ํด๋นํ๊ณ ํด๋์ค B์ Subnet Mask๊ฐ 16์๋ฆฌ์ด๋, Host A๋ ์์ ์ด 172.16.0.0์ผ๋ก ๋์ด ์๋ ๋ชจ๋ ๋คํธ์ํฌ์ ํต์ ํ ์ ์๋ ๊ณณ์ ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋ ๊ฒ์ผ๋ก ์๊ฐํ๋ค. ARP ๋์ ํน์ฑ ์ Host A๊ฐ ์์ ๊ณผ ์ง์ ์ฐ๊ฒฐ๋ ๋ค๋ฅธ ๊ธฐ๊ธฐ์ ํต์ ์ ํ๋ ค๊ณ ํ๋ฉด ํด๋น Host์ Destination์ผ๋ก ARP Request๋ฅผ ๋ณด๋ด๊ฒ ๋๋ค๊ณ ํ์ผ๋ฏ๋ก, ๋ฐ๋ผ์ Host A๊ฐ Host D์๊ฒ Packet์ ๋ณด๋ด๋ ค๊ณ ํ๋ฉด Host A๋ Host D๊ฐ ์์ ์ด ๋ฐ๋ก ํต์ ์ ๋ณด๋ผ ์ ์๋ ๊ณณ์ ์ฐ๊ฒฐ๋์ด ์๋ค๊ณ ์๊ฐํ๊ฒ ๋๋ฏ๋ก ARP Request๋ฅผ ๋ฐ๋ก Host D์๊ฒ ๋ณด๋ด๊ฒ ๋๋ค. ์ด๋ ๊ฒ ๋ฐ๋ก Host D๋ก Packet์ ๋ณด๋ด๊ฒ ๋์๋ค๊ณ ๋ ํ์ง๋ง ์ค์ ๋ก๋ ์ด๋ฅผ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๋์ง ์ดํด๋ณด์.
Host D์ ๋๋ฌํ๊ธฐ ์ํด์ Host A๋ Host D์ MAC ์ฃผ์๋ฅผ ์์์ผ ํ๊ธฐ ๋๋ฌธ์, Host A๋ ์๋์ ํ์์ผ๋ก ARP Request๋ฅผ Subnet A์ Broadcastํ๊ฒ ๋๋ค.
ARP Request๋ฅผ Broadcast๋ก ๋ณด๋ด๊ธฐ ๋๋ฌธ์ Subnet A ๋ด์ ์๋ ๋ชจ๋ ๋
ธ๋๋ค์ด ์ด Packet์ ๋ฐ๊ฒ ๋์ง๋ง (Router์ e0 Interface๋ฅผ ํฌํจํ์ฌ), ์ค์ ๋ก Host D์๋ ์ด Packet์ด ๋๋ฌํ์ง ์๋๋ค. (์ด์ ๋ Broadcast๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ณ๋ค๋ฅธ ์ค์ ์ด ์๋ ํ Router๊ฐ Forward๋ฅผ ์ํค์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.) ํ์ง๋ง Router๋ Target IP ์ฃผ์์ธ 172.16.20.200์ด ๋ค๋ฅธ Subnet์ ์๋ ๊ฒ์ ์๊ณ ์๋๋ฐ๋ค๊ฐ, 172.16.20.200์ ๋๋ฌํ ์ ์๊ธฐ ๋๋ฌธ์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด Router ์์ ์ MAC ์ฃผ์๋ฅผ ์ค์ด์ Host A์๊ฒ ๋ต์ ํ๊ฒ ๋๋ค.
์์ธํ ๋ณด๋ฉด Host D์ MAC ์ฃผ์๊ฐ Target MAC์ผ๋ก ๋์ด ์์ง ์๊ณ Router์ MAC ์ฃผ์๊ฐ Target MAC ์ฃผ์๋ก ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
์ด๊ฒ์ด ๋ฐ๋ก Proxy ARP Reply๊ฐ ๋๊ฒ ๋ค. ์ด ๋ ๋ณด๋ด๋ Reply๋ Request๋ฅผ ๋ณด๋ธ Host A์๊ฒ ํญ์ Unicast๋ก ๋ตํ๊ฒ ๋๋ค.
Host A๊ฐ ARP Reply๋ฅผ ๋ฐ๊ฒ ๋๋ฉด, ARP Table์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์
๋ฐ์ดํธ ํ๊ฒ ๋๋ค. Host D์ ๋ํ MAC ์ฃผ์๋ฅผ Router์ MAC ์ฃผ์๋ก ๋ฐ๊พธ๊ฒ ๋๋ค.
์ด ๋๋ถํฐ Host A๋ Host D๋ก ๋ณด๋ด๋ ค๋ ๋ชจ๋ Packet์ Router์๊ฒ ๋ณด๋ด๊ฒ ๋๋ค. (Router๋ Host D๋ก ๋ณด๋ด๋ ๋ฐฉ๋ฒ์ ์๊ณ ์๊ณ Destination IP ์ฃผ์๋ Host D๋ฅผ ํฅํด ์๊ธฐ ๋๋ฌธ์ ์ฌ์ค ๋ณ ๋ฌธ์ ๊ฐ ๋์ง ์๋๋ค. Router๋ Host D๋ก ๊ฐ๋ Packet์ ๋ฐ๊ฒ ๋๋ฉด Host D์๊ฒ Forward ํด์ค๋ค.) ๋ํ Subnet A์ Host๋ค์๊ฒ ์๋ ARP Cache๋ Subnet B์ Host๋ค์ ๋ํด์ Router์ MAC ์ฃผ์๋ก ๋ชจ๋ ์
๋ฐ์ดํธ ๋๋ค. ๊ดํธ์ ์จ๋์ ๊ฒ์ฒ๋ผ Router๋ Subnet B์ ํด๋นํ๋ Host๋ค์๊ฒ ๋ณด๋ด๋ ๋ฐฉ๋ฒ์ ๋ค ์๊ณ ์๊ณ IP ์ฃผ์์ Destination์ด ๋ช
์ ๋์ด ์๊ธฐ ๋๋ฌธ์ Packet์ Host์๊ฒ Forward ํ ์ ์์ด ๋ณ ๋ฌธ์ ๊ฐ ๋์ง ์๋๋ค.
Host A์ ARP Cache๊ฐ ๋๊ฒ ๋ค.
Proxy ARP์ ์ฅ๋จ์
[1] ๊ฐ ๋คํธ์ํฌ์ Router๊ฐ ์์ด๋ ํ๋์ Router๋ง ์ฌ์ฉํ์ฌ ๋คํธ์ํฌ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ๋ค.
[2] Host๋ ๋คํธ์ํฌ์ ์ค์ง์ ์ธ ์ธ๋ถ ์ ๋ณด๋ ์์ง ๋ชปํ๊ณ , ARP Request๋ฅผ ๋ณด๋ด๋ณด๋ฉด์ ๊ทธ์ ์๋ฌด Destination์ ๋๋ฌํ ์ ์๋ Flat Network๋ผ๊ณ ๊ฐ์ ํ๊ฒ ๋๋ค. โ ํ์ฌ ๋ด๊ฐ ์ํ Segment์์ ARP Traffic์ด ๊ธ์ฆํ๊ฒ ๋๋ค.
[3] Proxy ARP๋ ARP Request์ Reply์ผ๋ก ๋ค๋ฅธ MAC ์ฃผ์๋ฅผ ์๋ตํด์ค๋ค๋ ์ ์์ ์ฌ์ค ARP Spoofing Attack๊ณผ ์ฑ์ง์ด ๋น์ทํ๋ค. ๋ฐ๋ผ์ ์ด ๋์ ARP Request์ ๋ํด์ Proxy ARP์ Request์ธ์ง ARP Spoofing Attack์ธ์ง ๊ตฌ๋ถํ๊ธฐ๊ฐ ์ด๋ ต๋ค.
10) ICMP(Internet Control Messeage Protocol)
ICMP๋ TCP/IP์์ IP Packet์ ์ฒ๋ฆฌํ ๋ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ์๋ ค์ฃผ๊ฑฐ๋ ๊ทธ์ ๊ฐ์ ๋ฌธ์ ์ ์ง๋จ์ ํ๋ Protocol์ด๋ค. ICMP๋ Network Layer์ ์ผ๋ถ์ด๋ฉฐ, IP Datagram ๋ฐ์ดํฐ ๋ถ๋ถ์ ํฌํจ๋์ด ์ ๋ฌ๋๋ค.
IP์๋ ์ค๋ก์ง Packet์ Destination์ ๋๋ฌ์ํค๊ธฐ ์ํ ๋ด์ฉ๋ค๋ก๋ง ๊ตฌ์ฑ๋์ด ์๋ค. ๋ฐ๋ผ์ ์ ์์ ์ผ๋ก Destination์ ๋๋ฌํ๋ ๊ฒฝ์ฐ IP์์ ํต์ ์ด ์ฑ๊ณตํ๊ณ ์ข
๋ฃ๋๋ฏ๋ก ์๋ฌด๋ฐ ๋ฌธ์ ๊ฐ ์๋ค.
ํ์ง๋ง ๋ง์ฝ Destination์ Host ํน์ Router๊ฐ ๊บผ์ ธ์๊ฑฐ๋ ์ฐ๊ฒฐ์ด ๋์ด์์ง ์์ ๊ฒฝ์ฐ, ์ด Packet์ ๋ณด๋ธ ์์ ์ ์ธก์ ์ด๋ฌํ ๋ฌธ์ ๊ฐ ์๊ฒผ๋ค๋ ๊ฒ์ ์๋ ค์ผ ํ์ง๋ง IP์๋ ๊ทธ๋ฌํ Error์ ๋ํ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ด ๋ช
์๋์ด ์์ง ์๋ค. ์ด๋ฌํ IP์ ๋ถ์กฑํ ๋ถ๋ถ์ ๋ฉ๊พธ๊ธฐ ์ํ์ฌ ์ฌ์ฉ๋๋ ๊ฒ์ด ๋ฐ๋ก ICMP์ด๋ค.
ICMP Header
ICMP์ ์ฉ๋
[1] Source ์๊ฒ IP ๋ฐ์ดํฐ๊ทธ๋จ ์ ์ก ์คํจ๋ฅผ ์๋ฆผ (ICMP Error Reporting Messages์ ํด๋น)
Packet ์ ์ก์ ์คํจํ์ ๋ Error๊ฐ ๋ฌ์์ ์๋ฆฌ๊ณ , ํด๋น Error์ ๋ํ ๋ด์ฉ์ ์๋ ค์ค๋ค. ๋จ, Source๊ฐ ํด๋น ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ ๊ฒฝ์ฐ์๋ง ๋ณด๋ธ๋ค. Source ์ชฝ์์ ๋ค์ ์๋ชป๋ Packet์ ๋ณด๋ด๋ ๊ฒ์ ๋ง๋ ๊ฒ์ด ๋ชฉํ์ด๋ค.
ICMP ๋ฉ์ธ์ง๋ฅผ Source์๊ฒ ๋ณด๋ด์ง ์๋ ๊ฒฝ์ฐ๋ ์๋๋ฐ, Router์์ Packet์ ์ ์ ์ ์ฅํ๋ ์ญํ ์ ํ๋ Queue๊ฐ ๊ฐ๋์ฐจ ์๋ ๊ฒฝ์ฐ์ด๋ค. ํด๋น ๊ฒฝ์ฐ์ Router ์ ์ฑ
์ ๋ฐ๋ผ์ ํด๋น Packet ๋ฒ๋ฆด ์ ์๊ฒ ๋๋๋ฐ, ์ด๊ฒ์ Source์ ์๋ชป์ด ์๋๊ธฐ ๋๋ฌธ์ ICMP ๋ฉ์ธ์ง๋ ์ ์ก๋์ง ์๋๋ค.
๋ค์๊ณผ ๊ฐ์ ๋ฉ์ธ์ง๋ค์ด ICMP Error Reporting Messages์ ํด๋นํ๋ค.
1.
Destination Unreachable (Type 3)
Destination์ ๋๋ฌํ ์ ์์์ ์๋ฏธํ๋ค. ์ฌ์ ์ ๋ฐ๋ผ์ ๋ค์ํ Code๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
โข
Code 1 (Host Unreachable)ย : ์ต์ข
๋จ๊ณ์ Router๊ฐ Destination์ Host๋ก Packet ์ ์ก์ ์คํจํ ๊ฒฝ์ฐ
โข
Code 2 (Protocol Unreachable)ย : Destination์ Host์์ ํน์ Protocol์ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ
โข
Code 3 (Port Unreachable)ย : Destination์ Host์ ํด๋น UDP์ Port ์ด๋ ค์์ง ์๋ ๊ฒฝ์ฐ(TCP์ ๊ฒฝ์ฐ์ Port๊ฐ ์ด๋ ค์์ง ์์ผ๋ฉด TCP RST Packet์ ๋ฐํํ๋ค.)
โข
Code 4 (Fragmentation needed and don't fragment was set)ย :ย IP Packet์ Fragmentation์ด ๋ฐ๋์ ํ์ํ์ง๋ง IP Header์ Don't fragment ํ๋๊ทธ๊ฐ ์ค์ ๋์ด Framentation์ ํ ์ ์๋ ๊ฒฝ์ฐ Router์ย ์ํด ๋ฐํ๋๋ค.
2.
Redirection (Type 5)
Routing ๊ฒฝ๋ก๊ฐ ์๋ชป๋์ด ์๋ก์ด ๊ฒฝ๋ก๋ฅผ ์ด์ ๊ฒฝ์ ์ง or Host์๊ฒ ์๋ ค์ฃผ๋ ๋ฉ์ธ์ง์ด๋ค.
3.
Source Quench (Deprecated)
4.
Time Exceeded (Type 11)
ํ์์์์ด ๋ฐ์ํ์ฌ IP Packet์ด ํ๊ธฐ๋์์์ ์๋ฆฌ๋ ๋ฉ์ธ์ง์ด๋ค. ํ์์์ ์ฌ์ ๋ Code๋ฅผ ํตํด ์ ์ ์๋ค.
โข
Code 0 (Time To Live exceeded in Transit)ย : IP Packet์ด ์ต์ข
Destination์ ๋๋ฌํ๊ธฐ ์ ์ TTL๊ฐ์ด 0์ด ๋์ดย ํด๋น Packet์ด ํ๊ธฐ๋์์์ ์๋ฆฌ๋ ๋ฉ์ธ์ง์ด๋ค.
โข
Code 1 (Fragment reassembly time exceeded)ย : IP Packet์ Reassemble ๊ณผ์ ์์ ํ์์์์ด ๋ฐ์ํ์ฌ ํด๋น IP Datagram์ด ๋ชจ๋ ํ๊ธฐ๋์์์ ์๋ฆฌ๋ ๋ฉ์ธ์ง. ์ผ๋ฐ์ ์ผ๋ก IP Datagram์ ์ผ๋ถ Frament๊ฐ ์ ์ก ๊ณผ์ ์์ ์์ค๋ ๊ฒฝ์ฐ Reassemble ๊ณผ์ ์์ ์คํจํ์ฌ ๋ฐ์ํ๋ค.
5.
Parameter Problem (Type 12)
[2] ์ง๋จ / ์ ๋ณด์ ๋ฌ (ICMP Query Messages์ ํด๋น)
๋คํธ์ํฌ ๊ด๋ฆฌ์์ ์ํด Router ํน์ Host๋ก๋ถํฐ ํน์ ์ ๋ณด๋ฅผ ์ป๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
1.
Ping
ํน์ IP ์ฃผ์์ ํต์ ์ด ๊ฐ๋ฅํ์ง๋ฅผ ํ์ธํ๋ ๋ฉ์ธ์ง์ด๋ค. ํด๋น ๋ช
๋ น์ด๋ฅผ ํตํด ๋ง๋ค์ด์ ์๋ต ์ฌ๋ถ, Round-Trip Time, TTL, Packet ์์ค์จ์ ํ์ธํ ์ ์๋ค.
ICMP ๋ฉ์ธ์ง Type 8๋ก Requestํ๋ฉฐ, Type 0์ผ๋ก Replyํ๋ค.
1) Round-Trip Time์ด๋?
๋คํธ์ํฌ ์์ ์ง์ ์์ ๋์ ์ง์ ์ผ๋ก ์ด๋ํ๊ณ ์์ ์ง์ ์ผ๋ก ๋ค์ ์ด๋ํ๋๋ฐ ๊ฑธ๋ฆฐ ์๊ฐ(ms)
2) TTL(Time To Live)์ด๋?
Packet์ด Router์์ ํ๊ธฐ๋๊ธฐ์ ์ ๋คํธ์ํฌ ๋ด์ ์กด์ฌํ๋๋ก ์ค์ ๋ ์๊ฐ์ ๋ปํ๋๋ฐ, Packet์ด Router๋ฅผ ํต๊ณผํ ๋ ๋ง๋ค TTL์ 1์ฉ ๊ฐ์ํ๋ค.
์๋์ ์ฌ์ง์ www.apple.com์ผ๋ก ping์ ๋ณด๋ธ ๊ฒฐ๊ณผ์ด๋ค.
Packet์๋ ์๊ฐ์ ์ ์ฅํ์ง ์๋๋ค. ์ปดํจํฐ์์ ๋ ๋ ์งํ ์๊ฐ๊ณผ ๋ฉ์ธ์ง๊ฐ ๋์์์ ๋์ ์๊ฐ์ ์ฐจ๋ฅผ ์ด์ฉํ์ฌ ์๋ณต ์๊ฐ์ ๊ตฌํ๋ค.
2.
Tracert / Traceroute
ํน์ IP ์ฃผ์๊น์ง ๊ฐ๋๋ฐ ๊ฑฐ์น Routing ๊ฒฝ๋ก๋ฅผ ๋ฐํํด์ค๋ค. Tracert๋ TTL์ 1๋ก ์ค์ ํ์ฌ Packet์ ์ ์กํ ํ ๋ค์ Router์์ TTL์ด 0์ด ๋๋ฉด์ ICMP Error๋ฅผ ๋ฐํํ๋ค. ๋ค์์ TTL์ 2๋ก ์ค์ ํ์ฌ Packet์ ๋ณด๋ธ๋ค. (... ์ดํ ๋ฐ๋ณต) ๊ทธ๋ฆฌ๊ณ ๋ชฉํ Router๊น์ง ๋ค์ TTL์ 1์ฉ ๋๋ ค๊ฐ๋ฉด์ Packet์ ์ ์กํ๋ ๋ฐฉ์์ด๋ค. ๊ฐ๋ ๊ฒฝ๋ก์ ์๋ ๋ชจ๋ Router๋ค์ TTL์ ๋ํด 0์ ๊ฒฝํํ๊ธฐ ๋๋ฌธ์ ICMP Error๋ฅผ ํตํด ๋ณธ์ธ์ Routing IP ์ฃผ์๋ฅผ ๋ฐํํ๊ณ ์ฐ๋ฆฌ๋ ์ด๊ฒ์ ํตํด ๋์ฐฉํ ๋๊น์ง์ ๊ฒฝ๋ก๋ฅผ ์๊ฒ ๋๋ ๊ฒ์ด๋ค. (๋ฐ๋ผ์ ์๋นํ ์๊ฐ์ด ์์๋๋ค.)
๋ค์๊ณผ ๊ฐ์ ๋ฉ์ธ์ง๋ค์ด ICMP Query Messages์ ํด๋นํ๋ค.
โข
Echo (Type 8)
โข
Router Solicitation and Router Advertisement
โข
Timestamp
โข
Address Mask
Datagram ์ด ๋ฌธ์ ๊ฐ ์๋ ๊ฒฝ์ฐ์๋ ICMP Error๊ฐ ๋ณด๋ด์ง์ง ์๋ ๊ฒฝ์ฐ
โข
ICMP Error ๋ฉ์ธ์ง์ Error์ผ ๋
โข
Checksum Error์ผ ๋ โ Checksum Error๋ Source๊ฐ ๊ณ ์น ์ ์๋ ๊ฒฝ์ฐ๊ฐ ์๋๋ค.
โข
Multicast / Broadcast ์ ์ก์ Error์ผ ๊ฒฝ์ฐ โ ๋๋ฌด ๋ง์ Error ๊ฐ ์ ๋ฌ๋ ์ ์๋ค.
โข
Source IP ์ฃผ์๋ก 0.0.0.0 ์ผ๋ก๋ถํฐ ์จ ๊ฒฝ์ฐ โ ์ธํฐํ์ด์ค๊ฐ ์์ง IP ์ฃผ์๋ฅผ ๋ชจ๋ฅธ๋ค. (DHCP)
โข
Killed IP ์ฃผ์๋ฅผ ๊ฐ์ง Source๊ฐ Fragment ๋ฅผ ๋๋ฅด๋ ์ค์ด์์ ๊ฒฝ์ฐ โ 2๋ฒ์งธ Fragment๋ถํฐ๋ Header์ ๋ํ ์ ๋ณด๊ฐ ์๊ณ ๋ฐ์ดํฐ๋ง ์๋ค.
Error Reporting ๋ฐ Query์ ๋ํ ๋ฉ์ธ์ง์ ๋ํด ๋ ๊ถ๊ธํ๋ฉด ์ง์ ์ฐพ์๋ณด์ธ์.
6. Transport Layer Protocol
1) ๊ฐ์
์ด ๊ณ์ธต์ Protocol์ Unique Endpoint๋ฅผ ๋์์ผ๋ก ํ๋ค. ๋ฐ๋ผ์ Uniqueํ Network Layer Address์ Port๋ฅผ ๋ถ์ฌ์ ํํํ๋ค. Network Layer Address๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ Endpoint ์ธก์์๋ IP ์ฃผ์๊ฐ ์์ ์ ๊ฒ์ด ์๋๋ฉด ๋ชจ๋ ๊ฑธ๋ฌ๋ฒ๋ฆฌ๊ณ , Port๊ฐ ๋ฌ๋ผ๋ ์ฐ์ ์ ์ผ๋ก IP ์ฃผ์๊ฐ ์์ ์ ๊ฒ๊ณผ ์ผ์นํ๋ฉด ์ผ๋จ ๋ฐ์๋ธ ํ์ Port์ ๋ง๊ฒ ์ฒ๋ฆฌํ๋ค.
Transport Layer Protocol์ Endpoint ์์คํ
์์๋ง ๊ตฌํ๋๋ค.
์๋ฅผ ๋ค์ด Router๊ฐ ์๋ Host, ์ฆ ์ปดํจํฐ๋ ์ค๋งํธํฐ ๋ฑ ์ข
๋จ ๋จ๋ง์์ ๊ตฌํ๋๋ค.
๋ํ์ ์ธ Transport Layer Protocol๋ก๋ UDP, TCP๊ฐ ์๋ค.
UDP์ Identifier ํ๊ธฐ๋ Local Endpoint๋ง ๋ช
์ํ๋๊ฒ ์ผ๋ฐ์ ์ผ๋ก
<UDP, Local IPv4 Address, Local Port, *, *> (IPv4 ์ฃผ์ 4 ๋ฐ์ดํธ + Port 2 ๋ฐ์ดํธ)
๋ก ๋ํ๋ธ๋ค.
TCP์ Identifier ํ๊ธฐ๋ Local ๋ฐ Peer์ Endpoint๋ฅผ ์์ผ๋ก ๋ช
์ํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ฏ๋ก
<TCP, Local IPv4 Address, Local Port, Remote IPv4 Address, Remote Port>
๋ก ๋ํ๋ธ๋ค.
UDP์ TCP์ Identifier ํ์์ ํตํด ์ ์ ์๋ ๊ฒ์ TCP์ Identifier๋ฅผ ๋ด์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๊ฐ ์กฐ๊ธ ๋ ๋ณต์กํ๋ค๋ ๊ฒ์ด๊ณ , TCP๋ Connection์ ๊ตฌ๋ถํ๋ค๋ ๊ฒ์ด๋ค.
์๋ ๊ทธ๋ฆผ์ ํต์ ์ ์ํ Connection ์ฐ๊ฒฐ ๊ตฌ์กฐ์ด๋ค. ๊ฐ๊ฐ ์ด ๋ ๋ํ๋ TCP Connection๋ค์ Uniqueํ๋ค.
Application-to-Application ํต์ ์ ํ ๋๋ Application์ ํด๋นํ๋ Port๊ฐ ์ด์ฉ๋๋๋ฐ, ์ด ๋ ์ผ๋ฐ์ ์ผ๋ก Application๋ค์ด ๋์๋ค๋ฐ์ ์ธ(Simultaneously) ํต์ ์ ํ๊ฒ ๋๊ธฐ ๋๋ฌธ์ Transport Layer๋ Application๋ค์๊ฒ Muliplexing์ ํตํด์ Port๋ฅผ ์ฐพ์๊ฐ ์ ์๋๋ก ๋์์ค๋ค.
๋ถ๊ฐ์ ์ธ ๊ธฐ๋ฅ์ผ๋ก๋ Reliability, Flow Control, Congestion Control, Connection Service๋ฑ์ ์ง์ํ๋ค.
๊ฐ Layer ๋ณ๋ก ๋ฐ Layer๋ก ๋ด๋ ค๊ฐ ๋๋ ์ผ์ผ์ด ๋ฐ์ดํฐ์ ๋ํ ๋ณต์ฌ๋ฅผ ์ํํ์ฌ ๋๊ธฐ๋ ๊ฒ์ด ์๋๋ผ ํฌ์ธํฐ์ ๊ฐ์ด Buffer์ ๋ด๊ฒจ ์๋ ์ฃผ์๋ง ๋๊ฒจ์ฃผ๋ ์์ผ๋ก ์ฒ๋ฆฌํ๋ค.
์ ๊ทธ๋ฆผ์์ ๊ณ์ธต ๋ณ ๋ํ๋ IP Tranportation Application ๊ฐ์ ๋ ์์ธํ ๋ฌ์ฌ๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค. (UDP์ ๊ฒฝ์ฐ์ด๋ค.)
์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด Application๊ฐ์ Port์ ํด๋นํ๋ Buffer์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ผ๋ฉด์ ์๋ก ์ํตํ๊ธฐ ์ํด์ ํน๋ณํ ๊ฐ์ฒด๊ฐ ๋ ํ์ํ๋ฐ, ์ด๊ฒ์ด ๋ฐ๋ก Socket์ด๋ค. Socket์ด๋ผ ํจ์ ํ๋์ Application Process์ Interface์ด๋ค. Socket์ (Local์ด๋ Remote๋ ) Application Process๋ก๋ถํฐ ๋ฉ์ธ์ง๋ฅผ ์ก์ ์์ ์ ๊ฐ๋ฅํ๊ฒ ํด์ค๋ค.
UDP Server Socket์ ๊ฒฝ์ฐ Application๊ณผ Socket ๊ทธ๋ฆฌ๊ณ Buffer๋ ๋ค์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ฒ๋ฆฌํ๋ค. (์์ธํ ์ค๋ช
์ ์๋ต โ jseo์๊ฒ ์ง๋ฌธ ํด์ฃผ์ธ์.)
๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋ TCP์ UDP๊ฐ Endpoint ์ ๋ณด๋ฅผ ์ฒ๋ฆฌํ๋ ํ๋ฆ์ ์๋์ ๊ฐ๋ค.
(๋ Protocol ๋ชจ๋ ์์์ ์ค๋ช
ํ๋ ๊ฐ Protocol๋ณ Identifier๋ฅผ ํ์ธํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.)
TCP
UDP
Port
Port๋ผ๋ ๊ฒ์ ๋ฌด์์ผ๊น? Transport Layer์์๋ ์ด Port๊ฐ ๊ต์ฅํ ์ค์ํ๋ฐ ์ด์ ๋ํด์ ์์๋ณด์.
Port๋ OS๊ฐ Endpoint๊ฐ ํต์ ์ ์ํด์ ์ด์ฉํ๋ ๋งค์ฒด์ด๋ค. ์ํํธ์จ์ด ์
์ฅ์์๋ ์์ ์ Process๋ฅผ ํน์ ํ๋ Logicalํ Identifier๋ผ๊ณ ๋ณผ ์ ์๋ค. ์ด๋ฌํ Port๋ ๋ ์ฌ์ฉ์ ํน์ ํน์ ํต์ ์ ๋ํ Protocol ํ์
์ IP ์ฃผ์์ ํจ๊ป ์ฎ์ด์ ์ฌ์ฉํ๊ฒ ๋๋ค. (Port๋ 2 ๋ฐ์ดํธ๋ก ํํ๋๋ค.) IANA์์๋ ์๋น์ค ๊ด๋ฆฌ๋ฅผ ์ํ ์ ์ฐจ์ Tranport Layer์ ํด๋นํ๋ Protocol์ Port๋ฅผ ๋ฑ๋กํ๋ ๊ฒ์ RFC6335๋ก ๋ฑ๋กํ์๋ค. ์ด ๋ Port๋ 3๊ฐ์ง ์ ํ์ผ๋ก ๋๋๋ค.
1.
System Ports (Well-Known Ports) โ 0(0x0000) ~ 1023(0x03FF)
2.
User Ports (Registered Ports) โ 1024(0x0400) ~ 49151(0xBFFF)
3.
Dynamic or Private Ports (Ephemeral Ports) โ 49152(0xC000) ~ 65535(0xFFFF)
๊ฐ ์ ํ์ ๋๋ ๋ฒ์๋ IANA๊ฐ ๊ณต์์ ์ผ๋ก ์ ์ง ์ค์ด๋ค.
2) TCP (Transmission Control Protocol)
TCP๊ฐ ๊ฐ๋ฐ๋ ๋ฐฐ๊ฒฝ์ ๊ตฐ์ฌ์ ์ธ ๋ชฉ์ ์ผ๋ก ์ด๋ ํ๊ฒฝ์์๋ ์ ์์ ์ผ๋ก ๋์๋๋ ๋คํธ์ํฌ ๊ฐ๋ฐํ๊ธฐ ์ํจ์ด๋ค. ์ด๋ฅผ ์ํด ์ฌ์ฉ๋ ๊ฒ์ด Pacekt ๊ตํ(Packet Switching) ๋ฐฉ์์ผ๋ก ๋ชฉ์ ์ง์ ๋ฐ๋ฅธ ๊ฒฝ๋ก๊ฐ ํ๋๋ผ๋ ์กด์ฌํ๋ค๋ฉด ํต์ ์ด ๋์ด์ง์ง ์๊ณ ๊ณ์๋ ์ ์๋๋ก ํ์๋ค. ๋ค๋ง ์ด ๋ฐฉ์์ ์ด๋ป๊ฒ๋ ํต์ ์ ์ ์งํ๋ ๊ฒ์ด ๋ชฉ์ ์ด๋ฏ๋ก ๋คํธ์ํฌ ํ๊ฒฝ์ ์์ ์ฑ์ ๋จ์ด์ง ์ ๋ฐ์ ์๋ค. ์ด๋ก ์ธํด ์ค๊ฐ์ ๋ฐ์ดํฐ๊ฐ ์ ์ค๋๊ฑฐ๋ ๋๋ฌด ๋ฆ๊ฒ ์ ๋ฌ๋๋ ๋ฑ ์ ๋ขฐ์ฑ์ด ๋จ์ด์ง๋ ๋ฌธ์ ๊ฐ ์์๋๋ฐ, ์ด๋ฌํ ๋ฌธ์ ์ ๋ค์ ํด๊ฒฐํ๊ณ ์ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ ์ ์๋ ํต์ Protocol์ ์ฐ๊ตฌํ๊ฒ ๋๊ณ , ์ด์ ๋ฐ๋ผ ๋์จ ๊ฒ์ด TCP์ด๋ค.
TCP Header
TCP์ ํน์ง
โข
Reliability, ์ ๋ขฐ์ฑ
TCP๋ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ๋ค. UDP์๋ ๋ค๋ฅด๊ฒ TCP๋ ACK๊ฐ ๊ฐ๋ฅํ๋ค. ์ฆ, TCP๋ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ACK๋ฅผ ๊ธฐ๋ฐ์ผ๋ก Server์ Client๊ฐ์ ํต์ ์์ ๋์น ๊ฒ์ด ์๋์ง ์ฃผ๊ธฐ์ ์ผ๋ก ํ์ธํ๋ค.
โข
Flow Control, ํ๋ฆ ์ ์ด
TCP ๋ฐ์ดํฐ์ Segment๋ฅผ ์ก์์ ํ๋ ์ปดํจํฐ๋ CPU์ ๋คํธ์ํฌ ๋์ญํญ์ ์ฐจ์ด ๋๋ฌธ์ ์๋ก ๋ค๋ฅธ ์๋๋ก ์๋ํ ์ ์๋ค. ์ด ๋, ์ก์ ์ธก์ ์๋๊ฐ ๋๋ฌด ๋น ๋ฅด๋ฉด ์์ ์ธก์ด ๋ฐ์๋ ์ ์ฅ ๊ฐ๋ฅํ ์ฉ๋์ ์ด๊ณผ ํ๋๋ฐ๋ ๊ณ์ ๋ณด๋ผ ์ ์๋ค. ์ด ํ ๋์ฐฉํ๋ ๋ฐ์ดํฐ๋ ์์ค๋ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ ์ ์ก๋์ ์์ ์ธก์ ๋ฐ๋ผ ์กฐ์ ํด์ผ ํ๋ค. TCP๋ ์ด๋ ๊ฒ ์ก์ ์๊ฐ ๋ณด๋ธ ๋ฐ์ดํฐ ์์ ์ ์ดํ๋ Flow Control ๋ฉ์ปค๋์ฆ์ ๊ตฌํํ๋ค. ๋ด๋ถ ๋ฐฉ์์ผ๋ก๋ Stop and Wait๋ฐฉ์, Sliding Window๋ฐฉ์์ด ์๋ค.
โข
Congestion Control, ํผ์ก ์ ์ด
์ด๊ธฐ TCP์๋ Congestion Control๋ผ๋ ์์๊ฐ ์์๋ค. ํ์ง๋ง ๋คํธ์ํฌ ๋ถํ๊ฐ ์ ์ ๋์ด๋๋ฉด์ ์ด๋ฌํ ๋ฉ์ปค๋์ฆ์ ๊ตฌํํ์๋ค. ๊ฐ๋จํ๊ฒ ์ก์ ์ธก์ 100์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ณ ์ถ์๋, ์ฒ์์ 5์ฉ ๋ณด๋ด๋ฉด์ ์์ ์ธก์ด ์ ๋ฐ๋๋ค๋ฉด ์ ์ ๋ณด๋ด๋ ์์ ๋๋ ค๊ฐ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค. ๊ทธ๋ฌ๋ค ์์ ์ธก์์ ๋ฐ์ดํฐ๋ฅผ ์ ๋๋ก ๋ฐ์ง ๋ชปํ๋ ๊ฒ์ด ํ์ธ๋๋ฉด ๊ทธ ์ฆ์ ์์ ๋ค์ ์ค์ธ๋ค. ์ด๋ ๊ฒ ๋ณด๋ด๋ ์์ ๋๋ฆฌ๊ณ ์ค์ด๋ ๋ฐฉ๋ฒ์ AIMD(Addictive Increase /Multicative Decrease)๋ฅผ ์ฑํํ๊ณ ์๋ค. ๊ถ๊ธํ๋ค๋ฉด ํด๋น ์๊ณ ๋ฆฌ์ฆ์ ์ฐพ์๋ณด์.
โข
Connection Service, ์ฐ๊ฒฐํ ์๋น์ค
Application Process๋ TCP๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ค๋ฉด ๋จผ์ ์์ ์ธก๊ณผ ์ฐ๊ฒฐ ์ค์ ์ ์๋ฃํด์ผ ํ๋ค. ์ด ๋ TCP ์ฐ๊ฒฐ์ 3-Way Handshake ์ ์ฐจ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฆฐ๋ค.
3) UDP
TCP๋ ์์ ๋งํ๋ ๊ฒ ์ฒ๋ผ ๋ฐ์ดํฐ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์, ๋๋ฝ๋ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋ฐ๊ธฐ์ํ ๋ฉ์ปค๋์ฆ์ด ์ ์๋์ด ์๋ค. ๊ทธ๋์ ์ด๋ฉ์ผ, ํ์ผ ์ ์ก๊ณผ ๊ฐ์ 100% ๋ฐ์ดํฐ ๋ณด์ฅ์ด ํ์ํ ๋ถ์ผ์์ ํ์๋ผ๊ณ ํ ์ ์๋ค.
ํ์ง๋ง ๋ง์ฝ ๋ทํ๋ฆญ์ค๋ฅผ ๋ณด๋๋ฐ ํฝ์
ํ์นธ ๋ฐ์ดํฐ๋ฅผ ๋ชป๋ฐ์์ ๋ฒํผ๋ง์ ํ๋ฉฐ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ฒ ๋ฐ๊ธฐ ์ํด์ ๋ฉ์ถ๊ฒ ๋๋ค๋ฉด ์ด๋จ๊น. ์ด์ฒ๋ผ ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ ์๋น์ค์์ TCP๊ฐ ์๋นํ ๋ถํธํ ์ ์๊ธฐ ๋๋ฌธ์ ํต์ ์ ์ต์ ๊ธฐ๋ฅ๋ง์ ์ํํ๋ UDP๋ฅผ ์ด์ฉํ๋ค.
UDP๋ ๊ฐ๋จํ๊ฒ TCP์ ๋ชจ๋ ์ ๋ขฐ์ฑ ๋ฉ์ปค๋์ฆ ๊ธฐ๋ฅ์ด ์๋ค๊ณ ๋ณด๋ฉด ๋๋ค. ์์ ์ธก๊ณผ ์ ์ํ๊ณ 48Kbps๋ก ์ ์ก ์๋๋ฅผ ์ค์ ํ์ผ๋ฉด ๋ฌด์กฐ๊ฑด 48Kbps๋ก ๋ฐ์ดํฐ๋ฅผ ์ผ๋ฐฉ์ ์ผ๋ก ์ ์กํ๊ธฐ๋ง ํ๋ค. ๋ฐ๋ ์ชฝ์์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ฒ ๋ฐ์๋์ง๋ ๊ณ ๋ คํ์ง ์๋๋ค! ๊ทธ๋์ ์ด๋์ ๋์ ๋ฐ์ดํฐ ์์ค์ด ์์ ์ ์์ผ๋ ํต์ ์๋๊ฐ ๋น ๋ฅด๋ค.
UDP Header
UDP์ Header๋ฅผ ์ดํด๋ณด๋ฉด TCP์๋ ๋ค๋ฅด๊ฒ Source ๋ฐ Destination์ IP ์ฃผ์, Checksum ๋ฑ ์ค์ ๋ฐ์ดํฐ๋ง ํฌํจ๋๊ณ ACK๊ฐ ์๋ค. ๊ทธ๋์ TCP๋ณด๋ค ์ฉ๋์ด ๊ฐ๋ณ๊ณ ์ก์ ์๋๊ฐ ๋น ๋ฅด๋ค.
UDP์ ํน์ง
โข
๋น์ฐ๊ฒฐํ ์๋น์ค
โข
์ ๋ขฐ์ฑ ์์
โข
๋น ๋ฅธ ์ ์ก ์๋
Quiz!
1) Netflix๋ TCP๋ฅผ ์ฌ์ฉํ๋๊ฐ UDP๋ฅผ ์ฌ์ฉํ๋๊ฐ?
2) e-mail์ TCP๋ฅผ ์ฌ์ฉํ๋๊ฐ UDP๋ฅผ ์ฌ์ฉํ๋๊ฐ?
์ ๋ต!
7. Application Layer Protocol
1) DHCP (Dynamic Host Configuration Protocol)
DHCP๋ Host์๊ฒ TCP/IP ๋คํธ์ํฌ์์ ์ฌ์ฉ๋๋ ์ค์ ์ ๋ณด๋ค์ ๋๊ฒจ์ฃผ๋ Framework๋ผ๊ณ ๋ณผ ์ ์๋ค. DHCP๋ ๋คํธ์ํฌ ๊ด๋ฆฌ์ (Network Administrator) ๊ด๋ฆฌ์ ์ค์ํ๋ฅผ ํ ์ ์๊ฒ ํด์ฃผ๊ณ , ์กฐ์ง ๋คํธ์ํฌ์ ๋ํด์ IPv4 ์ฃผ์ ํ ๋น์ ์๋ํ ํ ์ ์๊ฒ ํด์ค๋ค.
DHCP๊ฐ ์กฐ์ง ๋คํธ์ํฌ์ ํด๋น๋๋ Host๋ค์๊ฒ ์ฃผ์ ํ ๋น์ ์๋ํ๋ฅผ ๋ณด์ฅํด์ฃผ๊ธฐ ๋๋ฌธ์ ๋คํธ์ํฌ ๊ด๋ฆฌ์๊ฐ ์ผ์ผ์ด Host์ ์ฃผ์๋ฅผ ์๋์ ์ผ๋ก ํ ๋นํด์ฃผ๋ ๊ตฌ์กฐ๋ ์๋๋ค. ๊ด๋ฆฌ์๊ฐ ์ผ์ผ์ด ์๋์ ์ผ๋ก ํ ๋น์ด ๋ถ๊ฐ๋ฅํ ๊ฒ์ ์๋๋ค.
DHCP๋ RFC1531์์ ์ฒ์์ผ๋ก ์ ์๋์๊ณ , RFC1541 โ RFC2131 ์์ผ๋ก ๋ฐ์ ํด์๋ค. (DHCP๊ฐ ์ฒ์์ผ๋ก ๋ง๋ค์ด์ง๊ฑด 1987๋
๋์ด๋ค.) ์ด ๋ DHCP๋ BOOTP (Bootstrap Protocol)์ ์ฐ์ฅ์ ์ผ๋ก ๋ง๋ค์ด์ก์ผ๋ฉฐ, BOOTP๋ผ๊ณ ํ๋ ๊ฒ์ Server์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก๋ถํฐ Host์ ์ ๋ณด๋ฅผ ์ฌ์ ์๋ ์ค์ ํ๊ธฐ ์ํด ๊ณ ์๋ Protocol์ด๋ค.
BOOTP๋?
BOOTP๋ UDP/IP Protocol๋ก ๋์คํฌ ์์ด Client ๊ธฐ๊ธฐ์ IP ์ฃผ์, Server Host์ ์ฃผ์๋ฅผ ๊ฒฐ์ ํ ์ ์๊ฒ ํด์ฃผ๊ณ , ์ฃผ์ ๊ฒฐ์ ์ดํ์ Boot File์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํ์ฌ ๋ถํ
์ ํ ์ ์๋๋ก ํด๋น ํ์ผ์ ์ด๋ฆ์ ๋ฐํ์ฃผ๋ ์ญํ ์ ์ํํ๋ค.
์กฐ๊ธ ๋ ์์ธํ๊ฒ ์์๋ณด๋ฉด, BOOTP๋ ๋๊ฐ์ง Phase๋ก ์ฒ๋ฆฌ๋๋ค. ์ฒซ Phase์์๋ ์ฃผ์ ๊ฒฐ์ ๋ฐ Boot File ์ ํ์ด ์ด๋ค์ง๊ณ , ๋ ๋ฒ์งธ Phase์์๋ ์ฒซ Phase์์ ์ ํํ Boot File์ ๋ํ ์ ์ก์ด ์ด๋ค์ง๋ค. (์ด ๋ Boot File์ ์ ์ก์ TFTP (RFC783)์ ํตํด์ ์ด๋ค์ง๋ค.)
DHCP์์ ์ฐจ์ด๋ผ ํจ์ DHCP๊ฐ Dynamic Host Configuration Protocol์ด์๋ค๋ฉด, BOOTP๋ Static Host Configuration Protocol์ด๋ค. BOOTP๋ฅผ Static Host Configuration Protocol์ด๋ผ๊ณ ๋ถ๋ฅด๋ ์ด์ ๋ Physical Address์ ๋ฏธ๋ฆฌ Binding๋์ด ์๋ IP ์ฃผ์๊ฐ ์์ด์ Binding Table์์ ์ด๋ฅผ ๊ทธ์ ์ฝ์ด์ค๋ ๋ฐฉ์์ผ๋ก ๋์ํ๊ธฐ ๋๋ฌธ์ด๋ค.
DHCP๋ TCP/IP ๋ชจ๋ธ์์ Application Layer ์์์ ๋์ํ๋ Protocol์ด๋ค. DHCP๋ ์๋์ ๊ฐ์ด 3๊ฐ์ง ๊ธฐ๋ฅ์ ๋ํด์ ์ง์ํ๋ค. (Host์ ์์ธํ ์ค์ ์ ๋ณด๋ค์ Server์์ Host๋ก ์ ๋ฌํ์ฌ ๋คํธ์ํฌ ์ฃผ์ ํ ๋น์ ๊ฐ๋ฅํ๊ฒ ํ๋ค. ์ด ๋ 3๊ฐ์ง ๊ธฐ๋ฅ ๋ชจ๋ ์ฃผ์ ์๋ ์ค์ ๊ณผ ๊ด๋ จ์ด ์๋ค.)
Automatic Allocation
Client์๊ฒ Permanent IP ์ฃผ์๋ฅผ ํ ๋นํ๋ค.
Dynamic Allocation
์ ํ๋ ๊ธฐ๊ฐ๋์ ์ด์ ์๋ Non-Permanent IP ์ฃผ์๋ฅผ Client์๊ฒ ํ ๋นํ๋ค. (ํน์ Client๊ฐ ๋ช
์์ ์ผ๋ก ์ฃผ์์ ๋ํด์ ํฌ๊ธฐํ๊ธฐ ์ ๊น์ง ์ ํจํ IP ์ฃผ์๋ฅผ ํ ๋นํ ์๋ ์๋ค. ์ต๊ทผ์ ์์ฃผ ์ฐ๋ ๊ฒ์ ์ ํ๋ ๊ธฐ๊ฐ๋์ ์ด์ ์๋ IP ์ฃผ์์ด๋ค.)
Manual Allocation
Client์ IP ์ฃผ์๋ฅผ ๋คํธ์ํฌ ๊ด๋ฆฌ์๋ก๋ถํฐ ํ ๋น ๋ฐ๋ ๋ฐฉ์์ด๋ค. ์ด ๋ DHCP๋ ๋คํธ์ํฌ ๊ด๋ฆฌ์๋ก๋ถํฐ ๋ฐ์ IP ์ฃผ์๋ฅผ ๊ทธ์ ๋๋ฅด๋ ์ฉ๋๋ก๋ง ์ฌ์ฉ๋๋ค.
DHCP์ ์ค๊ณ ๋ชฉํ
1.
Mechanism rather than a policy
2.
Client should not require no manual reconfiguration
3.
Networks should require no manual configuration for individual clients
4.
DHCP should not require a server on each subnet
5.
DHCP must interoperate with the BOOTP relay agent behavior as described by RFC951 and by RFC1542
6.
A DHCP client must be prepared to received multiple responses to a request for configuration parameters
DHCP์์ ์ง์ผ์ ธ์ผ ํ๋ ์ฌํญ
1.
Uniqueํ Network Address๋ฅผ ํ ๋นํ๋ ๊ฒ์ ๋ณด์ฅํด์ผ ํ๋ค.
2.
Client ์ฌ๋ถํ
์ DHCP์ ๋ํ Client ์ค์ ์ ์ ์งํด์ผ ํ๋ค.
3.
์๋ก์ด Client์๊ฒ๋ ์ค์ ๊ฐ๋ค์ ๋ํ ์๋ ํ ๋น์ ํด์ค์ผ ํ๋ค.
4.
ํน์ Client์๊ฒ๋ ์ค์ ๊ฐ์ ๋ํ ๊ณ ์ ๊ฐ ํ ๋น์ ์ง์ํด์ผ ํ๋ค.
DHCP์ ํต์ฌ์ ์ธ ์ฅ์
1.
IP ์ฃผ์ ์ค์ ์ ์ค์ํ๋ ๊ด๋ฆฌ
2.
Dynamicํ Host ์ค์
3.
๋์ด์ง ์์ด ์์ฃผ ๋งค๋๋ฌ์ด IP Host ์ค์
4.
Flexibility, Scalability
DHCP์ ๋จ์
1.
DHCP Server๊ฐ ์ด์ฉ ๋ถ๊ฐ๋ฅํ ์ํ๋ผ๋ฉด, Client ์ธก์์๋ ๊ธฐ์
๋ค์ด ์ ๊ณตํด์ฃผ๋ ๋คํธ์ํฌ์ ๋ํด์ ์ ๊ทผ ์์ฒด๋ฅผ ํ ์ ์๋ ์ํ๊ฐ ๋๋ค.
2.
์๋ก์ด IP ์ฃผ์๋ฅผ ํ ๋น ๋ฐ์๋ค๋ฉด, ๋ด ๊ธฐ๊ธฐ์ ์ด๋ฆ์ ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ๋ค.
3.
DHCP๋ Unreliable ํ๊ณ Insecureํ UDP๋ฅผ ์ด์ฉํ๋ค.
4.
2๊ฐ์ง์ ์ฃผ์ ๋ณด์ ๋ฌธ์ ๊ฐ ์๋ค. (DHCP๋ Unauthenticated Protocol์ด๋ค.)
โข
๋คํธ์ํฌ์ ์ฐ๊ฒฐํ ๋ ์ฌ์ฉ์๋ Lease (์์ฐจ๊ถ)์ ์ป๊ธฐ ์ํด ์ด๋ค ์๊ฒฉ ์ฆ๋ช
๋ ํ์ง ์์๋ ๋๋ ํํ์ด๋ฏ๋ก, DHCPDISCOVER ๋ฉ์ธ์ง์ ๋ํด์ ๊ฒ์ฆ์ด ์ด๋ค์ง์ง ์๊ฒ ๋๋ค. ๋ฐ๋ผ์ ์ด๋ DHCP Starvation ๊ณต๊ฒฉ์ผ๋ก ์ด์ด์ง ์ ์๋ค.
โข
์ด๋ค Host๋ DHCP Server์ธ์ฒํ ์ ์๋ค. ์ด๋ ๊ณง DNS Spooffing ๊ณต๊ฒฉ์ผ๋ก ์ด์ด์ง ์ ์๋ค.
BOOTP vs DHCP
DHCP Message ํ์
โข
op (message op code)
1์ BOOTREQUEST, 2๋ BOOTREPLY์ด๋ค.
โข
htype (hardware address type)
โข
hlen (hardware address length)
โข
hops
Client๋ 0์ผ๋ก ์ฑ์์ ธ์์ผ๋ฉฐ, Relay Agent์ ์ํด์ ์ถ๊ฐ์ ์ผ๋ก ์ฌ์ฉ๋๊ณค ํ๋ค.
โข
xid (transaction id)
Client์ ์ํด์ ์ ํ๋ Randomํ ์์ด๋ค.
โข
secs
Client์ ์ํด์ ์ฑ์์ง๋ค. Client๊ฐ ์ฃผ์๋ฅผ ํ๋ํ๊ฑฐ๋ ๊ฐฑ์ ์ ํ๊ธฐ ์์ํ ํ๋ก ํ๋ฅธ ์๊ฐ์ด๋ค.
โข
flags
โข
ciaddr (client ip address)
Client์ State๊ฐ BOUND, RENEW, REBINDING์ธ ๊ฒฝ์ฐ์๋ง ์
๋ ฅ๋๋ค. ์ด ๊ฒฝ์ฐ์๋ ARP Request์ ๋ํด์ ์๋ต์ด ๊ฐ๋ฅํ๋ค.
โข
yiaddr (your (client) ip address)
โข
siaddr (bootstrap์์ ์ฌ์ฉํ ๋ค์ Server์ ip address)
Server์ ์ํ DHCPOFFER, DHCPACK์์ ์ฌ์ฉ๋๋ค. DHCP๋ BOOTP์ ์๋ฒฝํ ํธํ์ฑ์ ๋ณด์ธ๋ค๊ณ ํ์๋๋ฐ, DHCP๋ Client๊ฐ BOOTP์ ๋ ๋ฒ์งธ Phase (File ์ ์ก)๋ฅผ ์ํํ Server์ ์ฃผ์๋ก siaddr ํ๋์ ํด์์ ๋ช
ํํ ํ๊ฒ ๋๋ค.
โข
giaddr (relay agent ip address)
โข
chaddr (client hardware address)
โข
sname (optional server host name)
Null-Terminated String์ด ์ด์ฉ๋๋ค.
โข
options (optional parameters field)
DHCP๋ Application Layer๋จ์์ ๋์ํ๋ Protocol์ด๋ผ๊ณ ํ๋๋ฐ, ๊ทธ๋ ๋ค๋ฉด ์ค์ ๋ก ๋ค๋ฅธ Machine๊ณผ ํต์ ํ๋ฉด์ DHCP์ ๊ธฐ๋ฅ์ ์ํํ๊ธฐ ์ํด์ ๋ค๋ฅธ Layer์์ ์ฌ์ฉํ๋ Protocol์ ์ด๋ค ๊ฒ์ผ๊น? DHCP๋ Transport Layer์ UDP๋ฅผ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด์ฉํ๋ค.
DHCP Client โ DHCP Server์ ๊ฒฝ์ฐ UDP์ ๋ํ Port๋ก 67๋ฒ์ ์ด์ฉํ๊ณ , DHCP Server โ DHCP Client์ ๊ฒฝ์ฐ UDP์ ๋ํ Port๋ก 68๋ฒ์ ์ด์ฉํ๋ค.
DHCP ๋์๊ณผ์
DHCP Server์ DHCP๋ฅผ ์ด์ฉํ๊ณ ์ ํ๋ DHCP Client ๊ฐ ์๋ค๊ณ ํ ๋ ๋์ ์ํธ์์ฉ์ ์๋์ ๊ฐ๋ค. (Client-Server์ ์ํธ์์ฉ์ผ๋ก๋ 2๊ฐ์ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์๋ก์ด ๋คํธ์ํฌ ์ฃผ์๋ฅผ ํ ๋นํ๊ฑฐ๋, ๊ธฐ์กด์ ์ฌ์ฉํ๋ ๋คํธ์ํฌ ์ฃผ์๋ฅผ ์ฌ์ฌ์ฉํ๋ ๊ฒฝ์ฐ)
์ ๊ทธ๋ฆ ์์ DHCP Server๋ IP Address Pool์ ๊ฐ๊ณ ์์ผ๋ฉฐ, ์ด๋ IP ์ฃผ์๋ฅผ ์๊ตฌํ๋ ์ฌ์ฉ์์๊ฒ ๋๋ ์ฃผ๋ ์ญํ ์ ํ๋ค.
์ค์ ๋ก KT, LG U+์์๋ ๊ด๋ฆฌ ์ค์ํ ์ ์ฑ
์ ํผ์น๊ณ ์๊ณ , ์ฌ๋ฌ ์ฌ์ฉ์๋ค์๊ฒ IP ์ฃผ์๋ฅผ ํ ๋นํด์ฃผ๋ ๋งค์ฐ ํฐ DHCP Server๋ฅผ ์ด์ํ๊ณ ์๋ค. ์ฐ๋ฆฌ๊ฐ ์๊ณ ์๋ iptime๊ณผ ๊ฐ์ ์ธํฐ๋ท ๊ณต์ ๊ธฐ๋ Private IP ์ฃผ์๋ฅผ ํ ๋นํด์ฃผ๋ DHCP Server๋ฅผ ๊ฐ๊ณ ์๊ธดํ๋ค. ๋ํ ์ด๋ฐ ์ธํฐ๋ท ๊ณต์ ๊ธฐ๋ DHCP Client๋ก์จ๋ ์๋ํ๋๋ฐ, ์ด ๋๋ Private IP ์ฃผ์๋ฅผ ๋ฐ์์ PC์์ ์ด์ฉํ ์ ์๋๋ก ํด์ค๋ค.
DHCP / BOOTP๋ฅผ ์ด์ฉํ ๋ Relay Agent์ ๋ํด์ ์์๋ณด์. ์ผ๋ฐ์ ์ผ๋ก Broadcast๋๋ Packet๋ค์ Router ํน์ Gateway๋ค์ ๊ฐ๋ก์ง๋ฅผ ์ ์์ง๋ง, ๊ธฐ์
์ฐจ์์์ ์ด์๋๋ DHCP Server๋ Router ๋๋จธ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ๊ทธ๋ ๋ค๋ฉด ์ ๊ทธ๋ฆผ์์ ์ ์๋ IP ์ฃผ์ ํ ๋น์ ์ํ 4๊ฐ์ง ๋จ๊ณ๊ฐ Broadcast ๋ฉ์ธ์ง๋ฅผ ํตํด์๋ ์ด๋ค์ง ์ ์์ด์ผ ํ๋๋ฐ ์ด๋ป๊ฒ Router ๋๋จธ์ DHCP์ ์์ฒญ์ ๋ณด๋ผ ์ ์์๊น? ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด DHCP Relay Agent๋ผ๋ ๊ฒ์ด ์กด์ฌํ๊ณ , Relay Agent๋ Router์ ์ค์ ๋๋ค. ์ด๋ ๊ฒ Router์ ์ค์ ์ด ๋๋ฉด DHCPREQUEST๊ฐ Router์ ๋ค์ด์์ ๋ Router๋ DHCPREQUEST Packet์ Unicast๋ก ๋ณํํ๊ณ , ํด๋น Packet์ DHCP Server๋ก ๋ณด๋ผ ์ ์๊ฒ ๋๋ค. DHCP Server์์ ๋ณด๋ด๋ Packet๋ ๋ง์ฐฌ๊ฐ์ง๋ก Router์๊ฒ Unicast๋ก ๋ณด๋ด๊ฒ ๋๋ฉฐ, Router๋ ์ด Unicast๋ก ๋ฐ์ Packet์ Broadcast๋ก ๋ณํ (Broadcast๋ก์ ์ ๋ฌ์ ์ํด Client ์ฃผ์๋ฅผ Subnet ์ฃผ์๋ก ๋ณํ๋ ํด์ค)ํ์ฌ ์ ๋ฌํ๊ฒ ๋๋ค.
๋ค๋ฅธ Router์ ์ํด ๊ด๋ฆฌ๋์ด์ Relay Agent๋ฅผ ์ด์ฉํ ์๋ ์๋ค (Broadcast โ Unicast โ Broadcast)๋ ๊ฒ์ ์ ๋
ํ์ฌ ์ ๊ทธ๋ฆผ์ ๋ฐ๋ฅธ DHCP ๊ณผ์ ์ ๋จ๊ณ ๋ณ๋ก ์ดํด๋ณด์.
[1] Client๋ DHCPDISCOER ๋ฉ์ธ์ง๋ฅผ Broadcast๋ก ๋ณด๋ธ๋ค.
[2] Server๋ Client์ ๋ฉ์ธ์ง๋ก๋ถํฐ ๋ฐ์ํ์ฌ DHCPOFFER๋ฅผ ๋ณด๋ธ๋ค. ์ด ๋ DHCP Server๊ฐ ์ ์ํ IP ์ฃผ์๋ yiaddr ํ๋์ ์ฑ์์ ธ์ ๋ณด๋ด์ง๋ค. ์ด ๋ ์ ์ํ ์ฃผ์ ๊ฐ์ ๋ณ๋์ ํ
์ด๋ธ์ ๋๋ ๊ฒ์ฒ๋ผ Offerํ ์ฃผ์๋ฅผ Reserve ํ์ง ์๊ธฐ ๋๋ฌธ์ DHCPDISCOVER๋ฅผ ๋ฐ์์ DHCPOFFER๋ฅผ ํ์ ๋, ์ฌ๋ฌ Machine์๊ฒ ๋์ผํ ์ฃผ์๋ฅผ Offer ํ ์๋ ์๋ค. ๋ฐ๋ผ์ Offer ๋ฐ์ ๊ฒ์ ๋ํด์ ๋จผ์ Requset๋ฅผ ๋ณด๋ธ Client๊ฐ ์ฃผ์๋ฅผ ๊ฐ๊ฒ ๋๋ค. (Reserve๊ฐ ๋์ง ์๊ธฐ ๋๋ฌธ์ Server๋ Client๋ก๋ถํฐ Request๋ฅผ ๋ฐ์ ์ฃผ์๋ฅผ ํ ๋นํ ๋ ์ฌ์ฉ ์ค์ธ ์ฃผ์์ธ์ง ๋ฐ๋์ ํ์ธ์ ํ๊ฒ ๋๋ค.)
[3] Client๋ Server๊ฐ ์ ์ํ IP ์ฃผ์๋ค์ ๊ฒํ ํ๋ค. Client๋ ์ฌ์ฉํ๋ ค๊ณ ํ๋ IP ์ฃผ์๋ฅผ ์ ํ๋ค๋ฉด, ์ด๋ฅผ DHCPREQUEST ๋ฉ์ธ์ง์ ๋ด์ ๋ค์ Broadcast๋ก ๋ณด๋ธ๋ค. [1]๋ฒ ๊ณผ์ ์์์ Broadcast๋ DHCP Server๊ฐ ์ด๋์๋์ง ๋ชฐ๋ผ์ ๋ณด๋ธ Broadcast์๋ค๋ฉด, ์ฌ๊ธฐ์์ Boradcast๋ DHCP Server๊ฐ ์ด๋์๋์ง ์๋๋ฐ๋ Broadcast๋ก ๋ณด๋ด๋ ์ด์ ๋ ๋ฌด์์ผ๊น? ์ฌ์ฉํ๋ ค๊ณ ํ๋ DHCP Server์ ๋ํด์๋ง ACK, ๋๋จธ์ง๋ NAK์ด๋ผ๋ ๊ฒ์ ์๋ผ๊ณ ์ฌ์ฉํ๋ ค๋ DHCP Server์ IP ์ฃผ์๋ฅผ ๋ฉ์ธ์ง์ ๋ด์ Broadcastํ๋ค.
[4] Server๋ Lease Time๊น์ง ํด๋น ์ฃผ์๋ฅผ ์ด์ฉํ ์ ์๋๋ก ์ฃผ์์ ๋ํ Client์ Binding์ ์ํํ๋ค. (Binding์ ํด์ค์ผ ํ ๋น ๋๋ค.) Binding์ด ๋๋ฌ๋ค๋ฉด DHCPACK์ ๋ณด๋ด๊ฒ ๋๋ค. ๋ง์ผ ํ ๋น์ ์คํจํ๋ฉด Client์๊ฒ DHCPNAK์ ๋ณด๋ธ๋ค. (Client ์ธก์์ Server์์ ๋ณด๋ธ DHCPACK์ ๋ฐ์๋ค๋ฉด, ํด๋น Packet ๋ด์ ์๋ Lease Time๋ ํ์ธํ๋ฉด์ ๋ค๋ฅธ ๋ค์ํ Parameter์ ๋ํ ์ต์ข
ํ์ธ์ ํ ํ ์ด์ฉํ๋ค.)
Clarifications and Extensions for BOOTP (RFC1542)
์์ 1๋ฒ์์ Client๊ฐ DHCPDISCOVER ๋ฉ์ธ์ง๋ฅผ Broadcast ํ ๋๋ Local Physical Subnet ๋ด์์๋ง (Router๋ฅผ ๋ฒ์ด๋์ง ์๋ ๋ฒ์ ๋ด์์) ๋์ํ๋ค๊ณ ํ์๋ค. ํ์ง๋ง DHCP / BOOTP Relay Agent๊ฐ ์์ด์ ์ด๊ฒ์ด Router์ ์ค์ ๋์ด ์๋ค๋ฉด, ๋์ผํ Physical Subnet์ ์ํด์์ง ์๋๋ผ๋ Broadcast ๋ฉ์ธ์ง๋ฅผ Router ๋ฐ์ผ๋ก ๋๋ฆด ์ ์์๋ค. ์ด ๋ DHCP / BOOTP Relay Agent๊ฐ ๋์ํ๋ ๊ฒ์ ๋ํด์ ์์๋ณด์.
Relay Agent๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ DHCP ๋ฉ์ธ์ง ํ์์์ giaddr ํ๋์ ๊ด๋ จ ์๋ค. giaddr์ ์ ํ Relay Agent์ IP ์ฃผ์ ๋์ ClientโServer / ServerโClient์ ๋ํ ์ํํ ๋ฉ์ธ์ง ์ก์์ ์ด ๊ฐ๋ฅํ๋ค. ๋ง์ผ Relay Agent๊ฐ Request ํน์ Reply๋ฅผ ์ค๊ณํด์ฃผ๊ฒ ๋ค๊ณ ๊ฒฐ์ ํ๋ค๋ฉด, giaddr ํ๋๊ฐ 0์ผ๋ก ์ฑ์์ ธ ๋น์ด ์์ ๋ Relay Agent๋ ์ด ํ๋๋ฅผ ์์ ์ Interface์ ํด๋นํ๋ IP ์ฃผ์๋ก ์ฑ์ ๋ฃ๋๋ค. ์ด ๋, ์ด๋ค ๊ฒฝ์ฐ์๋ Relay Agent๋ giaddr ํ๋์ Broadcast ์ฃผ์๋ฅผ ์
๋ ฅํด์๋ ์ ๋๋ค. ๋ํ ๋ง์ผ giaddr ํ๋๊ฐ 0์ด ์๋ ๊ฐ์ผ๋ก ์ฑ์์ ธ์๋ค๋ฉด, ์ด ํ๋๋ ์ ๋ ์์ ๋์ด์๋ ์ ๋๋ค.
Host์ Router๋ ์ฌ๋ฐ๋ฅด์ง ์์ (illegalํ) Source IP ์ฃผ์๋ก๋ถํฐ Datagram์ ๋ฐ์์ ๋ ์ด๋ฅผ ๋ฒ๋ฆฌ๋๋ก ๋์ด ์๋๋ฐ, ์ด๋ฅผ Martial Address Filtering์ด๋ผ๊ณ ํ๋ค. ์ด ๋ ์ฌ๋ฐ๋ฅด์ง ์์ ์ฃผ์ ์ค์ ํ๋๋ 0.0.0.0์ด๋ค. ํ์ง๋ง DHCP / BOOTP Relay Agent๋ฅผ ์ง์ํ๋ Host ํน์ Router์์๋ ์์ ์ IP ์ฃผ์๋ฅผ ๋ชจ๋ฅด๋ (์์ง ์ค์ ์ด ๋์ง ์์๊ธฐ ๋๋ฌธ์) Source IP ์ฃผ์๋ก 0.0.0.0์ ์ฌ์ฉํ๋ Request๊ฐ ๋ด๊ธด ๋ฉ์ธ์ง๋ฅผ ์ค๊ณํด์ค์ผ ํ๋ฏ๋ก ์ด๋ฅผ ๋ฐ์ ์ ์์ด์ผ ํ๋ค.
Relay Agent๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋จ์ํ [1]์ ๊ณผ์ ๋ฟ ์๋๋ผ DHCP Server์ DHCP Client ์ฌ์ด ํต์ ์์ ๋ชจ๋ ์ผ์ด๋ ์ ์๋ค. (์ค๊ณ๊ฐ ํ์ํ๋ค๋ฉด ๋ง์ด๋ค.)
๋ํ Protocol์ ์ด์ฉํ๋ ์ํํธ์จ์ด๊ฐ IP ์ฃผ์ ๊ตฌ์ฑ์ด ๋์ง ์์์ Unicast๋ก Datagram์ ์์ ํ ์ ์๋ ์ํ๋ผ๋ฉด, DHCPDISCOVER์ DHCPREQUEST์์๋ flag ํ๋์ Broadcast ๋นํธ๋ฅผ 1๋ก ์ค์ ํด๋์์ผ ํ๋ค.
2) DNS
DNS๋ Domain Name System์ ์ฝ์ด์ด๋ค. ์ธํฐ๋ท ์์ ์ฌ์ฉ์๊ฐ ์ด๋ค ๊ฒ์ ์ฐธ์กฐํ๋ ค๊ณ ํ ๋ ์ธํฐ๋ท ์์์ ์ ํด์ง ์ด๋ฆ์ผ๋ก ์ฐธ์กฐํ ์ ์๋๋ก ํด์ฃผ๋ ์์คํ
์ด๋ค. ์ด ์์คํ
์ ํน์ ์ด๋ฆ์ ์ฃผ์๋ก ๋ณํํด์ฃผ๋ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ๋ค. ๋ฐ๋ผ์ ์ด๋ ๊ณง Domain ์ด๋ฆ์ IP ์ฃผ์๋ก Mapping ์ํค๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ฆ, DNS๋ Names๊ณผ Numbers ์ฌ์ด์ Mapping ๊ธฐ๋ฅ์ ์ ๊ณตํด์ค๋ค. (์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ์๋ค์ Names โ Numbers์ ๋ํ ๋ณํ์ ๋ ๋ง์ด ์ด์ฉํ๊ณ , ์ปดํจํฐ๋ Numbers โ Names๋ฅผ ๋ ๋ง์ด ์ด์ฉํ๋ค.)
DNS๋ ์ ์ญ์ ์ผ๋ก ๋ถ์ฐ๋์ด ์์นํด ์๋ค. ์ด ๋, DNS์์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ ์ง์ญ๋ณ๋ก ์ ์ฅ์ด ๋์ง๋ง, DNS์ ์ ๊ทผํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฐพ์์ฌ ๋๋ ์ ์ญ์ ์ผ๋ก ์ฐพ๊ฒ ๋๋ค. (DNS์ ํด๋นํ๋ ํ๋์ Machine์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋์ง ์๋๋ค๋ ๋ง์ด๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ์ง์ญ์ ์๋ DNS๊ฐ ๊ฐ๊ณ ์๋ ๋ฐ์ดํฐ๋ ์ง์ญ์ ๋ฐ๋ผ์ ์ฑ๋ฅ์ ๋์ด ์ฌ๋ฆฌ๊ธฐ ์ํด Caching์ ์ํํ๊ธฐ๋ ํ๋ค.) ๋ํ DNS์ ๋ํ Lookup์ ์ด๋ ๊ธฐ๊ธฐ์์๋ ์ํ๋ ์ ์์ด์ผ ํ๋ค.
DNS๊ฐ ์ค๊ณ ๋์์ ๋๋ ๊ณ์ธต์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋ชฉํ๋ก ์ค๊ณ ๋์์ผ๋ฉฐ, DNS ๊ด๋ฆฌ๋ ์ค์ ์ง์ค๋ ๊ฐ์ฒด๊ฐ ๋ชจ๋ DNS ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐฉ์์ด ์๋ ๊ฐ ๊ฐ์ฒด๋ง๋ค ๊ด๋ฆฌ๋ฅผ ๊ณต์ ํ๋ ๋ฐฉ์์ผ๋ก ์ค๊ณ๋์๋ค. ์ด๋ฐ ๊ด๋ฆฌ์ ๋ถ์ฐ์ Delegation์ด๋ผ๊ณ ํ๋ค.
DNS๋ฅผ ๊ตฌ์ฑํ๋ 3๊ฐ์ง ์์๋ Domain Name Space (DNS Name Space), Name Server (DNS Name Server), Resolver (DNS Resolver)์ด๋ค.
DNS Name Space
์ผ๋ฐ์ ์ผ๋ก URL์ ์ฌ์ฉํ ๋ www.kosaf.go.kr ๊ณผ ๊ฐ์ ์ฃผ์๊ฐ ์๋ค๊ณ ํ์. kosaf ์๋์ ์๋ go์ kr๋ค์ด Name Space๋ผ๊ณ ์๊ฐํ๋ฉด ํธํ ๋ฏํ๋ค.
์ธํฐ๋ท์ 200๊ฐ๊ฐ ๋๋ ์ต์์ Domain๋ค๋ก ๋๋์ด์ ธ ์๋ค. ์ฌ๊ธฐ์ ๋๋์ด์ง Domain๋ค์ ๋ค์ Sub-Domain์ผ๋ก ๋๋์ด์ง๊ธฐ ๋๋ฌธ์ ๋ชจ๋ Domain๋ค์ ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด Tree ํํ๋ก ๋ํ๋ผ ์ ์๋ค. ์์์ ๋ํ๋ ๊ฒ์ฒ๋ผ ์ต์์ Domain๋ค์ Genericํ๊ฑฐ๋ Country๋ฅผ ํํํ ์ ์์ด์ผ ํ๋ค.
Leaf Domain์ ํ๋์ Host๋ง ๊ฐ๊ณ ์์ ์๋ ์๊ณ , ๋งค์ฐ ๋ง์ Host๋ค์ ๋๊ณ ์๋ ํ๋์ ํ์ฌ๋ฅผ ๋ํ๋ผ ์๋ ์๋ค. ์ด ๋ Leaf Domain์ด๋ผ ํจ์ ๋ ์ด์์ Sub-Domain์ด ์๋ Domain์ ์๋ฏธํ๋ค. (Sub-Domain์ด ์๋ค ๋ฟ์ด์ง Host์ ํด๋นํ๋ Machine์ ์กด์ฌํ ์ ์๋ค.)
DNS Name Server
์ด๋ค Web Server๊ฐ ์๊ณ , Web Client๊ฐ ์์ ๋ ๋ Machine์ ์ซ์๋ก ์ด๋ค์ง IP ์ฃผ์๋ฅผ ์ด์ฉํ์ฌ ํต์ ํ๊ฒ ๋๋ค. ์ด๊ฒ ๊ฐ๋ฅํ๊ธฐ ์ํด์ , ๋ฌธ์๋ก ํํ๋ Domain Name์ด ์ซ์๋ก ์ด๋ค์ง IP ์ฃผ์๋ก ๋ณํ์ด ๋์ด์ผ ํ๋ค. ์ด ๊ณผ์ ์ ์ํด์ ์์์ ์ธ๊ธ๋ Tree ํํ๋ก ๋ DNS Name Space ์ ๋ณด๊ฐ ํ์ํ๋ฉฐ, ์ด ์ ๋ณด๋ฅผ ๊ฐ๊ณ ์๋ DNS Name Server๊ฐ ํ์ํ ๊ฒ์ด๋ค. Name Space ์ ๋ณด๋ฅผ ํตํด์ DNS Name Server๋ Domain Name๊ณผ IP ์ฃผ์ ๊ฐ ๋ณํ์ ์ํํด์ฃผ๊ณ , ์ด๋ ๊ฒ ๋ณํ๋ IP ์ฃผ์์ ๋ํ ์ ๋ณด๋ฅผ ํด๋น ์์
์ ์์ฒญํ๋ Resolver (Client๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.)์๊ฒ ๊ฐ์ ธ๋ค ์ค๋ค.
DNS Name Server์ ๊ฒฝ์ฐ ๊ฐ ์ง์ญ ๋ณ๋ก ์กด์ฌํ๋๋ฐ, ๊ฐ ์ง์ญ ๋ณ๋ก๋ 2๊ฐ์ Name Server๋ฅผ ๋์ด ์ฃผ Server (Primary Server)๊ฐ ํฐ์ง๋ฉด ๋ถ Server (Secondary Server)๋ฅผ ์ด์ฉํ ์ ์๋๋ก ํด๋์๋ค.
์ผ๋ฐ์ ์ผ๋ก๋ Primary Server๋ฅผ ์ฐ๋ ๊ฒ์ธ๋ฐ, Secondary Server๋ฅผ ์ฌ์ฉํด์ ํ๋ ๊ฒฝ์ฐ Primary Server์ ์ ๋ณด๊ฐ ์์ ์๋ ์์ง ์์๊ฐ? ๋ฐ๋ผ์ Secondary Server์ ๊ฒฝ์ฐ ์ฃผ๊ธฐ์ ์ผ๋ก Primary Sever๋ก๋ถํฐ ์ ๋ณด๋ค์ ๋ฐ์์์ Update๋ฅผ ์ํํ๋ค.
DNS Resolver
DNS Resolver๋ผ๊ณ ํ๋ ๊ฒ์ End User System (Endpoint์ ์์นํ ์ฌ์ฉ์์ ์์คํ
)๊ณผ DNS Name Server ์ฌ์ด์ ์์นํ Proxy (Intermediary Agent)๋ก ์ค๊ฐ์ ์ญํ ์ ์ํํ๋ค.
Domain Name์ ๊ณ์ธต(Layer)๋ณ๋ก ๊ตฌ๋ถ๋๋ฉฐ ๊ฐ ๊ณ์ธต์ Domain Level์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ฐ Level์์์ Host๋ ์์ ์ ์ง์นญํ๋ Label Name์ ๊ฐ๊ณ ์๋๋ฐ, ์ด ๋์ Domain Name์ ์์ ์ ์ง์นญํ๋ Label Name์ผ๋ก ์์ํ์ฌ ์ต์์ Host์ Label Name๊น์ง๋ก ๋ํ๋ธ๋ค. ์ด ๋ ๊ฐ Label Name์ . (Dot)์ผ๋ก ๊ตฌ๋ถ๋๋ค. ์๋์ ๊ทธ๋ฆผ์ ํตํด ์ฝ๊ฒ ์ดํดํ ์ ์๋ค.
์๋ฅผ ๋ค์ด์ rose.first.co.kr๋ผ๊ณ ์ฃผ์ด์ก๋ค๊ณ ํด๋ณด์. ๊ฐ Label์ ์๋ฏธ๋ ์๋์ ๊ฐ์ ์ ์๋ค.
rose
ํ์ฌ๋ช
first
์ด๋ฆ์ด rose์ธ Host ์ปดํจํฐ (Web Server)
co
ํ์ฌ Domain์์ ์๋ฏธํจ (Company์ ์ฝ์)
kr
์ต์์ Level ์ธ ๊ตญ๊ฐ Domain (๋ํ๋ฏผ๊ตญ)
๊ทธ๋ ๋ค๋ฉด DNS๊ฐ ์ด๋ป๊ฒ ๋์ํ๋์ง ์์๋ณด์.
Client๋ DNS Resolver๋ผ๋ ๋ฉ์ปค๋์ฆ์ ์ด์ฉํ์ฌ Server์๊ฒ Domain Name์ ํด๋นํ๋ IP ์ฃผ์๋ฅผ ๋ฌผ์ด๋ณธ๋ค. (์ด๋ฅผ Query๋ผ๊ณ ํ๋ค.) Query๋ฅผ ๋ฐ์ Server๋ ์ด์ ๋ํ ๋ต์ ์ฐพ๋ ์๋๋ฅผ ํ๋ค. ์ด ๋ Server๋ Recursiveํ๊ฒ, Root๋ถํฐ Top to Bottom์ผ๋ก ๋ต์ ์ฐพ์ผ๋ ค๊ณ ํ๋ค. ํน์ฌ๋ ์์ ์ Machine ๋ด์์ ๋ต์ ์ฐพ์ง ๋ชปํ๋ค๋ฉด ๋ค๋ฅธ Server์๊ฒ ๋ต์ ๋ฌผ์ด๋ณด๊ฒ ๋๋ค. (์ฆ, Server๋ ๋ค๋ฅธ Server์ ์ํด ์ฐธ์กฐ๋ ์ ์๋ค๋ ๊ฒ์ด๋ค.)
Name Server๋ Name Space์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ๊ณ ์๊ณ , ์ด ์ ๋ณด์ ํํ๋ Tree๋ผ๊ณ ํ์๋ค. ๊ฐ ๋
ธ๋์ ๋ํด์ ์ฌ๊ท์ ์ผ๋ก ์ฐพ๊ฒ ๋๋ค.
DNS Resolver๋?
DNS Resolver๋ OS์ Resolver๋ฅผ ์๋ฏธํ๋ค. ์ด๋ Client๊ฐ ์ํ๋ IP ์ฃผ์๋ฅผ ์ฐพ์๋ณด๋ ์ญํ ์ ํ๋ค. Linux์์๋ ์ด DNS Resolver์ ํด๋นํ๋ ๊ฒ์ด ๋ฐ๋ก /etc/resolv/conf๊ฐ ๋๋ค.
์๋ฅผ ๋ค์ด์ www.yahoo.com ์ ์ ์ํ๋ ค๊ณ ํ์ ๋, Web Browser๋ OS์๊ฒ www.yahoo.com ์ IP ์ฃผ์๊ฐ ์ด๋ป๊ฒ ๋๋์ง ๋ฌป๊ฒ ๋๋ค. ์ด ๋ OS๋ ์ด๋ Name Server์ ์ด๊ฑธ ๋ฌผ์ด๋ด์ผํ๋์ง Resolver Configuration์ ์ดํด๋ณด๊ฒ ๋๋ค. ๊ทธ๋ฆฌ๊ณ Query๋ฅผ ๋ ๋ฆด Name Server๋ฅผ ์ ํ๋ฉด Query๋ฅผ ๋ ๋ฆฌ๊ณ ๋ต์ ๋ฐ๊ฒ ๋๋ค.
์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ ํํ๋ก ๋ํ๋๋ฉฐ, ์ด๋ฅผ ํตํด Name Server๊ฐ ๋ฐ๋ณต์ ์ธ ์ํ์ ํตํด ๋ต์ ์ฐพ์๋ด๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
DNS ๋์ ๊ณผ์
[1] End User 1 ์์คํ
์ด DNS Resolver์์ Domain Name์ ํด๋นํ๋ IP ์ฃผ์๋ฅผ ์ฐพ์ ์ ์๋๋ก Recursiveํ DNS Query๋ฅผ ๋ง๋ ๋ค.
[2] DNS Resolver๋ DNS ๋ฐ์ดํฐ๋ค์ด Caching๋์ด ์๋ DNS Record Cache์์ Query์ ๋ํ ๋ด์ฉ์ ์ฐพ์๋ณธ๋ค. ๋ง์ผ Query์ ๋ํ ํด๋ต์ด ์๋ค๋ฉด ํด๋น ๋ต์ ๋ฐํํ๋ค. (์ด ์ํ๋ฅผ FQDN์ด ์กด์ฌํ๋ค๊ณ ํ๋ค. FQDN์ Full-Qualified Domain Name์ ์ฝ์ด์ด๋ค.) ๋ต์ ์ฐพ์ง ๋ชปํ ๊ฒฝ์ฐ๋ Cache Miss๋ผ๊ณ ํ๋ค. (Cache ํ
์ด๋ธ์ด ๋น์ด ์์ด์ ๋ต์ ์ฐพ์ง ๋ชปํ๋ ๊ฒ ์ญ์ Cache Miss์ด๋ค.)
[3] Cache Miss๊ฐ ๋ฌ๊ธฐ ๋๋ฌธ์ DNS Resolver๋ ์ฌ๋ฌ DNS Name Server์ ๋ํด์ Iterative Query๋ฅผ ๋ณด๋ด๊ธฐ ์์ํ๋ค.
[4] ์ฌ๋ฌ DNS Name Server์๊ฒ Query๋ฅผ ๋ณด๋ด๊ณ ๋ ํ, ํน์ Server๋ Domain Name์ ํด๋นํ๋ DNS Record๋ฅผ ์๋ตํ๊ฒ ๋๋ค.
[5] DNS Name Server๋ก๋ถํฐ DNS Record๋ฅผ ๋ฐ๊ฒ๋๋ฉด, ์ด ์ ๋ณด๋ฅผ DNS Resolver์ Caching์ ์ํํ๋ค. ์ด ๋ Caching๋ Entry๋ค์ ๋ํด์๋ TTL(Time To Live)์ด๋ผ๊ณ ํ๋ ๋ง๋ฃ ์๊ฐ์ ๋ํ ๊ฐ๋ ๊ฐ์ด ๊ธฐ๋ก๋๋ค. ๋ง์ผ TTL์ด ๋ง๋ฃ๋๋ฉด, Cache์ ๋ํ Entry๋ DNS Record Cache์์ ์ฌ๋ผ์ง๊ฒ ๋๋ค. (์ผ๋ฐ์ ์ผ๋ก TTL์ 3600์ด๋ถํฐ ์์ํ๋ Count Down Timer๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.)
[6] DNS Resolver๋ Caching์ ๋ง์น๊ณ Query์ ๋ํ ๋ต์ End User 1์๊ฒ ๋๊น์ผ๋ก์จ User1์ Domain Name์ ๋ํ IP ์ฃผ์๋ฅผ ์๊ฒ ๋๋ค.
[7] 6๊น์ง ๊ณผ์ ์ ๊ฑฐ์น ํ์ ์๋ก์ด End User 2 ์์คํ
์ ์ด์ ์ End User 1 ์์คํ
์ด ๋ฐฉ๋ฌธํ๋ Domain Name์ ๋ฐฉ๋ฌธํ๋ ค๊ณ ํ๋ ์ํฉ์ด๋ผ๊ณ ํ์. End User 2 ์์คํ
์ญ์ DNS Resolver๋ก๋ถํฐ ํด๋น Domain Name์ FQDN์ ์ป๊ธฐ ์ํ Recursive Query๋ฅผ ๋ง๋ค์ด ๋ณด๋ด๊ฒ ๋๋ค.
[8] DNS Resolver๊ฐ Cache ๋ฐ์ดํฐ๋ฅผ ์ฐพ์๋ณด๋ฉด์ Query์ ๋ํ FQDN์ ์ฐพ์๊ธฐ ๋๋ฌธ์ (๋จ, TTL์ด 0์ผ๋ก Tick Down๋์ง ์์ ์ํ์ผ ๋) ์ด ๊ฒฝ์ฐ์๋ DNS Resolver๋ DNS Name Server์์ ์ถ๊ฐ์ ์ธ ํต์ ์์ด๋ Query์ ๋ํ ๋ต์ ๋ฐํํด์ค ์ ์๋ค. (์ด ๊ณผ์ ์ ๊ต์ฅํ ๋ง์ ์๊ฐ์ ์ค์ผ ์ ์๋ค.)
[9] DNS Resolver๋ ์ฐพ์๋ ๋ต์ ์๋ตํ์ฌ End User 2 ์์คํ
์ Domain Name์ ๋ํ IP ์ฃผ์๋ฅผ ์ป์ผ๋ฉด์ Transaction์ด ์ข
๋ฃ๋๋ค.
Recursive Query vs Iterative Query
DNS๋ฅผ ์ด์ฉํ์ฌ Name Server์ ํด๋นํ๋ IP ์ฃผ์๋ฅผ ์ป์ผ๋ ค๊ณ ํ ๋, ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ ์ฐ์ธ๋ค. ๋ค๋ง ์ด๋์์ ์ฌ์ฉ๋๋์ง ๊ทธ ์ฃผ์ฒด๊ฐ ๋ค๋ฅด๋ค. ์ ๊ทธ๋ฆผ์ ๋์๊ณผ์ ์ ์์ธํ ๋ค๋ค์ผ๋ ์๊ฒ ์ง๋ง Recursive๋ ์ต์์ Domain์ Name Space์ ๋ํด์ ๊ฐ Node๋ฅผ ํ๊ณ ๊ฐ๋ ๊ณผ์ ์์ Query๊ฐ ์ผ์ด๋๊ฒ ๋๊ณ (์ฆ, ๋ต์ ์ฐพ๋ ๊ณผ์ ์์ ์ฌ์ฉ๋จ), Iterative๋ Query์ ๋ํ ๋ต์ ์ฐพ์ง ๋ชปํ์ฌ Resolver๊ฐ ๊ฐ Name Server์๊ฒ ๋ฐ๋ณต์ ์ผ๋ก Query๋ฅผ ๋ฌป๊ณ ๋์ด๊ฐ๋ ๊ณผ์ ์์ ๋ฐ์ํ๋ค.
๋ง์ผ DNS Name Server๊ฐ ๋ต์ ๊ฐ๊ณ ์์ง ์๋ค๋ฉด, ๋ฐ๋ก ๋ค์ Name Server์ ๋ฌป๋ ๊ฒ์ด ์๋๋ผ ์ด๋ Name Server๋ก ๋ฌผ์ด๋ณด๋ฉด ์ข๊ฒ ๋ค๋ ์ถ์ฒ์ ๋ํ ์๋ต์ ๋ณด๋ด์ฃผ๊ฒ ๋๋ค. ๋ฐ๋๋ก ๋ง์ผ Name Server๊ฐ Query์ ๋ํ ๋ต์ ๊ฐ๊ณ ์๋ค๋ฉด, ํด๋น ๋ต์ ์๋ตํ๊ฒ ๋๋ค. ์ ๊ทธ๋ฆผ์ Iterative Query ๋ถ๋ถ์์ (๋ค๋ฅธ Name Server๋ก ๋ถํฐ ๋ฐ์ ์ถ์ฒ์ ํตํด) ๋ต์ ์ฐพ์๋ด๋ ๊ณผ์ ์ ์ ์ ์ผ๋ก OS์ Resolver์ ๋ฌ๋ ค์๋ค.
Domain vs Zone
Domain์ ํ Node์์ ๊ด๋ฆฌํ๋ ์์ญ์ ๋งํ๊ณ (์ฆ, ํด๋น Node์ ํ์ ์์ญ์ ํฌํจํ ์์ญ ํน์ ํ ๊ฐ์ฒด์ ์ํด ๊ด๋ฆฌ๋๋ ๋ถ๋ถ ์์ญ์ ๋งํจ), Zone์ ํ๋์ Name Server๊ฐ ๊ด๋ฆฌํ๋ ์์ญ์ ๋งํ๋ค.
Delegation
DNS์ ์ฅ์ ์ค์ ํ๋์ด๋ค. Domain Name ๊ด๋ฆฌ์ ๋ถ์ฐ์ด ๊ฐ๋ฅํด์ง๋ค. (Scale ์ธก๋ฉด์์๋ ์ข์)
ํฐ ์กฐ์ง์ ๋ถ์๋ผ๋ ๊ฐ, ๊ตญ๊ฐ ๋ด์ ์กฐ์ง์ด๋ผ๋ ๊ฐ, ๊ตญ๊ฐ๋ฅผ ๋ํ๋ด๋ ๊ฐ์ฒด์ ๊ฐ์ ๊ฒฝ์ฐ Sub-Domain์ผ๋ก ๋์ด Domain Name์ ๋ํด ์ ์ด๋ฅผ ๋ถ์ฐํ๋ค.
DNS ๋ฉ์ธ์ง ํ์์ ๋ค์๊ณผ ๊ฐ๋ค. (RFC1035์์ ์ฐพ์๋ณผ ์ ์๋ค.)
DNS Protocol์ ์ฌ์ฉํ๋ฉด์ ๋ํ๋๋ ์์ ๊ฐ์ ํ์์ ๋ฉ์ธ์ง๋ Packet์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด๋ถ๋๋ค.
DNS Protocol์ ๊ฒฝ์ฐ ๊ทธ๋ฆผ์ ๋ํ๋ ๊ฒ์ฒ๋ผ UDP๋ง ์ฌ์ฉํ๋ ๊ฒ์ด ์๋๋ผ TCP๋ฅผ ์ด์ฉํ ์๋ ์๋ค. ๊ทธ๋ฆฌ๊ณ DNS์ ๊ฒฝ์ฐ 53๋ฒ Port๋ฅผ ์ด์ฉํ๋ค.
๋ง์ผ UDP๋ฅผ ์ด์ฉํ ๊ฒฝ์ฐ Packet ํฌ๊ธฐ์ ์ ํ์ด ์ผ๋ฐ์ ์ผ๋ก 512 ๋ฐ์ดํธ์ด๋ฏ๋ก Response๋ก ๋ฐ๋ ๋ฉ์ธ์ง์ ํฌ๊ธฐ๊ฐ 512 ๋ฐ์ดํธ๋ณด๋ค ์์ ๊ฒฝ์ฐ ์ฃผ๋ก ์ด์ฉํ๋ค. ๋ง์ผ Response๋ก ๋ฐ๋ ๋ฉ์ธ์ง์ ํฌ๊ธฐ๊ฐ ์ ํ์ผ๋ก ๋ ๋ฐ์ดํธ๋ณด๋ค ํฐ ๊ฒฝ์ฐ์ TCP Connection์ ์ด์ฉํ๊ฒ ๋๋ค. ์ผ๋จ ๋์ฒด์ ์ผ๋ก UDP๊ฐ ํจ์จ์ ์ธ ๊ฒฝ์ฐ๊ฐ ๋ง๊ณ , 99%๋ UDP๋ฅผ ์ฌ์ฉํ๋ค.
8. Reference
๊ณ ๋ ค๋ํ๊ต COSE342 ์ปดํจํฐ ๋คํธ์ํฌ by ๋ฏผ์ฑ๊ธฐ ๊ต์๋
UDP์์ ์ฌ์ฉํ๋ Port์ TCP์์ ์ฌ์ฉํ๋ Port๋ ๋
๋ฆฝ์ ์ด๋ค. ์ฌ๋์ด ๋ณด๊ธฐ์๋ ๊ฐ์ ๋ฒํธ์ฒ๋ผ ๋ณด์ด์ง๋ง ์ฌ์ค TCP์ ๊ฒฝ์ฐ๋ ๋ณ๋์ Hash Table์ ์ฌ์ฉํ๋ค. ๋ฐ๋ผ์ UDP์์ Port์ ๊ฐ์ ๊ฒฝ์ฐ, ์ถฉ๋์ ๋์ง ์์ง๋ง ์ฌ๋์ด ๋ณด๊ธฐ์ ๊ต์ฅํ ํท๊ฐ๋ฆด ์ ์๋ค.