๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์—ฌ๋Ÿฌ๊ฐ€์ง€/์ •๋ณด๋ณด์•ˆ ์ •๋ฆฌ

[์ •๋ณด๋ณด์•ˆ ์ •๋ฆฌ] ๋„คํŠธ์›Œํฌ - IP ํ”„๋กœํ† ์ฝœ

728x90

*IP ํ”„๋กœํ† ์ฝœ

: ๋น„์—ฐ๊ฒฐํ˜• ํ”„๋กœํ† ์ฝœ. ์—ฐ๊ฒฐ ์ƒํƒœ ์œ ์ง€X๋กœ ํŒจํ‚ท ์ „์†ก ์ˆœ์„œ ๋ณด์žฅ X

-๋น„์‹ ๋ขฐ์  ํ”„๋กœํ† ์ฝœ๋กœ ์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ํ†ต์‹  ๋ณด์žฅ X

-IP๋Š” ๋ชฉ์ ์ง€ ์ฃผ์†Œ ๊ธฐ๋ฐ˜ ๋ผ์šฐํŒ… ๋‹ด๋‹น

 


 

*IP ํ”„๋กœํ† ์ฝœ ๊ตฌ์กฐ

https://www.thegeekstuff.com/2012/03/ip-protocol-header/

Header๋Š” 20~60 bytes ์ •๋„ (๊ธฐ๋ณธ 20byte, ์˜ต์…˜ ํ—ค๋” ์ตœ๋Œ€ 40byte)

 

-Version(4 bits) : IP์˜ ๋ฒ„์ „ ์ •๋ณด. ์ผ๋ฐ˜์ ์œผ๋กœ IPv4

-Heade Length(4 bits) : ํ—ค๋” ๊ธธ์ด. 4 bytes ๋‹จ์œ„๋กœ ํ‘œํ˜„

-Service Type(8 bits) : ์„œ๋น„์Šค ํ’ˆ์งˆ(QoS) ์šฉ๋„. ํ˜„์žฌ ์‚ฌ์šฉX

-Total Length(16 bits) : ํ—ค๋”๋ถ€์™€ ๋ฐ์ดํ„ฐ๋ถ€ ํฌํ•จ ์ „์ฒด IP Packet ๊ธธ์ด

-Identification(16 bits) : ๋‹จํŽธํ™”/์žฌ์กฐํ•ฉ ๊ด€๋ จ ํ•„๋“œ. ๋‹จํŽธํ™” ์ „ ์›๋ณธ IP ๋ฐ์ดํ„ฐ๊ทธ๋žจ ์‹๋ณ„ ID

-Flags(3 bits) : ๋‹จํŽธํ™”/์žฌ์กฐํ•ฉ ๊ด€๋ จ ํ•„๋“œ

(1) ์ฒซ ๋ฒˆ์งธ ๋น„ํŠธ : ์‚ฌ์šฉ ์•ˆํ•จ

(2) ๋‘ ๋ฒˆ์งธ ๋น„ํŠธ : 1 ์„ค์ • ์‹œ ํŒจํ‚ท ๋‹จํŽธํ™” X

(3) ์„ธ ๋ฒˆ์งธ ๋น„ํŠธ : 1 ์„ค์ • ์‹œ ์žฌ์กฐํ•ฉํ•  ๋‹จํŽธ์ด ๋‚จ์•„์žˆ์Œ, 0 ์„ค์ • ์‹œ ๋‹จํŽธ์ด ๋” ์ด์ƒ ์—†์Œ

-Fragment offset(13 bits) : ๋‹จํŽธํ™”/์žฌ์กฐํ•ฉ ๊ด€๋ จ ํ•„๋“œ

(1) IP ํŠน์„ฑ์ƒ ์›๋ณธ IP ๋ฐ์ดํ„ฐ๊ทธ๋žจ ๋‹จํŽธ๋“ค์ด ์ˆœ์„œ๋Œ€๋กœ ์ „์†ก๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ˆœ์„œ๋Œ€๋กœ ์กฐํ•ฉํ•˜๊ธฐ ์œ„ํ•œ ํ˜„์žฌ ๋‹จํŽธ์˜ ์ƒ๋Œ€์œ„์น˜ ์ €์žฅ

(2) 8 bytes ๋‹จ์œ„๋กœ ํ‘œํ˜„

-TTL(Time To Live)(8 bits) : IP ํŒจํ‚ท์˜ ์ƒ์กด์‹œ๊ฐ„. ๋ผ์šฐํ„ฐ/L3 ์Šค์œ„์น˜ ํ†ต๊ณผ ์‹œ TTL ๊ฐ’ 1 ๊ฐ์†Œ

-Protocol(8 bits) : ์ƒ์œ„ ํ”„๋กœํ† ์ฝœ์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ ๋ฒˆํ˜ธ ์ €์žฅ

-Header Checksum(16 bits) : ๋ฐ์ดํ„ฐ๋ถ€ ์ œ์™ธ ํ—ค๋” ๋ถ€๋ถ„์˜ ์˜ค๋ฅ˜ ๊ฒ€์‚ฌ๊ฐ’

-Source IP Address(32 bits) : ์ถœ๋ฐœ์ง€ IP์ฃผ์†Œ

-Destination IP Address(32 bits) : ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ

 


 

*IP ๋‹จํŽธํ™”(Fragmentation)

 

-๋™์ž‘ ๋ฐฉ์‹

https://stackoverflow.com/questions/15999739/ip-fragmentation-and-reassembly

 

-tcpdump IP ๋‹จํŽธํ™” ๊ด€๋ จ ์ถœ๋ ฅ

(frag "๋‹จํŽธ ID":"๋‹จํŽธ์˜ ํฌ๊ธฐ(IPํ—ค๋” ์ œ์™ธ)"@"์˜คํ”„์…‹"+)
+ ์žˆ์Œ : ์ถ”๊ฐ€ ๋‹จํŽธ ์žˆ์Œ
+ ์—†์Œ : ๋งˆ์ง€๋ง‰ ๋‹จํŽธ
ex) (frag 22666:1480@1480+)

 


 

*IP ๋ผ์šฐํŒ…(Routing)

 

-๋ผ์šฐํŒ… ๊ทœ์น™

(1) ๋ชฉ์ ์ง€ ์ฃผ์†Œ๊ฐ€ ์ž์‹ ๊ณผ ๋™์ผํ•œ ๋„คํŠธ์›Œํฌ์— ์žˆ์œผ๋ฉด ์ง์ ‘ ์ „์†ก

(2) ๋ชฉ์ ์ง€ ์ฃผ์†Œ๊ฐ€ ์ž์‹ ๊ณผ ๋™์ผํ•œ ๋„คํŠธ์›Œํฌ์— ์†ํ•˜์ง€ ์•Š์œผ๋ฉด 1์ฐจ ๊ฒฝ์œ ์ง€(Gateway) ์ฃผ์†Œ๋ฅผ ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜์—ฌ ์ฐพ์Œ

(3) ๋ชฉ์ ์ง€ ์ฃผ์†Œ์™€ ์ž์‹ ์˜ ์ฃผ์†Œ๊ฐ€ ๊ฐ™์œผ๋ฉด ๋ชฉ์ ์ง€๊ฐ€ ์ž์‹ ์˜ ํ˜ธ์ŠคํŠธ์ด๋ฏ€๋กœ ์ƒ์œ„ ๊ณ„์ธต์œผ๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ

 

-๋ผ์šฐํŒ… ํ…Œ์ด๋ธ” ๊ฒ€์ƒ‰ ๋ฐฉ์‹ ๋ฐ ์šฐ์„ ์ˆœ์œ„

(1)๊ฒ€์ƒ‰ ๋ฐฉ์‹ : IP ํŒจํ‚ท์˜ ๋ชฉ์ ์ง€ IP์™€ ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”์˜ netmask/genmask๋ฅผ bit and (&) ์—ฐ์‚ฐ ์ˆ˜ํ–‰.

๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”์˜ destination ํ•„๋“œ์™€ ๋น„๊ตํ•˜์—ฌ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ๋กœ๋ฅผ ์„ ํƒ.

(2)์šฐ์„  ์ˆœ์œ„

  • ๋ชฉ์ ์ง€ ํ˜ธ์ŠคํŠธ ์ฃผ์†Œ์™€ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ๋กœ ์ฐพ์Œ
  • ๋ชฉ์ ์ง€ ํ˜ธ์ŠคํŠธ ์ฃผ์†Œ์™€ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ๋กœ X์‹œ ๋ชฉ์ ์ง€ ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ์™€ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ๋กœ ์ฐพ์Œ
  • ์ผ์น˜ํ•˜๋Š” ๊ฒฝ๋กœ X์‹œ default gateway(0.0.0.0)๋กœ ๋ณด๋ƒ„

 


 

*IP Spoofing

: IP๋ฅผ ์†์ด๊ณ  ํ†ต์‹ ํ•˜๋Š” ๊ณต๊ฒฉ. ์‹œ์Šคํ…œ ๊ฐ„์˜ ํŠธ๋Ÿฌ์ŠคํŠธ ๊ด€๊ณ„๋ฅผ ์ด์šฉ. ํŠธ๋Ÿฌ์ŠคํŠธ ๊ด€๊ณ„๊ฐ€ ๋งบ์–ด์ง„ ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ

ํ™•์ธ ํ›„ ์‹ ๋ขฐ๊ด€๊ณ„๊ฐ€ ์žˆ๋Š” ํด๋ผ์ด์–ธํŠธ๋ฅผ ์—ฐ๊ฒฐ ๋ถˆ๊ฐ€๋Šฅํ•œ ์ƒํƒœ(ex.Dos ๊ณต๊ฒฉ)๋กœ ๋งŒ๋“ค๊ณ 

๊ณต๊ฒฉ์ž๊ฐ€ ํด๋ผ์ด์–ธํŠธ์˜ IP๋กœ ์œ„์กฐ(์Šคํ‘ธํ•‘)ํ•˜์—ฌ ์„œ๋ฒ„์— ์ ‘์†

 

-$HOME/.rhosts, hosts.equiv ์‚ฌ์šฉ ๊ธˆ์ง€

(1)r๊ณ„์—ด ์„œ๋น„์Šค๋Š” ๋ณด์•ˆ์ƒ ๋งค์šฐ ์ทจ์•ฝํ•˜๋ฏ€๋กœ ํ—ˆ์šฉX

 


 

*IPv6

https://en.wikipedia.org/wiki/IPv6_address

: 128๋น„ํŠธ ์ฒด๊ณ„๋กœ 2^128 ๊ฐœ์˜ ์ฃผ์†Œ๋ฅผ ๊ฐ–๋Š” ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ์ฃผ์†Œ

-16๋น„ํŠธ ๋‹จ์œ„๋กœ ๊ตฌ๋ถ„. 16์ง„์ˆ˜๋กœ ๋ณ€ํ™˜๋˜์–ด ํด๋ก (:)์œผ๋กœ ๊ทธ๋ถ„

-์•ž์˜ 64๋น„ํŠธ : ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ

-๋’ค์˜ 64๋น„ํŠธ : ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ๋œ ํ†ต์‹ ์žฅ๋น„ ๋“ฑ์— ํ• ๋‹น๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค ์ฃผ์†Œ

 

-IPv6 ์žฅ์ 

(1) ํ™•๋Œ€๋œ ์ฃผ์†Œ ๊ณต๊ฐ„

(2) ๋‹จ์ˆœํ•ด์ง„ ํ—ค๋” ํฌ๋ฉง

(3) ๊ฐ„ํŽธํ•ด์ง„ ์ฃผ์†Œ ์„ค์ • ๊ธฐ๋Šฅ : IPv6 ๋‚ด์žฅ ์ฃผ์†Œ ์ž๋™ ์„ค์ • ๊ธฐ๋Šฅ ์ด์šฉ

(4) ๊ฐ•ํ™”๋œ ๋ณด์•ˆ์„ฑ : IPsec ๊ธฐ๋Šฅ ๊ธฐ๋ณธ

(5) ๊ฐœ์„ ๋œ ๋ชจ๋ฐ”์ผ IP

 

-IPv6 ์ „ํ™˜ ๊ธฐ์ˆ 

(1) ๋“€์–ผ์Šคํƒ(dual stack)

  • IPv4์™€ IPv6 ํ”„๋กœํ† ์ฝœ ๋™์‹œ์— ์„ค์ •ํ•˜์—ฌ ํ†ต์‹  ์ƒ๋Œ€์— ๋”ฐ๋ผ ์„ ํƒ์  ์‚ฌ์šฉ
  • ์žฅ๊ธฐ์ ์œผ๋กœ ๋ณด์•˜์„ ๋•Œ ๊ฐ€์žฅ ์ถ”์ฒœ๋˜๋Š” ๋ฐฉ์‹

 

(2) ํ„ฐ๋„๋ง(Tunneling)

  • IPv4 ๋„คํŠธ์›Œํฌ๋ฅผ ๊ฒฝ์œ ํ•˜์—ฌ IPv6 ๋„คํŠธ์›Œํฌ ๊ฐ„ ํ†ต์‹ 
  • IPv6 ํŒจํ‚ท์„ IPv4 ํŒจํ‚ท์œผ๋กœ ์บก์Аํ™”ํ•˜์—ฌ IPv4 ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ต๊ณผ

 

(3) ์ฃผ์†Œ ๋ณ€ํ™˜(Address Translation) / ํ—ค๋” ๋ณ€ํ™˜ (Header Translation)

  • IPv4 ์ฃผ์†Œ๋ฅผ IPv6 ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•˜๊ฑฐ๋‚˜ IPv6 ์ฃผ์†Œ๋ฅผ IPv4์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ํ†ต์‹ 
  • ํŒจํ‚ท ์•ž ๋ถ€๋ถ„์— ๋ณ€ํ™˜ํ—ค๋”๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ฃผ์†Œ๋ฅผ ๋ณ€ํ™˜ํ•˜์—ฌ ์†ก์‹ , ์ˆ˜์‹ ์ธก์—์„œ๋Š” ๋ณ€ํ™˜ ํ—ค๋”๋ฅผ ์ œ๊ฑฐํ•˜์—ฌ ํ†ต์‹