با vnstat میتونید ترافیک در لحظه ی اینترنت خودتون رو ببینید، ترافیک روزانه، ماهانه رو هم براتون نشون میده. و این رو برای interfaceهای مختلفی انجام میده، یعنی مثلا برای وایرلس جدا، برای شبکه جدا و ... و همچنین با reboot کردن سیستم اطلاعات پاک نمیشن.
vnstat رو میتونید در توزیع خودتون پیدا کنید و نصب کنید. بعد از اینکه نصب کردیم لازمه که چند تا کار انجام بدیم.
اونهایی که میدونن kerio چیه، اما نمیدونن چطور باید در لینوکس (در اینجا آرچ) راهش بیندازن، این نوشته به دردشون میخوره.
بسته ی kerio-control-vpnclient
رو از مخازن AUR نصب کنید. بعد از نصب باید تنظیمات کانکشن رو انجام بدیم.
sudo /usr/sbin/kvpnc configure
به سوالاتی که میپرسه پاسخ مناسب رو بدید. از قبیل یوزرنیم و پسورد و آدرس سرور...
بعد از پیکربندی با این دستور کانکشن شما اجرا میشه:
sudo /usr/sbin/kvpnc start
و با تغییر start به stop کانکشن رو قطع میکنیم.
و با این دستور لاگ یا گزارش عملکرد کانکشن رو خواهیم داشت:
cat /var/log/kerio-kvc/error.log
کاش میشد وقتی وصل میشه یا قطع میشه یه نوتیفیکیشنی چیزی هم ببینیم.
تا به حال شده بخواید ببینید چه برنامه ای همین الان داره از اینترنت استفاده میکنه؟ حالا به هر دلیلی. مثلا متوجه شدید لینک مودم در حال فعالیته ولی شما کاری با اینترنت ندارید. یکی از برنامه های خوب که به درد من خورد nethogs هست.
برای نصب این برنامه در آرچ، از این دستور استفاده کنید:
sudo pacman -S nethogs
اگه لازم داشته باشیم هر مثلا ۱۵ دقیقه چک بشه آیا به اینترنت وصل هستیم یا خیر، و اگر وصل نبود یک هشدار صوتی به ما بده، میتونیم از اسکریپت زیر استفاده کنیم و اون رو توی cron قرار بدیم تا هر ۱۵ دقیقه اجرا بشه.
اسکریپت زیر برای ما چک میکنه آیا میتونیم به google.com پینگ کنیم یا نه. اگر بله، یک دستوری اجرا بشه (یک صدای کلیک) و اگر نه، یک صدای دیگه پخش بشه و نوتیفیکیشن هم بده. دستورات رو میتونید بنا به نیاز خودتون تغییر بدید.
#!/bin/bash
export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
if [[ $(ping -q -c 3 google.com) == @(*3 received*) ]]; then
paplay /usr/share/sounds/freedesktop/stereo/device-added.oga
else
paplay /usr/share/sounds/freedesktop/stereo/dialog-warning.oga && /usr/bin/notify-send -i "network" "Network is down" "There is no active internet connection now"
fi
توجه کنید که بجای /run/user/1000/bus
باید userID
خودتون رو قرار بدید. با دستور id
میتونید UID
خودتون رو ببینید.
برای قرار دادن این اسکریپت در کرون (تا هر ۱۵ دقیقه اجرا بشه)، اول مجوز اجرایی به اسکریپت میدیم (با توجه به محل اسکریپت):
chmod +x ~/pingstat
و بعد برای ویرایش job های کرون، با دستور crontab -e
و اضافه کردن زمان و محل اسکریپت، اون رو به امان خدا می سپاریم:
*/15 * * * * ~/pingstat
یک اسکریپت کامل تر در اینجا وجود داره که وقتی ping میکنه اگر در دسترس نباشه یک ایمیل میفرسته! البته در ادامه مطلب این اسکریپت رو هم آوردم
حاصل سر و کله زدن های من با لینوکس