때문에 ifconfig
분명히 주요 리눅스 배포판에서 사용되지되고, 나는이에 대해 뭔가 배울 거라고 생각 ip
대신에 사용하기로했다 도구를 ifconfig
.
그리고 여기에 문제가 발생했습니다. 자체로 실행할 때 ifconfig
다른 정보 외에도 각 인터페이스에서 수신 / 전송 된 바이트 수를 보여줍니다. 에서이 방법을 찾지 못했습니다 ip
. 이 도구에는 그러한 기능이 없습니까? 이러한 통계를 얻기 위해 사용할 수있는 다른 내장 도구는 무엇입니까?
답변
또 다른 옵션은 / proc 파일 시스템을 사용하는 것입니다. / proc 디렉토리 / 그물 / dev에 파일이 구성된 네트워크 인터페이스에 대한 통계를 포함합니다. 각 회선은 하나의 네트워크 인터페이스 전용이며 수신 및 전송에 대한 통계를 포함합니다. 통계에는 수신 / 전송 된 총 바이트 수, 패킷, 삭제, 오류 등과 같은 메트릭이 포함됩니다.
cat /proc/net/dev
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 29846937 129576 0 0 0 0 0 0 29846937 129576 0 0 0 0 0 0
wlan0: 9467393340 8027251 0 0 0 0 0 0 2559312961 5896509 0 0 0 0 0 0
또는 모든 네트워크 인터페이스 및 관련 통계를 표시 할 수 있는 netstat 명령을 시도 할 수 있습니다 .
netstat -i
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
lo 65536 0 130435 0 0 0 130435 0 0 0 LRU
wlan0 1492 0 8028018 0 0 0 5897361 0 0 0 BMRU
답변
ip
하여 iproute2를 패키지의 일부 명령은 새로운 도구이다. link
부속의 장치 / 인터페이스를 관리한다.
인터페이스를 사용하여 통계를 얻을 수 있다면 ip -s link
root:~# ip -s link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
50679705 529967 0 0 0 0
TX: bytes packets errors dropped carrier collsns
50679705 529967 0 0 0 0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:1d:7d:aa:e3:4e brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
187663757 308710386 0 0 0 0
TX: bytes packets errors dropped carrier collsns
4051284587 532435117 0 0 0 0
답변
proc을 통해 필요한 모든 정보를 얻을 수 있습니다
# cat /sys/class/net/eth0/statistics/rx_bytes
# cat /sys/class/net/eth0/statistics/rx_packets
# cat /sys/class/net/eth0/statistics/tx_packets
# cat /sys/class/net/eth0/statistics/tx_bytes
또한 iptables 및 구문 분석 출력을 사용할 수 있습니다.
수신 패킷
# iptables -L INPUT -n -v
전송 된 패킷
# iptables -L OUTPUT -n -v
서버가 게이트웨이 인 경우 FORWARD 체인 도 구문 분석해야합니다.
답변
파일을 읽고 /sys/class/net/wlp3s0/statistics/rx_bytes
다른 명령을 호출하지 않고 rx_byes를 직접 가져올 vnstat
수도 있습니다. 리눅스는 내가 아는 것처럼 모든 정보를 파일에 저장하므로 해당 파일을 찾고 정보를 얻는 것이 좋습니다. 관련 파일을 찾는 것은 어려운 일입니다.