適当な思いつきで書くブログ

UbuntuやPerlやJavaScriptやVimやZshやShellScriptやMySQLと戯れている中で適当な思いつきでやってみたことを書いています。

UbuntuのVPN接続が頻繁に切断されるときの対処法

Ubuntu9.04+でのVPN接続は、vpncとnetwork-manager-vpncをインストールすることによってGUIからでも行なえます。
ただCiscoVPN環境下において、頻繁にその接続が切断されていました(一日3,4回
それが最近(今のところ)解消されたのでその対処法です。


結論から言えば、デッドピア検出をオフにすることで解消されました。
下記のようにconfファイルに「DPD idle timeout (our side) 0」を追加しCLIからvpncを実行します。

$ sudo vpnc ~/.vpn/defalult.conf
[sudo] password for tekiomo: 
Enter password for tekiomo@VPN_SERVER: 
VPNC started in background (pid: 1234)...
# confファイルの中身
$ cat ~/.vpn/default.conf
## generated by pcf2vpnc
IPSec ID VPN_GROUP_ID
IPSec gateway VPN_SERVER
IPSec secret GROUP_PASSWORD
DPD idle timeout (our side) 0

Xauth username tekiomo
IKE Authmode psk

# 切断の仕方
$ sudo vpnc-disconnect

またconfファイルに追加せずに直接コマンドから「--dpd-idle 0」と指定することも可能です

$ sudo vpnc --dpd-idle 0 ~/.vpn/default.conf

(本当はGUIでDPDをオフに設定したかった(接続状況が可視できるので)のですが、GUIでの設定方法が分かりませんでした。)


上記のconfファイルはpcfファイルからpcf2vpncを使ってコンバートしました。pcf2vpncのインストール方法については下記を参考にしてださい。
How to setup Cisco VPN using VPNC Ubuntu Jaunty (9.04) | Ubuntu Geek

なおページ中でwgetしているcisco-decrypt.cはデッドリンクです。
このあたりからダウンロード可能です。