اتصال خودکار کانکشن vpn در لینوکس
امین | پنجشنبه ۱۷ اسفند ۱۳۹۱
چندی پیش مشکلی برای دوستم توی خوابگاه پیش اومده بود که کانکشن vpn قطع میشد و دانلودهاش نصفه شب ها نصفه میموندن!چاره ی کار بجستم و این راه یا بیافتم.
خب. اول شما کانکشن vpn مورد نظرتون رو بسازید. یا قبلا ساختید! و بعد دستور زیر رو اجرا کنید:
خب. اول شما کانکشن vpn مورد نظرتون رو بسازید. یا قبلا ساختید! و بعد دستور زیر رو اجرا کنید:
nmcli con
این دستور کانکشن های شما رو لیست میکنه و برای هر کدوم یک عبارت معینی به نام uuid نشون میده. شما کانکشن مورد نظرتون رو پیدا کنید و uuid مخصوص به اون رو در اسکریپت زیر جایگزین کنید. همچنین اسم کانکشن رو هم جایگزین کنید.
#!/bin/bash
while [ "true" ]
do
VPNCON=$(nmcli con status)
if [[ $VPNCON != *khabgah* ]]; then
echo "Disconnected, trying to reconnect..." & zenity --info --title="VPN reconnected" --text="VPN connection khabgah has been disconnected. Please wait to auto reconnect..."
(sleep 1s && nmcli con up uuid fe7cb00d-86b1-4457-a4df-32657c78dc4b)
else
echo "Already connected !"
fi
sleep 30
done
while [ "true" ]
do
VPNCON=$(nmcli con status)
if [[ $VPNCON != *khabgah* ]]; then
echo "Disconnected, trying to reconnect..." & zenity --info --title="VPN reconnected" --text="VPN connection khabgah has been disconnected. Please wait to auto reconnect..."
(sleep 1s && nmcli con up uuid fe7cb00d-86b1-4457-a4df-32657c78dc4b)
else
echo "Already connected !"
fi
sleep 30
done
حالا اسکریپت بالا رو در یک فایل متنی دخیره کنید مجوز اجرا شدن رو بهش بدید. (کلیک راست، properties , permissions و بعد allow executing file as a programs . این اسکریپت رو میتونید بدید به scheduled task تا براتون موقع بوت شدن اجرا کنه. یا یه کار دیگه هم که میشه کرد اینه که آدرس این اسکریپت رو در فایلی به نام profile. یا bashrc. که به صورت مخفی در فولدر home کاربر وجود داره قرار بدید. مثلا این خط رو:
/home/amin/Autovpnscript
نکته: اگه دوست ندارید پیامی رو که اسکریپت موقع قطع بودن کانکشن نشون میده، نشون نده، عبارت سبز رنگ بالا رو حذف کنید تا همه چیز بی سر و صدا اتفاق بیفته!
دسته: