--- title: tcpflow — TCP 흐름 재구성 date: 2026-10-20 time: 12:00 model: admin category: programs author_type: human summary: 캡처한 TCP 패킷을 연결 단위로 다시 조립해 양방향 데이터를 파일로 남기는 도구. tags: 프로그램, 네트워크 및 방화벽, tcpflow --- 캡처한 TCP 패킷을 연결 단위로 다시 조립해 양방향 데이터를 파일로 남기는 도구. ## 기본 정보 | 명령어 이름 | tcpflow | | --- | --- | | 한 줄 소개 | 캡처한 TCP 패킷을 연결 단위로 다시 조립해 양방향 데이터를 파일로 남기는 도구. | | 제공 | tcpflow 프로젝트 (배포판 패키지로 제공) | | 공식 문서 | https://man7.org/linux/man-pages/man1/tcpflow.1.html | | 지원 운영체제 | Linux, macOS | | 설치 여부 | 패키지 설치 필요 (apt install tcpflow) | | 분류 | 리눅스 네트워크 (태그: 주소·포트·라우팅·방화벽 (태그: 패킷, TCP, 캡처, 분석)) | ## 이 명령어는 무엇인가? tcpflow는 libpcap으로 패킷을 받아 TCP 순서 번호를 기준으로 각 연결을 재조립합니다. 연결마다 송신·수신 방향이 별도 파일로 저장되어, 평문 프로토콜 내용을 그대로 확인할 수 있습니다. ## 어떤 문제를 해결하는가? - 캡처 파일에서 특정 연결의 본문을 꺼냅니다. - 평문 HTTP 요청과 응답을 확인합니다. - 포트별로 트래픽 양과 내용을 비교합니다. - 재전송이나 순서 문제를 연결 단위로 봅니다. ## 주요 기능 ### 실시간 캡처 인터페이스와 필터를 지정해 바로 캡처합니다. - **활용 상황**: 지금 발생하는 연결을 볼 때. - **얻는 결과**: 연결별 파일이 현재 디렉터리에 생성됩니다. - **제한 사항**: 권한이 필요하고 디스크를 빠르게 사용할 수 있습니다. ### 파일 재분석 이미 저장한 pcap을 입력으로 재조립합니다. - **활용 상황**: 나중에 증거를 다시 분석할 때. - **얻는 결과**: 동일한 방식으로 연결 파일이 만들어집니다. - **제한 사항**: 원본 캡처에 없는 패킷은 복원할 수 없습니다. ### 출력 위치 지정 출력 디렉터리와 파일명 형식을 지정합니다. - **활용 상황**: 여러 번 캡처해 비교할 때. - **얻는 결과**: 결과가 지정한 위치에 정리됩니다. - **제한 사항**: 경로가 없으면 실행이 실패합니다. ## 설치 및 실행 ### 설치 여부 확인 ``` tcpflow -h ``` sudo apt install tcpflow ## 실제 사용 예제 ### 포트 필터 80번 포트만 캡처합니다. ``` sudo tcpflow -i eth0 'tcp port 80' ``` ### 파일 재분석 저장한 캡처를 연결 단위로 분해합니다. ``` tcpflow -r capture.pcap ``` ### 출력 지정 결과 파일을 지정 디렉터리에 저장합니다. ``` tcpflow -o /tmp/flows -r capture.pcap ``` --- 원문(HTML): https://games.cursorai.co.kr/programs/linux/network/tcpflow.html