우분투를 실행 중입니다리눅스ifconfig
v18이며 내 NIC에 대해 산출되는 정보는 다음과 같습니다 .
$ ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.123 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::4a75:bbe4:742d:d77b prefixlen 64 scopeid 0x20<link>
ether b8:27:eb:55:c7:9f txqueuelen 1000 (Ethernet)
RX packets 2443063 bytes 868405621 (828.1 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2343559 bytes 1022562153 (975.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
일부 시스템(예: 라우터에 내장된 Linux)RX/TX 패킷만 보고, 그러나 RX/TX 바이트는 표시하지 않습니다.
Linux 운영 체제에서 다음을 수행할 수 있는 방법이 있습니까?RX/TX 패킷이 주어지면 RX/TX 바이트를 얻습니다.?
내 생각에 몇 가지 관련 질문은 다음과 같습니다.
- 이 동등성은 항상 동일합니까(예: 1024 요소)?
- 이 동등성은 실행 중에 변경됩니까(동적)?
- 이 동등한 운영 체제는 종속적입니까? 아니면 NIC에 의존할까요?
- 전혀 동등한 것이 있습니까?
답변1
동등성은 없으며 패킷의 내용에 따라 크기가 다릅니다. 최소 및 최대 크기만 얻을 수 있습니다. 예를 들어, 이더넷 프레임은 72~1530옥텟(점보 프레임 무시)을 차지할 수 있으므로N이더넷 인터페이스의 패킷은 72 ×N그리고 1530 ×N전송된 바이트.
ifconfig
라우터의 명령은 바이트 수를 표시하지 않을 수 있지만 라우터가 Linux를 실행하는 경우 해당 수가 추적됩니다 . ~처럼모스비댓글을 달았으니 다음을 사용하여 볼 수 있어야 합니다.
ip -s link show eth0
또는
head /sys/class/net/eth0/statistics/*_bytes