Мы знаем, что некоторая команда linux может получать статистику статистики tcp, такую как «netstat -s -tcp», «ss -s -t», но как получить статистику для одного конкретного интерфейса?Как получить статистику для одного интерфейса с помощью команды linux?
ответ
Вы можете использовать tcpstat
:
tcpstat - отчет статистики сетевого интерфейса
tcpstat -i <interface>
Если вы хотите, чтобы запустить его, когда интерфейс, вы можете использовать post-up
в /etc/network/interfaces
:
auto enp4s0f1
iface enp4s0f1 inet dhcp
post-up /etc/init.d/tcpstat start enp4s0f1
/etc/init.d/tcpstat
является init.d
сценарий, я создал содержащий:
#!/bin/bash
#title :tcpstat
#description :start/stop/restart tcpstat
#########################################
### install : cp tcpstat /etc/init.d/
# update-rc.d tcpstat defaults
### uninstall : update-rc.d -f tcpstat remove
usage(){
echo "Usage: service tcpstat {start|stop|restart} <interface>"
}
DEFAULT_LOCATION="/tmp/dump"
EXEC="/bin/tcpstat_run"
if [ ! -z "$2" ]; then
if [ ! -z "$3" ]; then
STORAGE_FILE="$3"
else
STORAGE_FILE="${DEFAULT_LOCATION}_$2"
fi
if [ -f $PID_FILE ]; then
echo "file exist"
fi
case "$1" in
start)
echo "Starting tcpstat service on inteface $2..."
daemonize -E INTERFACE=$2 -E DUMP_FILE=$STORAGE_FILE $EXEC
echo -e "\E[31;33m[ OK ]\E[0m"
;;
stop)
echo "Stopping tcpstat service..."
pkill -f "tcpstat -i $2"
echo -e "\E[31;33m[ OK ]\E[0m"
;;
restart|reload)
"$0" stop "$2"
"$0" start "$2"
;;
*)
usage
exit 1
esac
else
usage
fi
exit $?
Обратите внимание, что я использовал daemonize
вместо start-stop-dameon
для совместимости RHEL.
daemonize
запуск следующего Exec находится в /bin/tcpstat_run
:
#!/bin/bash
tcpstat -i "$INTERFACE" > "$DUMP_FILE"&
Вы можете изменить эти сценарии по своему вкусу, особенно если вы хотите сохранить дамп в определенном месте & вызвать специальную обработку в post-down
.
Например, если вы попытаетесь это сделать, как есть, вы получите следующий вывод:
[email protected]:~$ tail -f /tmp/dump_enp4s0f1
Time:1468847225 n=9 avg=66.56 stddev=35.76 bps=958.40
Time:1468847230 n=9 avg=87.33 stddev=40.17 bps=1257.60
Time:1468847235 n=14 avg=130.50 stddev=66.08 bps=2923.20
Time:1468847240 n=3 avg=46.00 stddev=0.00 bps=220.80
Time:1468847245 n=12 avg=58.50 stddev=11.26 bps=1123.20
Time:1468847250 n=9 avg=115.78 stddev=78.32 bps=1667.20
Time:1468847255 n=169 avg=135.22 stddev=188.26 bps=36564.80
Эта команда является «стандартной» командой, которая содержится в большинстве основных дистрибутивов Linux? – Lucifa
Нет, он не установлен по умолчанию в дистрибутивах Linux, но доступен в большинстве диспетчеров пакетов. –
«tcpstat -i
- 1. Как получить псевдоним интерфейса Linux (IFLA_IFALIAS) программно для интерфейса?
- 2. Как получить статистику приложений Linux по Ethernet?
- 3. Показать статистику с удаленного сервера linux
- 4. Как получить системную статистику с node.js
- 5. Как получить IPv6-адрес интерфейса под Linux
- 6. Как получить статистику воспроизведения
- 7. Как получить всю статистику для репозитория Github с помощью API?
- 8. Как получить статистику сетевых устройств?
- 9. Как получить текущую статистику пропускной способности сетевого интерфейса в Linux/UNIX?
- 10. Scapy - как получить статистику?
- 11. Получить имя сетевого интерфейса Linux с помощью Ansible?
- 12. Как получить сводную статистику
- 13. питон для Linux команды
- 14. Как системный монитор Linux получает статистику процесса
- 15. Как получить статистику сетевого адаптера в Linux/Mac OSX?
- 16. Получить ip-адрес интерфейса в linux с помощью pcap
- 17. Получить статистику для списка чисел с помощью GPU
- 18. Как получить статистику пользователя?
- 19. Проверьте статистику/успешную передачу команды ping
- 20. Как получить скорость сетевого интерфейса в Linux?
- 21. Как получить статистику по расписанию потоков в Linux?
- 22. Linux - контролировать удаленные команды с помощью «script»
- 23. Mailchimp API 3.0 Как получить статистику для автоматизации с DATERANGE
- 24. найти и заменить с помощью команды Linux
- 25. Как получить SEO-релевантную статистику сайта с помощью PHP?
- 26. Случайный выбор столбцов с помощью команды linux
- 27. Как получить статистику квот почтовых ящиков с помощью MailKit?
- 28. Как собрать статистику с помощью статистики?
- 29. Как получить статистику хранилища с JGit
- 30. Как получить статистику для рекламной кампании twitter
Мне нужно, чтобы получить статистику TCP с определенным интерфейсом, так как интерфейс вверх. – Lucifa