인터페이스를 통한 네트워크 트래픽 볼륨 모니터링


17

특정 네트워크 인터페이스 (예 : eth0)를 통해 트래픽을 모니터링 (예 : 활용도를 실시간으로 확인) 할 수있는 방법이 있습니까?

여기서 주목할 점은 상자에있는 도구 세트가 고정되어 있으며 재고 RHEL 배포와 거의 비슷하므로 추가 도구를 사용할 수 없다는 것입니다.

기본적이고 일반적으로 iostat와 같은 것을 찾고 있습니다.


1
한 번 봐 가지고 stackoverflow.com/questions/596590/...을 . 거기에 대한 제안 중 일부는 유용해야합니다.
Andy Smith

D' oh, 검색이 실패했습니다 (그리고 시도했습니다). 공정을하기 위해, 나는 그것이 저기 serverfault 질문이 아닌 SO 하나 :) 생각
BeeOnRope

답변:


15

보고자하는 데이터는 오래된 ifconfig에 나타납니다.

watch ifconfig eth0

또는 일을 더 돋보이게 만들려면 :

watch -n 1 -d ifconfig eth0

감사합니다-@ user239558의 코멘트 외에 이것은 바로 맞습니다. 당신이 처음 언급 한 이후로 귀하의 답변을 수락합니다 ifconfig.
BeeOnRope

에 딱 맞다. 이것은 내가 찾던 것이며 다른 포럼에서 이것과 비슷한 질문이 많이 있지만, 이것이 내가 발견 한 첫 번째 대답입니다.
Hazok

ifconfig가 기본 경로에 없습니다. / sbin / ifconfig가 필요할 수 있습니다.
kevinf


4

새로운 도구를 설치하지 않고 :

while ifconfig eth0 | grep 'RX bytes'; do sleep 10; done


4

2015 년 이후 리눅스에서 이것은 더 좋을 것입니다 watch -n1 -d ip -s link show [interface]


2

많은 유틸리티가 있습니다 :

  1. 네 토그
  2. iptraf
  3. iptables는 좋은 해결책이 될 수 있지만 방화벽을 사용하는 경우 규칙을 올바르게 재배치하기가 약간 어렵습니다.

iptraf는 내가 찾던 것입니다. 그러나 마지막 릴리스는 IPTraf 3.0.0-2005 년 9 월 19 일에있는 것 같습니다. 이것이 문제가 될 수 있습니까?
Al-Alamin

2

iptables를 사용하여 다음과 같은 생각을 할 수도 있습니다.

iptables -A INPUT -p tcp --dport $port -i eth0

iptables -A OUTPUT -p tcp --sport $port -i eth0

그런 다음 iptables -L -n -v는 인터페이스를 통과 한 패킷 수를 iptables -Z로 출력하여이 수를 0으로 만듭니다.


출력 체인은 -o를 인터페이스로, -i는 불법입니다
drake7707

2
function humanValue()
{
    h=( '' K M G T P )
    i=1; v=$(( $1 * 8 ))
    while [ $v -gt $(( 1 << 10 * i )) ]; do let i++; done;
    echo -n "$(( $v >> 10 * --i )) ${h[i]}b/s";
}
ifaces=$(ip addr | grep -E "^[0-9]:" | cut -d" " -f2 | tr -d \:)
declare -A RX2 TX2;
while sleep 1; 
do
    date 
    for INTERFACE in $ifaces;
    do
        RX1=$(cat /sys/class/net/${INTERFACE}/statistics/rx_bytes)
        TX1=$(cat /sys/class/net/${INTERFACE}/statistics/tx_bytes)
        DOWN=$(( RX1 - RX2[$INTERFACE] ))
        UP=$(( TX1 - TX2[$INTERFACE] ))
        RX2[$INTERFACE]=$RX1; TX2[$INTERFACE]=$TX1
        echo -e "[ $INTERFACE:\tRX: $(humanValue $DOWN)\t|\tTX: $(humanValue $UP) ]"
    done;
done;

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.