๐ ์น ๋ธ๋ผ์ฐ์ ์ URL์ ์ ๋ ฅํ๋ค๋ฉด ์ผ์ด๋๋ ์ผ
1. ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ URL์ ํ์ฑํ๋ค.
- ์ ๋ ฅํ URL์์ ํ๋กํ ์ฝ, ํธ์คํธ๋ช , ํฌํธ๋ฒํธ, ๊ฒฝ๋ก, ์ฟผ๋ฆฌ ์คํธ๋ง, ํ๋ ๊ทธ๋จผํธ ๋ฑ์ ํ์ฑํ๋ค.
- ๋ธ๋ผ์ฐ์ ์์๋ HSTS ๋ชฉ๋ก ์กฐํ๋ฅผ ํตํด ํด๋น ์์ฒญ์ HTTPS๋ก ๋ณด๋ผ์ง ํ๋จํด HSTS ๋ชฉ๋ก์ ํด๋น URL์ด ์กด์ฌํ๋ค๋ฉด ๋ช ์์ ์ผ๋ก HTTP๋ฅผ ํตํด ์์ฒญํ๋ค ํด๋ ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋ฅผ HTTPS๋ก ์์ฒญํ๊ฒ ๋๋ค.
๐ HSTS
- HSTS(HTTP Strict transport security) : HTTP๋ฅผ ํ์ฉํ์ง ์๊ณ HTTPS๋ฅผ ์ฌ์ฉํ๋ ์ฐ๊ฒฐ๋ง์ ํ์ฉํ๊ฒ ํ๋ ๊ธฐ๋ฅ
- ๋ง์ฝ HTTP๋ก ์์ฒญ์ด ์๋ค๋ฉด HTTP ์๋ต ํค๋์ "Strict Transport Security" ํ๋๋ฅผ ํฌํจํ์ฌ ์๋ตํ๊ณ ์ด๋ฅผ ํ์ธํ ๋ธ๋ผ์ฐ์ ๋ ํด๋น ์๋ฒ์ ์์ฒญํ ๋ HTTPS๋ง์ ํตํด ํต์ ํ๊ฒ ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ๋ธ๋ผ์ฐ์ ์ HSTS์บ์์ ํด๋น URL์ ์ ์ฅํ๋๋ฐ ์ด๋ฅผ HSTS ๋ชฉ๋ก์ด๋ผ๊ณ ํ๋ค.
2. DNS๋ฅผ ์กฐํํ๋ค.
- ํธ์คํธ๋ช ์ IP ์ฃผ์๋ก ๋ณํํ๊ธฐ ์ํด DNS ์๋ฒ์ ํธ์คํธ๋ช ์ ์กฐํํ๋ค. → ex. www.naver.com
- DNS๋ ๋ณต์กํ๊ณ ๋นจ๋ผ์ผ ํ๊ธฐ ๋๋ฌธ์ DNS ๋ฐ์ดํฐ๋ ์น ๋ธ๋ผ์ฐ์ ์ฌ์ด์ ์๋ก ๋ค๋ฅธ ๊ณ์ธต๊ณผ ์ธํฐ๋ท์ ๋ค์ํ ์์น์ ์์๋ก ์บ์๋ฅผ ์ ์ฅํ๋ค.
- ์น ๋ธ๋ผ์ฐ์ ๋ ๊ณ ์ ํ ์บ์, ์ด์์ฒด์ ์บ์, ๋ผ์ฐํฐ์ ๋ก์ปฌ ๋คํธ์ํฌ ์บ์, ํ์ฌ ๋คํธ์ํฌ ๋๋ ์ธํฐ๋ท ์๋น์ค ์ ๊ณต์ ์ฒด(ISP)์ DNS ์๋ฒ ์บ์๋ฅผ ํ์ธํ๋ค.
- ๋ง์ฝ ์น ๋ธ๋ผ์ฐ์ ์บ์ ๊ณ์ธต์์ IP ์ฃผ์๋ฅผ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ ํ์ฌ ๋คํธ์ํฌ ๋๋ ISP์ DNS ์๋ฒ๊ฐ ์ฌ๊ท์ ์ผ๋ก DNS ์กฐํ๋ฅผ ์ํํ๋ค.
3. ๋ผ์ฐํฐ๋ฅผ ํตํด ํด๋น ์๋ฒ์ ๊ฒ์ดํธ์จ์ด๊น์ง ์ด๋
- DNS์๋ฒ์๊ฒ IP์ฃผ์๋ฅผ ๋ฐ์์ผ๋ฉด ํด๋น ์๋ฒ๋ก ์์ฒญ์ ๋ณด๋ธ๋ค.
- ์์ฒญ์ ๋ณด๋ผ IP์ฃผ์๋ฅผ ์์๋ก 10.20.30.6๋ผ ๊ฐ์ ํ๋ฉด ์ด IP์ฃผ์๋ก ๊ฐ์ผ ํ๋ ๊ฒ์ ์์ง๋ง ์ด๋ป๊ฒ ๊ฐ์ผ ํ ์ง ๊ฒฝ๋ก๋ ์ ์๋๋ฐ ์ด๋ ์ด ์์ฒญ์ด ๋คํธ์ํฌ๋ฅผ ํ๊ณ ์ด๋ป๊ฒ ์ด๋ํ ์ง๋ฅผ ๋คํธ์ํฌ ์ฅ๋น์ธ ๋ผ์ฐํฐ์ ๋ผ์ฐํ ์ ํตํด ์ด๋ฃจ์ด์ง๋ค.
4. ARP๋ฅผ ํตํด IP์ฃผ์๋ฅผ MAC์ฃผ์๋ก ๋ณํ
- ARP๋ ์ฃผ์ ๊ฒฐ์ ํ๋กํ ์ฝ(Address Resolution Protocol)๋ก ํด๋น IP๋ฅผ ๊ทธ IP์ฃผ์์ ๋ง๋ ๋ฌผ๋ฆฌ์ ์ธ ์ฃผ์ ์ฆ, MAC์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์ค๋ ํ๋กํ ์ฝ์ด๋ค.
- ๋ฐ๋ผ์ ์ค์ง์ ์ธ ํต์ ์ ํ๊ธฐ ์ํด ๋ ผ๋ฆฌ ์ฃผ์์ธ IP์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์์ธ MAC ์ฃผ์๋ก ๋ณํํด์ผํ๋ค.
- ์ด๋ฅผ ์ํด ํด๋น ๋คํธ์ํฌ ๋ด์์ ARP๋ฅผ ๋ธ๋ก๋ ์บ์คํ ํ๋๋ฐ ํด๋น IP์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ ธ๋๋ ์์ ์ MAC ์ฃผ์๋ฅผ ์๋ต, ์ฆ ์ ๋์บ์คํธํ๋ค.
- ์ก์ ์๋ ๋ชฉ์ ์ง ๋ฌผ๋ฆฌ์ฃผ์๊ฐ ํ์ํ๋ฏ๋ก, ๋ฌผ๋ฆฌ์ฃผ์ ์์ฒญ์ ์ํ ARP์์ฒญ ํจํท์ ๋ธ๋ก๋์บ์คํธ๋ก ์ ์ก.
- ๋ธ๋ก๋ ์บ์คํธ๋ฅผ ํ๋ ์ด์ ๋ ๋ชฉ์ ์ง์ ๋ฌผ๋ฆฌ์ฃผ์๋ฅผ ๋ชจ๋ฅด๋ฏ๋ก ๋ชจ๋์๊ฒ ์์ฒญํ๊ณ ์์ฒญ ํจํท์ ์์ ์๊ฐ ์์ ์ ์ฃผ์๋ฅผ ์๋ตํ ๋ ํ์ํ ์ก์ ์ ์ฃผ์๊ฐ ํฌํจ๋์ด์๋ค.
- ๋ชจ๋ ํธ์คํธ์ ๋ผ์ฐํฐ๋ ์ก์ ์๊ฐ ๋ณด๋ธ ARP ์์ฒญ ํจํท์ ์์ ํ์ง๋ง ํด๋น๋๋ ์์ ์๋ง ์์ ์ ๋ ผ๋ฆฌ์ฃผ์์ ๋ฌผ๋ฆฌ์ฃผ์๋ฅผ ๋ฃ์ด ์๋ต ํจํท์ ์ ์กํ๋ค.
- ARP ์์ฒญ์ด ๋ธ๋ก๋์บ์คํธ, ARP ์๋ต์ ์ ๋์บ์คํธ
5. ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ์ TCP ์ฐ๊ฒฐ์ ์๋ฆฝํ๋ค.
- ์น ์๋ฒ์ ์ฐ๊ฒฐํ๊ธฐ ์ํด TCP/IP 3-way-handshake ๊ณผ์ ์ ๊ฑฐ์ณ TCP ์ฐ๊ฒฐ์ ์๋ฆฝํ๋ค.
- ์น ์๋ฒ์ ์ง์ ๋๋ฌํ๋ ๋ฐฉ๋ฒ์ ์์น์ ๋ฐ๋ผ ํจ์จ์ ์ด์ง ์์ ์ ์๊ธฐ ๋๋ฌธ์ ์์ฆ์ CDN์ ์ฌ์ฉํ์ฌ ์ ์ · ๋์ ์ฝํ ์ธ ๋ฅผ ์น ๋ธ๋ผ์ฐ์ ๊ฐ๊น์ด์ ์์น์ํจ๋ค.
- ๋์ ์๋ฒ์ ํต์ ํ๊ธฐ ์ํด TCP ์์ผ ์ฐ๊ฒฐ์ ์งํํ๋ค.
- ์์ผ ์ฐ๊ฒฐ์ 3-way-handshake๋ผ๋ ๊ณผ์ ์ ํตํด ์ด๋ฃจ์ด์ง๋๋ฐ ์ด ๊ณผ์ ์ ๋ง์น ์ ํ๋ฅผ ๊ฑฐ๋ ๊ฒ๊ณผ ์ ์ฌํ๋ค
EX> 1> ์๋ฒ์๊ฒ ์ ํ๋ฅผ ๊ฑธ๊ณ , 2> ์๋ฒ๋ ํด๋น ์ ํ๋ฅผ ํ์ธํ๊ณ ์ ํ๋ฅผ ๋ฐ์ต๋๋ค. 3> ๊ทธ๋ฆฌ๊ณ ์ ํ๋ฅผ ๊ฑด ์ฌ๋ "์ฌ๋ณด์ธ์"๋ผ๊ณ ๋๋ตํ๋ค. - ํ์ง๋ง ์ง๊ธ ํ๋ ์์ฒญ์ HTTPS ์์ฒญ์ผ๋ก ์๋ก ์ํธํ ํต์ ์ ์ํ TLS ํธ๋์์ดํน์ด ์ถ๊ฐ๋์ด ์ด๋ฅผ ํตํด ์๋ฒ์ ํด๋ผ์ด์ธํธ๋ ์ํธํ ํต์ ์ ์งํํ๋ค.
๐ TLS Handshake
- HTTP์ ๋ณด์ ์ ๋ฌธ์ , ํจํท์ ์ก์์ ๋ณด๋ฉด ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์ฃผ๊ณ ๋ฐ๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณผ ์ ์๊ธฐ์
HTTP + TLS(SSL) = HTTPS๊ฐ ๋ฑ์ฅ - HTTPS ๋ HTTP ํต์ ์ ํ๋ TLS ํ๋กํ ์ฝ์ ๋ฐ๋ผ ์ํธํ๋ ํต์ ์ ํ๋ ํ๋กํ ์ฝ๋ก TLS๋ HTTP ๋ฐฉ์ ๋ฟ๋ง์๋๋ผ TCPํต์ ์ ํ๋ FTP๊ฐ์ ํ๋กํ ์ฝ์๋ ์ ์ฉ ๊ฐ๋ฅ
๐ ALPN
- ALPN(Application Layer Protocol Negotiation) TLS handshake ์ดํ์ application layer์ ํ๋กํ ์ฝ๊ณผ ๋ฒ์ ์ ๊ฒฐ์ ํ๊ธฐ ์ํ ๊ธฐ๋ฅ์ด๋ค.
- ์ผ๋ก๋ก HTTP/2์์๋ HTTP์ ๋ฒ์ ์ ํฉ์ํ๊ธฐ ์ํด์ ALPN์ ์ฌ์ฉํ๋๋ฐ
1> ๋จผ์ client๊ฐ ์์ ์ด HTTP/1.1๊ณผ 2๋ฅผ ์ง์ํ๋ค๋ ์ฌ์ค์ ALPN์ผ๋ก ๋ณด๋ด๋ฉด
2> ๋ง์ฝ ์๋ฒ๊ฐ ALPN๊ณผ HTTP/2๋ฅผ ์ง์ํ๋ค๋ฉด handhshake ์ดํ HTTP/2๋ก ํต์ ์ด ์์๋๊ณ ALPN์ ์ง์ํ์ง ์์ผ๋ฉด, ALPN ํ๋๊ฐ ์์ผ๋ฏ๋ก HTTP/1.1๋ก ํต์ ํ๊ฒ ๋๋ค.
๐ SNI
- SNI(Server Name Indication)์๋ฒ๋ช
์ง์ ์ด๋ผ๋ ๋ป์ผ๋ก client๊ฐ ์์ฒญํ server์ ๋๋ฉ์ธ์ - TLS ํ๋กํ ์ฝ ํ์ฅํ์ผ๋ก ๋์ ์ ํตํ์ฌ tcp ํต์ ์ ์ํํ ์์ ํธ๋์ธ์ดํฌ ๊ณผ์ ์ ๊ฑฐ์น๊ฒ ๋๋๋ฐ,
์ด๋ ํธ๋์ธ์ดํฌ ๊ณผ์ ์ ์์์ ์์ ์น๋ธ๋ผ์ฐ์ ์๊ฒ ํธ์คํธ๋ช ์ ์ ํด์ฃผ๊ณ ์ด ๋ฐฉ์์ ํตํ์ฌ ๋์ผ์๋ฒ์์ ์ฌ๋ฌ๊ฐ์ SSL ํต์ ์ด ๊ฐ๋ฅํ๊ฒ ๋๋ค.
6. ์๋ฒ๋ก HTTP ์์ฒญ์ ์์ฑํ๊ณ ์ ์กํ๋ค.
- HTTP ์์ฒญ ๋ฉ์์ง๋ฅผ ์์ฑํ๊ณ , HTTP ๋ฉ์๋์ ํค๋ ์ ๋ณด๋ฅผ ํฌํจํ๋ค.
- ์์ฑ๋ HTTP ์์ฒญ ๋ฉ์ธ์ง๋ฅผ ์๋ฒ๋ก ์ ์กํ๋ค.
7. ์๋ฒ์์ HTTP ์๋ต์ ๋ฐ๋๋ค.
- ์๋ฒ์์ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ , HTTP ์๋ต ๋ฉ์์ง๋ฅผ ์์ฑํ๋ค.
8. ๋ธ๋ผ์ฐ์ ์์ HTTP ์๋ต์ ์ฒ๋ฆฌํ๋ค.
- ๋ฐ์ HTTP ์๋ต ๋ฉ์์ง๋ฅผ ์ฒ๋ฆฌํ์ฌ ์น ํ์ด์ง๋ฅผ ๋ ๋๋งํ๋ค.
- HTML, CSS, Javascript ๋ฑ์ ๋ฆฌ์์ค๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ๋ ๋๋งํ๋ค.
9. ์ฐ๊ฒฐ์ ์ข ๋ฃํ๋ค.
- ์ฌ์ฉ์๊ฐ ๋ธ๋ผ์ฐ์ ์ ๋๋ฉ์ธ ๋ค์์ ์ ๋ ฅ
- ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ URL ์ฃผ์ ์ค์์ ๋๋ฉ์ธ ๋ค์(Domain Name) ๋ถ๋ถ์ DNS ์๋ฒ์์ ๊ฒ์ํ๊ณ , DNS ์๋ฒ์์ ํด๋น ๋๋ฉ์ธ ๋ค์์ ํด๋นํ๋ IP ์ฃผ์๋ฅผ ์ฐพ์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ URL ์ ๋ณด์ ํจ๊ป ์ ๋ฌํ๋ค.
- ํ์ด์ง URL ์ ๋ณด์ ์ ๋ฌ๋ฐ์ IP ์ฃผ์๋ HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ HTTP ์์ฒญ ๋ฉ์์ง๋ฅผ ์์ฑํ๊ณ , ์ด๋ ๊ฒ ์์ฑ๋ HTTP ์์ฒญ ๋ฉ์์ง๋ TCP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์ธํฐ๋ท์ ๊ฑฐ์ณ ํด๋น IP ์ฃผ์์ ์ปดํจํฐ๋ก ์ ์ก๋๋ค.
- ์ด๋ ๊ฒ ๋์ฐฉํ HTTP ์์ฒญ ๋ฉ์์ง๋ HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์น ํ์ด์ง URL ์ ๋ณด๋ก ๋ณํ๋์ด ์น ํ์ด์ง URL ์ ๋ณด์ ํด๋นํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋ค.
- ๊ฒ์๋ ์น ํ์ด์ง ๋ฐ์ดํฐ๋ ๋ ๋ค์ HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ HTTP ์๋ต ๋ฉ์์ง๋ฅผ ์์ฑํ๊ณ TCP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์ธํฐ๋ท์ ๊ฑฐ์ณ ์๋ ์ปดํจํฐ๋ก ์ ์ก๋๋ค.
- ๋์ฐฉํ HTTP ์๋ต ๋ฉ์์ง๋ HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์น ํ์ด์ง ๋ฐ์ดํฐ๋ก ๋ณํ๋์ด ์น ๋ธ๋ผ์ฐ์ ์ ์ํด ์ถ๋ ฅ๋์ด ์ฌ์ฉ์๊ฐ ๋ณผ ์ ์๊ฒ ๋๋ค.
๐ ์ถ์ฒ
'infra & network' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
HTTPS๋ (SSL / TLS) (0) | 2024.08.11 |
---|---|
SOP & CORS๋? (0) | 2024.07.31 |
[Network] ๋ง์ฝ DNS๊ฐ ์์ฒญํ ๋๋ฉ์ธ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์์ง ์๋ค๋ฉด? (0) | 2024.06.09 |
๋๊ธ