iftop - 라이브 네트워크 연결 대역폭 치트시트
iftop은 연결별 네트워크 대역폭의 top 같은 도구다. 인터페이스에서 수신하고 라이브, 정렬된 호스트 쌍 사이의 트래픽 목록을 표시한다 — 당신의 머신과 각 원격 엔드포인트 — 2, 10, 40초에 걸친 실행 중인 평균이 있다. nethogs가 프로세스별로 그룹화하는 반면, iftop은 연결별로 그룹화하는데, 이는 “어떤 원격 호스트/연결이 링크를 먹는가?”라는 질문일 때 원하는 것이다. 패킷을 캡처하려면 root가 필요하다.
설치
| 플랫폼 | 명령어 |
|---|
| Debian/Ubuntu | sudo apt install iftop |
| Fedora/RHEL | sudo dnf install iftop |
| Arch Linux | sudo pacman -S iftop |
| macOS (Homebrew) | brew install iftop |
| 확인 | iftop -h |
실행
| 명령어 | 설명 |
|---|
sudo iftop | 기본 인터페이스 모니터링 |
sudo iftop -i eth0 | 특정 인터페이스 모니터링 |
sudo iftop -n | 호스트 이름 확인 안 함 (IP 표시, 더 빠름) |
sudo iftop -P | 호스트뿐 아니라 포트도 표시 |
sudo iftop -B | 비트가 아닌 바이트로 대역폭 표시 |
sudo iftop -F 10.0.0.0/24 | 네트워크/호스트의 트래픽만 |
디스플레이 읽기
| 요소 | 의미 |
|---|
| 왼쪽 열 | 로컬 호스트 |
| 오른쪽 열 | 원격 호스트 |
=> / <= | 송신 / 수신 방향 |
| 세 개의 숫자 | 지난 2s / 10s / 40s의 평균 |
| 막대 | 각 쌍의 상대 대역폭 |
| 하단 요약 | TX / RX / 전체 누적 + 피크 + 속도 |
대화형 키
| 키 | 작업 |
|---|
n | DNS 확인 토글 |
p | 포트 표시 토글 |
P | 디스플레이 일시 중지 |
b | 대역폭 막대 토글 |
t | 라인 표시 모드 사이클 (한 줄/두 줄, 방향별) |
S / D | 소스 / 대상 포트 표시 토글 |
1 / 2 / 3 | 2s / 10s / 40s 열로 정렬 |
j / k | 스크롤 |
q | 종료 |
유용한 옵션
| 옵션 | 설명 |
|---|
-i IFACE | 모니터링할 인터페이스 |
-n | DNS 확인 없음 |
-N | 포트-서비스 확인 없음 |
-P | 포트 표시 |
-B | 비트 대신 바이트 |
-f "filter" | pcap 필터 (예: -f "port 443") |
-m RATE | 그래프 스케일 최대값 설정 |
일반적인 워크플로우
# eth0에서 가장 바쁜 원격 호스트, 빠르게 (DNS 없음)
sudo iftop -i eth0 -n
# 포트를 포함하여 어떤 서비스가 대화하는지 보기
sudo iftop -i eth0 -nP
# HTTPS 트래픽만 포커스
sudo iftop -i eth0 -f "port 443"
# 특정 서브넷으로의 트래픽 감시
sudo iftop -i eth0 -F 192.168.1.0/24
iftop vs 관련 도구
| 도구 | 그룹화 기준 | 최고의 질문 |
|---|
| iftop | 연결 (호스트 쌍) | “어떤 연결/원격이 바쁜가?“ |
| nethogs | 프로세스 | ”어떤 프로그램이 대역폭을 사용하는가?“ |
| bandwhich | 프로세스 + 연결 + 원격 | 둘 다, 더 풍부한 TUI |
| nload / bmon | 인터페이스 총합 | ”전체 처리량은?” |
nethogs (어떤 프로세스)와 iftop (어떤 연결)을 페어링하여 대역폭 문제를 완전히 진단하자.
자료