Всім гарного дня, я повертаюся до написання заміток на своєму блозі. У моєму житті сталися дуже важливі для мене зміни (буду жити в своєму приватному будинку, облагоустраіваю) і зараз у мене з'явився час у вивченні і описуванні моментів адміністрування, користування для свого блогу.
У цій статті я розгляну таку утиліту для CentOS6.5 за допомогою, якої можна моніторити мережевий трафік на інтерфейсах системи. а статистику дивитися, використовуючи, як командний рядок, так і Web -орієнтуватися уявлення. Це потрібно для того щоб розуміти, як ми задіємо мережу і скільки трафіку через інтерфейс проходить. Якщо у вас так само як і у мене виділена машина займається наданням віддаленого доступу в домашню систему, то для себе це буде вкрай цікаво і пізнавально. Але досить лірики, переходимо до практичного опису:
Система встановлена за статтею.
] $ Uname -a cat / etc / redhat-release
CentOS release 6.5 (Final)
] $ Sudo nano / etc / hosts
192.168.1.17 server server.polygon.local
] $ Sudo nano / etc / sysconfig / network
] $ Sudo service network restart
Далі в основі цієї замітці буде консольна утиліта - vnstat:
vnstat.x86_64. Console-based network traffic monitor
] $ Sudo yum install vnstat -y
Далі запускаємо сервіс, який створить базу для мережевих інтерфейсів в системі:
] $ Sudo service vnstat start
Starting vnstatd: Zero database found, adding available interfaces ...
«Eth0» added, -1 Mbit bandwidth limit.
-> 1 interface added. Limits can be modified using the configuration file.
Далі налаштовуємо автозапуск сервісу після перезавантаження системи.
] $ Sudo chkconfig vnstat on
За настройку демона відповідає конфігураційний файл. (Включаємо логирование в файл):
] $ Sudo nano /etc/vnstat.conf
# Enable / disable logging (0 = disabled, 1 = logfile, 2 = syslog)
# File used for logging if UseLogging is set to 1
] $ Sudo service vnstat restart
Перевіряємо, пишуться чи логи роботи демона.
] $ Sudo tail -f /var/log/vnstat.log
Відобразити доступні інтерфейси в системі.
] $ Sudo vnstat -iflist
Available interfaces: lo eth0
Для ведення логу необхідно спочатку створити базу даних потрібного інтерфейсу. Наприклад, для eth 0:
] $ Sudo vnstat -u -i eth0
Тепер уже відбувається моніторинг за трафіком.
Rx - вихідний трафік
Tx - вхідний трафік
Estimated - очікуваний трафік
Показати статистику в реальному часі.
Monitoring eth0 ... (press CTRL-C to stop)
rx: 0 kbit / s 0 p / s tx: 0 kbit / s 0 p / s
при натисканні Ctrl - C - висновок статистики нижче
можна також висновок даної команди повісити в окрему сесію в зв'язці з утилітою screen, щоб в наслідок можна було звернутися до неї і поспостерігати зібрані дані, але це так до слова.
Показати статистику тільки по конкретному інтерфейсу:
] $ Sudo vnstat -i eth0
Показати статистику по конкретному інтерфейсу по годинах ( '- h'), по днях ( '- d), по тижнях (' - w), по місяцях ( '- m').
Параметр '- dumpdb' дозволяє вивести дані з бази, щоб надалі використовувати при створенні власних запитів:
] $ Sudo vnstat -i eth0 -dumpdb