[SK shieldus Rookies 19기] 4.5. 시스템/네트워크 보안(2). ARP, OSI 7 계층, TCP/IP, 인/디캡슐레이션, 패킷, 프레임, UDP, TCP

WoongchiSec·2024년 3월 22일

SK shieldus Rookies

목록 보기
13/23
post-thumbnail

skshieldusrookies19기 4주 5일차.

1) Windows 11 VMware Image 다운로드
https://developer.microsoft.com/ko-kr/windows/downloads/virtual-machines/

2) 다운로드 받은 파일을 압축 해제

3) VMware > File > Open...

4) 2)에서 압축 해제한 폴더에 WinDev2401Eval 파일 선택 후 열기 버튼 클릭

5) 가상머신 이름 입력 후 Import 버튼 클릭

6) settings 에서 Host Only 네트워크 인터페이스는 삭제(Remove)

Kali 가상머신에서 dig(Domain Information Groper) 명령으로 naver.com 도메인 정보를 조회

┌──(kali㉿kali)-[~]
└─$ dig www.naver.com    			⇐ 사용법 dig 도메인이름 [레코드유형]

; <<>> DiG 9.19.17-2~kali1-Kali <<>> www.naver.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61471
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; MBZ: 0x0005, udp: 4096
;; QUESTION SECTION:				 질의 내용  www.naver.com 도메인 이름으로 A 유형의 레코드를 질의
;www.naver.com.                 IN      A

;; ANSWER SECTION:				 질의 결과 
www.naver.com.          5       IN      CNAME   www.naver.com.nheos.com.
www.naver.com.nheos.com. 5      IN      A       223.130.200.219
www.naver.com.nheos.com. 5      IN      A       223.130.192.248
www.naver.com.nheos.com. 5      IN      A       223.130.192.247
www.naver.com.nheos.com. 5      IN      A       223.130.200.236

;; Query time: 19 msec
;; SERVER: 192.168.40.2#53(192.168.40.2) (UDP)
;; WHEN: Thu Mar 21 20:34:03 EDT 2024
;; MSG SIZE  rcvd: 140


┌──(kali㉿kali)-[~]
└─$ dig blog.naver.com SOA

; <<>> DiG 9.19.17-2~kali1-Kali <<>> blog.naver.com SOA
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15808
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; MBZ: 0x0005, udp: 4096
;; QUESTION SECTION:
;blog.naver.com.                        IN      SOA

;; ANSWER SECTION:
blog.naver.com.       5       IN      CNAME   blog.naver.com.nheos.com.

;; AUTHORITY SECTION:
nheos.com.            5       IN      SOA     gns1.nheos.com. hostmaster.nheos.com. 2024032101 10800 3600 604800 180

;; Query time: 19 msec
;; SERVER: 192.168.40.2#53(192.168.40.2) (UDP)
;; WHEN: Thu Mar 21 20:37:25 EDT 2024
;; MSG SIZE  rcvd: 142


gns1.nheos.com.  		Primary Name Server
hostmaster.nheos.com.  	관리자 이메일 주소 ⇒ hostmaster@nheos.com 의미
2024032101  			시리얼 번호
10800  				Refresh 값 : 3시간 주기로 Secondary DNS가 Zone Transfer를 수행 
3600  				Retry 값   : Secondary DNS가 응답을 받지 못 하면 1시간 후 재시도 
604800  			Expire 값  : 7일 동안 Secondary DNS가 응답을 받지 못 하면 더 이상 해당 Zone 파일을 
				              Secondary DNS에서 사용하지 않음
180 				SOA 레코드 TTL(Time To Live) 값 : DNS Resolver에서 캐시되는 시간 (180초)

(2) DHCP(Dynamic Host Configuration Protocol, 동적 호스트 구성 프로토콜)

호스트의 IP 구성 관리를 단순화하는 IP 표준
IP 주소와 관련된 기타 구성 정보(Subnet mask, Gateway IP 주소, DNS 서버 IP 주소 등)를 DHCP 클라이언트에게 동적으로 할당하는 서비스
사용자 이동이 많고 한정된 IP 주소를 가진 경우 유용
서비스 포트: 서버 67(bootps), 클라이언트 38(bootpc)

DHCP 동작 (4단계)

DHCP 갱신

DHCP 서버로부터 IP를 할당 받은 후 임대 시간(Lease Time)의 50%가 지나면 DHCP 갱신 과정을 수행
이미 사용 중인 IP 정보가 있으므로 DHCP Discover, DHCP Offer 과정은 생략
첫번째 갱신에 실패하면 남은 시간의 50%가 지난 시점(즉, 초기 임대 시간의 75%가 지난 시점)에 다시 갱신을 시도
두번째 갱신에 실패함녀 추가 갱신 없이 임대 시간이 모두 지난 시점에 IP를 반납하고 처음부터 다시 IP를 할당 받음

(3) 물리적 주소 = MAC Address (Media Access Control Address)

네트워크 세그먼트의 데이터 링크 계층(L2)에서 통신을 위한 네트워크 인터페이스에 할당된 고유 식별자
LAN 카드(=네트워크 인터페이스 카드 =네트워크 인터페이스 컨트롤러 =NIC)에 새겨진 주소(BIA, Burned-In Address)                                                                            
48bit ⇒ OUI(Organizationally unique identifier, 24bit) + UAA(Universally Administered Address, 24bit)
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         IEEE가 제조사에 할당                             각 제조사에서 네트워크 구성 요소에 할당
         https://standards-oui.ieee.org/oui/oui.txt 
LAN 영역에서 내부 통신을 수행하기 위해 필요한 주소

MAC 주소 동작

무차별 모드 (Promiscuous Mode)

기본적으로 NIC는 패킷의 목적지 MAC 주소가 자신의 MAC 주소와 다르면 폐기
무차별 모드로 NIC를 구성하면 자신의 MAC 주소와 상관 없는 패킷이 들어와도 이를 분석할 수 있도록 메모리에 올려 처리할 수 있게 함
네트워크 상태를 모니터링하거나 디버깅, 분석 용도로 네트워크 전체 패킷을 수집해야 하는 경우 사용

IP 주소와 MAC 주소

구분		구성 						기능
------------	----------------------------------------	---------------------
IP 주소 	32비트 ⇒ 네트워크ID + 호스트ID 		IP 주소 기반 라우팅
MAC 주소	48비트 ⇒ OUI + UAA				MAC 주소 기반 라우팅 

ARP(Address Resolution Protocol, 주소 결정 프로토콜)

네트워크 상에서 IP 주소를 MAC 주소로 대응시키기 위해 사용되는 프로토콜
상대방의 MAC 주소를 알아내기 위해 사용되는 프로토콜
데이터 통신을 위해 2계층의 MAC 주소와 3계층 IP 주소 두 개를 사용
⇒ IP 주소 체계는 MAC 주소와 전혀 연관성이 없으므로 두 주소를 연계시키 주는 메커니즘이 필요
⇒ ARP

ARP 헤더

  • Hardware Type : 하드웨어 주소(MAC) 유형을 나타내며, 이더넷 통신 시 항상 1로 설정된다.
  • Protocol Type : 매핑 대상인 프로토콜 주소의 유형을 나타내며 IPv4의 경우 0x0800으로 설정 된다.
  • Hardware Address Length : 하드웨어 주소(MAC)의 길이를 byte로 나타낸다. 이더넷 상에서 6으로 설정된다.
  • Protocol Address Length : 프로토콜 주소의 길이를 byte로 나타낸다. IPv4의 경우 4로 설정 된다.
  • Operation Code(Opcode) : ARP의 구체적인 동작을 나타낸다.
    1 ARP Request
    2 ARP Reply
    3 RARP Request
    4 RARP Rely
  • Source Hardware Address : 송신자의 MAC 주소
  • Source Protocol Address : 송신자의 IP 주소
  • Target Hardware Address : 수신자의 MAC주소, ARP Request 동작시 0으로 설정된다.
    (이더넷 헤더의 목적지 주소가 ff:ff:ff:ff:ff:ff로 설정되면 브로드 캐스팅된다.)
  • Target Protocol Address : 수신자의 IP 주소

ARP 동작

#1 목적지 MAC 주소를 모르기 때문에 정상적인 패킷을 만들 수 없음

#2 ARP 요청을 네트워크에 브로드캐스터

목적지 MAC 주소를 브로드캐스트(ff-ff-ff-ff-ff-ff)로, 대상 MAC 주소를 00-00-00-00-00-00으로 채워서 전달(뿌림)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
이더넷 헤더                                          ARP 헤더 

#3 ARP 요청에 있는 대상자 IP 주소가 자신의 IP와 동일한 경우, 출발지로 ARP 응답을 유니캐스트

#4 ARP 캐시 테이블 갱신 후 패킷을 생성해 전송

ARP 캐시 테이블

패킷을 보낼 때 마다 ARP 브로드캐스트를 수행하면 네트워크 통신의 효율성이 크게 저하되므로 ARP Reply 정보를 메모리에 정보를 저장해서 재사용하도록 하는 것

C:\Users\User> arp -d						⇐ ARP 캐시 테이블 삭제

C:\Users\User> ping 8.8.8.8					⇐ 구글 DNS

Pinging 8.8.8.8 with 32 bytes of data:
Reply from 8.8.8.8: bytes=32 time=33ms TTL=128
Reply from 8.8.8.8: bytes=32 time=31ms TTL=128
Reply from 8.8.8.8: bytes=32 time=33ms TTL=128
Reply from 8.8.8.8: bytes=32 time=33ms TTL=128

Ping statistics for 8.8.8.8:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 31ms, Maximum = 33ms, Average = 32ms

C:\Users\User> arp -a						⇐ ARP 캐시 테이블 확인

Interface: 192.168.40.131 --- 0x6				⇐ 해당 호스트의 IP 주소
  Internet Address      Physical Address      Type
  192.168.40.2          00-50-56-f3-7b-bd     dynamic	⇐ 기본 게이트웨이의 NIC
  224.0.0.22            01-00-5e-00-00-16     static


C:\Users\User> ipconfig /all

Windows IP Configuration

   Host Name . . . . . . . . . . . . : WinDev2401Eval
   Primary Dns Suffix  . . . . . . . :
   Node Type . . . . . . . . . . . . : Hybrid
   IP Routing Enabled. . . . . . . . : No
   WINS Proxy Enabled. . . . . . . . : No
   DNS Suffix Search List. . . . . . : localdomain

Ethernet adapter Ethernet1:

   Connection-specific DNS Suffix  . : localdomain
   Description . . . . . . . . . . . : Intel(R) PRO/1000 MT Network Connection #2
   Physical Address. . . . . . . . . : 00-0C-29-DA-3C-1F
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   Link-local IPv6 Address . . . . . : fe80::98be:455e:650f:f92f%6(Preferred)
   IPv4 Address. . . . . . . . . . . : 192.168.40.131(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : Tuesday, February 14, 1888 2:36:12 AM
   Lease Expires . . . . . . . . . . : Thursday, March 21, 2024 7:49:29 PM
   Default Gateway . . . . . . . . . : 192.168.40.2
   DHCP Server . . . . . . . . . . . : 192.168.40.254
   DHCPv6 IAID . . . . . . . . . . . : 167775273
   DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2D-8F-64-61-00-0C-29-DA-3C-15
   DNS Servers . . . . . . . . . . . : 192.168.40.2
   Primary WINS Server . . . . . . . : 192.168.40.2
   NetBIOS over Tcpip. . . . . . . . : Enabled

ping 8.8.8.8 동작 순서

#1 출발지 IP와 목적지 IP의 네트워크 ID를 비교

		출발지 IP		목적지 IP
IP 		192.168.40.131		8.8.8.8
Subnet mask	255.255.255.0		255.255.255.0		⇐ 출발지의 Subnet mask를 적용
Network ID   	192.168.40.		8.8.8.			⇒ 두 개의 Network ID가 서로 상이 
								⇒ 목적지 주소를 게이트웨이 주소로 변경

#2 게이트웨이의 MAC 주소 확인을 위해 ARP Request(질의)를 브로드캐스팅

⇐ 수신처 미정 (목적지 MAC이 설정되지 않음)
		출발지			목적지
IP		192.168.40.131		192.168.40.2
MAC		00-0C-29-DA-3C-1F	00-00-00-00-00-00	⇐ LAN 영역의 모든 호스트는 ARP 브로드캐스팅 질의를 수신
								   목적지 IP 주소가 일치하는 호스트가 ARP Reply를 전송 

#3 게이트웨이가 자신의 MAC 주소를 유니캐스트

		출발지			목적지
IP		192.168.40.2		192.168.40.131		
MAC		00-50-56-f3-7b-bd	00-0C-29-DA-3C-1F	

#4 응답을 받은 출발지 호스트는 자신의 ARP 캐시 테이블을 업데이트

C:\Users\User> arp -a						

Interface: 192.168.40.131 --- 0x6				
  Internet Address      Physical Address      Type
  192.168.40.2          00-50-56-f3-7b-bd     dynamic	
  224.0.0.22            01-00-5e-00-00-16     static

#5 이후부터는 게이트웨이와 통신하기 위해서는 로컬 ARP 캐시 테이블에 MAC 주소를 이용해서 유니캐스팅

		출발지			목적지
IP		192.168.40.131		192.168.40.2		
MAC		00-0C-29-DA-3C-1F	00-50-56-f3-7b-bd	

ARP 영역

ARP 요청과 응답이 일어나는 영역
⇒ LAN 영역 = 동일한 네트워크 ID를 공유하는 호스트가 MAC 주소에 기반해서 스위칭 방식으로 내부 통신을 수행하면서
단일 ARP 영역을 생성하는 공간

네트워크에서 출발지에서 목적지로 데이터를 전송할 때 사용하는 통신 방식

유니캐스트

1 → 1
출발지와 목적지가 1:1로 통신
대부분의 통신은 유니케스트 방식으로 진행
TCP, UDP 모두 지원

브로드캐스트
1 → All
통일 네트워에 존재하는 모든 호스트가 목적지
목적지 주소가 All(ff-ff-ff-ff-ff-ff)으로 표기되어 있는 통신 방식
로컬 네트워크에서 모든 호스트에 패킷을 전달해야 할 때 사용
유니케스트 통신 전에 상대방(목적지)의 MAC 주소를 취득하기 위해 사용 ⇒ ARP Request
UDP 지원

멀티캐스트
1 → N (멀티캐스트 구독 호스트 = 그룹)
하나의 출발지에서 다수의 특정 목적지로 데이터를 전송
멀티캐스트 그룹 주소를 이용해서 해당 그룹에 속한 다수의 목적지로 패킷을 전송하기 위한 통신 방식
IPTV와 같은 실시간 방송, 사내 방송, 증권 시세와 같은 단방향으로 다수에게 동일한 내용을 전달할 때 사용
UDP 사용

애니캐스트
1 → 1 (동일 그룹 내의 1개 호스트)
다수의 동일 그룹 중 가장 가까운 호스트에서 응답
애니캐스트 주소가 같은 호스트들 중 가장 가깝거나 효율적으로 서비스할 수 있는 호스트와 통신하는 방식
가장 가까운 DNS 서버를 찾을 때 사용

실습

LAB. 본인 환경에 맞춰서 ping 8.8.8.8 동작 순서를 기술(설명)해 보세요.

계층(layer)

- 비음성 통신에서 데이터를 전송하기 위한 일련의 과정, 단계, 절차 
- 송신자 운영체제가 응용 계층에서 시작해 전송, 네트워크, 데이터 링크 계층 순으로 데이터를 전송
- 수신자 운영체제가 역으로 물리 계층에서 시작해 데이터 링크, 네트워크, 전송, 응용 계층 순으로 데이터를 수신

       		--------------- 데이터 송신 ------------------>
		<-------------- 데이터 수신 -------------------
		응용  전송  네트워크  데이터 링크  물리

논리적이고 추상적 >>> ................................... >>> 물리적이고 구체적
                               헤더를 추가하는 과정
                               인캡슐레이션 

ISO OSI 7 Layer

ISO(International Organization for Standardization, 국제 표준 기구)에서 서로 다른 시스템(개방형 시스템, Open System)간 통신을 허용(상호 연결, Inter Connection)하기 위해 만든 모델

OSI(Open System Interconnection)

L7 응용 계층

  • 애플리케이션 프로세스를 정의하고 애플리케이션 서비스를 수행
  • User Interface를 제공
    UI를 통해 데이터를 생성
    HTTP, FTP, Telnet, SMTP, SNMP, NFS, ...

L6 표현 계층

  • 표현 방식이 다른 애플리케이션이나 시스템 간의 통신을 돕기 위해 하나의 통일된 구문 형식으로 변환하는 기능
    • 코드 변환(encoding)
    • 압축(compression)
    • 암호화(encryption)

L5 세션 계층

  • 양 끝단(end-to-end)의 응용 프로세스가 연결을 성립하도록 도와주고 연결이 안정적으로 유지되도록 관리하고 작업 완료 후 연결을 끊는 역할 (연결 설정, 유지, 해제)

L4 전송 계층

  • 양 끝단(end-to-end) 사이에 가상 회선(virual circuit) 설정, 유지, 해지
  • 패킷이 유실되거나 순서가 바뀌었을 때 바로잡아 주는 역할
    • 시퀀스 번호 - 패킷을 보내는 순서를 명시
    • ACK 번호 - 받는 순서를 명시
  • 로드밸런서, 방화벽

L3 네트워크 계층

  • 최적 경로 결정(routing)
  • 라우터(router) - IP 주소를 사용 -> 최적 경로 찾아줌 -> 해당 경로로 패킷 전송 역할 수행 장비

L2 데이터 링크 계층

  • 전기 신호를 모아 우리가 알아볼 수 있는 데이터 형태로 처리
  • 흐름 제어(flow control) - 수신자 상태에 따라 데이터를 전송
  • NIC, 스위치(switch)
    • 허브 : 다 보내서 충돌 -> 스위치 : 지정해서 감
    • Mac IS 지꺼 아님 안봄 -> L2 에서 처리

L1 물리 계층

  • 전기적, 기계적, 기능적, 절차적 수단을 제공

  • 들어온 전기 신호를 그대로 전달

  • 주소 개념이 없기 때문에 전기 신호가 들어온 포트를 제외하고 모든 포트에 같은 신호를 전송

  • (더미) 허브, 리피터 , 케이블, 커넥터, 트랜시버, 탭

    네트워크 장비에서 패킷 전송 방법

  • Forwarding - 하나의 송신지 포트에서 하나의 수신지 포트로 트래픽을 전달

  • Flooding - 송신지 포트를 제외한 나머지 포트들로 트래픽을 전달

Hub - 주소가 없으므로 모든 포트로 Flooding 처리 `

Switch - MAC Address Table을 이용해서 Forwarding 처리

(만약, MAC Address Table에 목적지 MAC 주소가 없는 경우 Flooding 처리)

Router - Routing Table을 기반으로 Forwarding 처리 (Routing Table에 없는 목적지 주소는 Drop 처리)


- ps 
스위치 MAC 로컬에서 연결 -> 스위치가 맥 다 갖고 있어야 함
스위치가 받아서 연결
보내야 할 곳의 Mac 없으면 받은 전기신호 다 쏨 -> Local 이니까 기껏해야 255 -> 가능 
물리적인 장비니까

스위치 거쳐서 라우터로 나가고 다른 라우터와 연결 되어야 함
어디로 가야하는지가 routing 테이블에 있음 
라우터에도 포트 여러개 있음 -> 해당 포트로 감 

인터넷 있는 모든 라우터로 신호 보냄 -> 인터넷 엉망 -> 드랍 
라우터는 우리 네트워크 밖으로 나가는 것임


 1계층 : 주소 개념 없음 -> 플로딩 해버림 (포트 꽃힌 장비한테 다 보냄)
 2계층 : 스위치 : Mac 주소 보고 있으면 그 포트만, -> 좀더 네트워크 트래픽 줌 -> 없으면 플러딩 함 
 3계층 라우터 : 외부 네트워크 : 함부로 플러딩 X -> 네트워크 불필요한 혼란 -> 드랍

통신 체계와 통신 규약

통신체계	     프로토콜 종류			      	용도
--------	----------------------------		---------------------------------------------------
TCP/IP		HTTP, Telnet, TCP, UDP, ...		 인터넷과 LAN에서 사용
IPX/SPX		IPX, SPX, NPC, ...			     노벨 사가 개발 및 판매하는 Netware 시스템에서 사용
Appltalk	DDP, RTMP, ATP, ...			     애플 사 제품의 LAN에서 사용
DECnet		DPR, NSP, SCP, ...			     덱 사의 미니 컴퓨터에서 사용
XNS		    IDP, SPP, PEP, ... 			     제록스 사의 네트워크에서 사용

Vender Specific Protocol (독점적 프로토콜)

  • 특정 업체에서 개발한 프로토콜
  • 다른 프로토콜과 호환이 불가능

Open Protocol (비독점적 프로토콜)

  • 학교 또는 연구기관에서 개발
  • 이기종 장비 간 통신이 가능
  • TCP/IP, 802.3 등

TCP/IP

전송 데이터 구성

헤더3 + 헤더2 + 헤더1 + 페이로드
~~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~
 |                      payload : 사용자가 상대방에게 전송하고자 하는 실제 정보가 담긴 공간
 +-- 보내는 호스트의 주소(출발지 주소)와 받는 호스트의 주소(목적지 주소)가 담긴 공간

메시지(message) : 페이로드만으로 이루어진 데이터 전송 단위

인캡슐레이션 & 디캡슐레이션

ㄴ 그림 주제 일부 잘못댐

인캡슐레이션
페이로드 앞에 헤더를 붙이는 과정
운영체제가 데이터를 송신하는 과정
메시지 → 데이터그램/세그먼트 → 패킷 → 프레임 → 비트

디캡슐레이션
헤더를 떼는 과정
데이터를 수신하는 과정
비트 -> 프레임 -> 패킷 -> 데이터그램/세그먼트 -> 메시지

인캡슐레이션 역할
정보은닉

라우터는 패킷 헤더만 읽을 수 있을 뿐 데이터그램/세그먼트 헤더 이하는 읽을 수 없음
스위치는 프레임 헤더만 읽을 수 있을 뿐 패킷 헤더 이하는 읽을 수 없음

데이터그램(datagram) 또는 세그먼트(segmaent)

데이터그램 헤더 + UDP 페잉로드
or
세그먼트 헤더 + TCP 페이로드

데이터그램/세그먼트 헤더

  • 페이로드 앞에 붙는 첫번째 헤더
  • 출발지, 목적지 포트 번호 포함
    • 포트 번호 : 서비스 식별 역할
  • 수신측 운영체제에서 -> 데이터그램 or 세그먼트 헤더에 담김 포트 번호 -> 페이로드 내용 -> 어떤 종류 서비스 전달할지 판단
    • 송신측 기준
      • 목적지 포트 : 일반적 서비스 포트 번호 사용
        • c:\Users\crpark> type c:\Windows\System32\drivers\etc\services 확인 가능
          • tttp 80 등
      • 출발지 포트 : 1024번 이후 포트 번호 사용
        • 필요 이유 : 응답 받기 위해
        • 송신자 수신자 -> 응답 때 역할 바뀜

패킷(packet)

패킷 헤더 + 데이터 그램 헤더 + UDP 페이로드
or
패킷 헤더 + 세그먼트 헤더 + TCP 페이로드

패킷 헤더

  • 데이터그램/세그먼트 앞에 붙이는 두 번째 헤더
  • 출발지, 목적지 IP 주소 포함
  • 라우터 장비 -> 라우팅 기능 수행 시 참조하는 부분 (IP 주소 사용)

프레임(frame)

위 패킷에 프레임 헤더 추가

프레임 헤더 + 패킷 헤더 + 데이터 그램 헤더 + UDP 페이로드
or
프레임 헤더 + 패킷 헤더 + 세그먼트 헤더 + TCP 페이로드

프레임 헤더

  • 패킷 앞에 붙이는 세번째 헤더
  • LAN 영역인 경우 MAC 주소 포함
  • 스위치 장비 -> 스위칭 기능 수행할 때 -> 참조하는 부분
  • LAN 영역과 WAN 영역 따라 -> 상이하게 설정
LAN 영역WAN 영역
데이터그램/세그먼트 헤더출발지/목적지 포트 번호출발지/목적지 포트 번호
패킷 헤더출발지/목적지 IP 주소출발지/목적지 IP 주소
프레임 헤더 출발지/목적지 MAC 주소 WAN 영역에 대한 정보

인터넷 공간에서 데이터를 전송하는 방식 -> TCP, UDP

UDP (User Datagram Protocol, 사용자 데이터그램 프로토콜)

위키백과

  • 인터넷 프로토콜 스위트 -> 주요 프로토콜 가운데 하나
  • 1980년 -> 데이빗 리드가 설계
  • 현재 IETF의 RFC 768 -> 표준으로 정의
  • TCP와 함께 데이터그램으로 알려진 -> 단문 메시지 교환 위해 사용
  • 연결 설정 X -> 수신자 데이터 받을 준비 확인 단계 X -> 단방향 정보 전송
    • 신뢰성 : 수신자 메시지 수신 여부 확인 X
      -- 던지고 마는 거
    • 순서 정렬 : 메시지 도착 순서 예측 X
    • 부하 (load) - TCP 보다 속도 일반적으로 빠름 -> 오버헤더 적음

TCP (Transmission Control Protocol, 전송 제어 프로토콜

위키백과

  • 인터넷 프로토콜 스위트(IP)의 핵심 프로토콜 중 하나

  • IP와 함께 TCP/IP라는 명칭

  • TCP는 근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 일련의 옥텟을 안정적으로, 순서대로, 에러없이 교환 하도록

  • TCP는 전송 계층에 위치

  • 네트워크의 정보 전달을 통제하는 프로토콜이자 인터넷을 이루는 핵심 프로토콜의 하나 국제 인터넷 표준화 기구(IETF)의 RFC 793에 기술되어 있다.

  • 연결 지향형 프로토콜 -> 수신측 데이터 흘리지 않게 -> 데이터 흐름 제어 (flow control) -> 전송 중 에러 발생 경우 -> 자동 재전송 에러 제어(error control) 등 기능 -> 데이터 확실한 전송 보장

    • UPD 에 비해 더 길고 복잡한 헤더

Today is...

오늘은 불금~!! ㅎㅎ

가장 시간이 안가는 날이기도 한데, 오늘 수업이 무척 흥미로워서 잘 지나갔다.
지금까지 프로그램으로 인한 실습 등은 너무 어려워서 힘들었는데,
오늘은 정보처리기사 공부하며 주워들은 내용이 있어서 추가적인 설명을 이해하는 게 훨씬 수월했다!

아 생각해보니 애플리케이션 보안은 내가 모르는 분야기도 하지만, 예비군 등으로 4일 놓친 게 엄청 커가지구... 감당할 수가 없는 것도 있었다..ㅋㅋ

다시 수업 따라갈만 하니까 공부 잘 해두자!

주말 나이스!

profile
It's log on my way to whitehack

1개의 댓글

comment-user-thumbnail
2024년 3월 22일

ARP | OSI 7 Layer | OSI 7 계층 | SKshieldusrookies | UDP | sk쉴더스루키즈 | tcp | 네트워크보안 | 디캡슐레이션 | 시스템보안 | 인캡슐레이션 | 클라우드 | 패킷 | 프레임

답글 달기