jyamethyst21 님의 블로그

네트워크 보안 본문

보안 & IT 지식 🌺

네트워크 보안

jyamethyst21 2026. 2. 5. 23:25

TCP 연결 종료(4-way Handshake)

어제는 TCP 연결 설정에 대해 설명했고 오늘은 연결 해제에 대해 설명하려고 한다.

TCP는 연결지향성, 신뢰성이 높은 장점이 있는 프로토콜이다.

TCP는 플래그가 있는데 urg, ack, psh, rst, syn, fin 이렇게 총 6개로 구성되어 있다. 이 중 연결 해제할 때는 fin, ack만 사용된다. fin은 연결을 해제하는 플래그이고, ack은 확인 플래그이다. 서로 종료하겠다, 알겠다, 라는 답이 오가야 정상적으로 종료가 되고 각 과정을 실행할 때마다 FIN_WAIT_1과 같은 상태로 바뀌게 된다.

TCP, IP, UDP 구조

출처: http://www.ktword.co.kr/test/view/view.php?no=1889

1) TCP

TCP 헤더는 20~60바이트로 구성될 수 있다.

헤더 내에는 송/수신지 포트와 보낸 데이터의 순서 번호인 시퀀스 넘버, 상대에게 어디까지 잘 받았는지 알리는 ack number 등으로 구성되어 있다. 이외에도 앞서 설명했던 flags, 헤더길이, 예약비트, 상대가 한번에 받을 수 있는 양을 제어하는 용도인 window size, 오류 검출용인 checksum, options이 있다.

출처: http://www.ktword.co.kr/test/view/view.php?no=1859

2) IP

다음은 ip의 구조이다. ip는 주소 부족 문제 해결을 위해 버전이 여러가지로 나뉘어져 있다.(ipv4, ipv6)

그래서 가장 처음에 이에 대한 버전이 나와있고 ip도 tcp처럼 20~60바이트로 범위가 다양하기 때문에 헤더길이, 서비스 타입, 총 패킷 길이가 존재한다.

다음은 IP에서 단편화가 일어나는데 이와 관련된 필드인 id, flags, fragment offset이 존재한다. 단편화에 대한 부분은 뒤에 자세히 설명하겠다.

이외에 경로(홉 수)와 관련있는 ttl, protocol id(상위계층 식별용), 체크썸, 송/수신지 ip 주소 등이 존재한다.

출처:http://www.ktword.co.kr/test/view/view.php?no=323

3) UDP

UDP는 TCP와 달리 비신뢰성, 속도가 최우선인 프로토콜이다. 최소 정보만 유지하기 때문에 보시는 바와 같이 구조가 굉장히 간단하다. 전체 길이가 8바이트이고 각 자리에 2바이트씩 들어간다.

송/수신 포트번호, 전체 길이, 체크썸 이렇게 간단하게 구성되어 있다.

 

MTU, MSS, 단편화, 재조립

MTU란 한번에 실을 수 있는 IP 패킷의 최대 크기를 의미한다. (이더넷 기준 MTU는 1500바이트)

해당 크기는 헤더+페이로드이며 이 값이 1500바이트보다 작아야 하위계층으로 전송이 가능하다. 만약 헤더+페이로드 값이 1500바이트보다 클 경우(이더넷 기준) 하위 계층으로 보내기 위해서 단편화를 해서 보내고 이를 재조립하는 과정이 일어난다.

이때 재조립할 때 사용하는 필드가 앞서 말했던 IP 구조에서의 ID, FLAGS, OFFSET이다.

 

또한, MSS라는 것도 존재하는데 앞서 MTU는 IP 패킷의 최대 크기라면 MSS는 TCP에서 데이터만 최대 얼마까지 보낼지 정하는 최대값이다. 여기서 주의할 점은 헤더 포함이 아니라는 점이다! 매우 헷갈릴 것 같으니 암기 필수이다 ..

결과적으로 MSS는 MTU-IP HEADER-TCP HEADER로 계산한다. (헤더는 위에서 아래로 갈 때 붙이기 때문에)

 

단편화는 앞서서 MTU보다 패킷이 클 경우 잘라지는 과정이라고 했는데, 나중에 재조립을 위해서 나뉘어진 조각들이 같은 원본이라는 것을 표시하는 번호를 부여하게 된다. 이것이 IDENTIFICATION 필드이다. 그리고 원본 페이로드의 몇번째 위치 조각인지를 나타내는 것은 오프셋, FLAGS는 잘라진 조각이 더 있는지 나타낸다. 이를 MF(MORE FRAGMENTS)라고 하는데 1일 경우 뒤에 조각이 더 있다는 의미이고 0일 경우 마지막 조각임을 의미한다.

포트 미러링, 허빙 아웃, 탭(+AGGREGATION TAP)

1) 포트 미러링

: 스위치가 특정 포트로 지나가는 트래픽을 복제해서 목적지로 보내주는 과정

 

- 구성 요소

 

  • Source(원본): 캡처하고 싶은 포트/여러 포트/특정 VLAN
  • Destination(미러 포트): 캡처 장비가 연결된 포트

2) 허빙 아웃

: 스위치-대상 사이에 허브를 끼워서, 허브 특성을 이용해 캡쳐(허브는 모든 포트로 브로드캐스트 날림)

 

- 한계

  • 요즘은 허브 환경이 흔치 않아 구형 환경에서 가능했음

3) 탭 사용

: 케이블 중간에 TAP 장비를 물려서 트래픽을 물리적으로 복제해 목적지로 내보내는 장치(스위치 설정과 무관하게 링크 레벨에서 복제) 

: 탭이란, 데이터 흐름의 중단 없이 네트워크에 영향을 주지 않고 트래픽을 모니터링 할 수 있게 해주는 장비

 

- Aggreagation TAP

  • 여러 TAP 출력을 받아서 하나의 모니터 포트로 집계하거나, 캡처 장비가 처리 가능한 형태로 필터해주는 장비를 의미
  • 보고싶은 링크가 여러 개 일 때 중간에서 모아주는 역할을 함

SPAN, RSPAN

1) SPAN

: 같은 스위치 내부에서 특정 포트/트래픽을 복제해서 같은 스위치의 다른 포트로 보내는 기능(미러링)

: 추가 장비가 필요없고 설정만으로 바로 사용 가능, 단 대역폭 초과 시 드롭 발생

 

2) RSPAN

: 다른 스위치에 있는 트래픽을 VLAN을 활용해 원격 스위치로 미러링

: 물리적으로 떨어진 스위치도 분석 가능

 

'보안 & IT 지식 🌺' 카테고리의 다른 글

네트워크 보안  (0) 2026.02.09
네트워크 보안  (0) 2026.02.06
네트워크 보안  (1) 2026.02.04
네트워크 보안  (0) 2026.02.04
네트워크 보안  (0) 2026.02.02