最近またこのサーバーだけマイIP接続が切れてしまう。原因は不明だが自動再接続できるようにしないとだめだ。
ネットを検索したら監視用のシェルを見つけたのでこれを参考にした。一部上手くいかない部分を赤字のように修正した
# vi pptp_connect.sh
#!/bin/bash
IPADDR=”監視先サーバのIPアドレス”
PATH=$PATH:$HOME/bin:/usr/sbin
export PATH
ping -c 1 $IPADDR > /dev/null
if [[ $? -ne 0 ]] ;then
pkill -f “^/usr/sbin/pppd call 接続先名\s”
/usr/sbin/pppd call “接続先名” updetach
/sbin/route add -net 接続先のネットワークアドレス netmask サブネットマスク dev ppp0
/sbin/route -add default gw マイIPで取得するIPアドレス
fi
exit;
このシェルでマイIPに接続できることを確認したので、cronを設定して監視するようにした。
# crontab -eで設定するらしいが操作方法がわからないので/etc/crontabファイルに設定を追加することにした。以下はdebian7のcrontabで* * * * * root /home/yshimoda/pptp_connect.shを追加して再起動をしたらマイIP接続が自動に行われたのでとりあえずこの設定を試して見ることにする。
手動でマイIPを切断する。ifconfigでアダプターの状況を確認すると再接続されたのでこの設定で大丈夫みたい。
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don’t have to run the `crontab’
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts –report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.monthly )
* * * * * root /home/yshimoda/pptp_connect.sh
#