【サーバ運用】PoPToPの設定を見直す

つことで2本目。うちのサーバは運用上の問題で、
各サーバのログ管理等々は面倒なんでsambaで行っているわけですが、
これが実家にいる時にも容易に出来るようにと
ちょっと前からPoPToPをファイルサーバに実装して
VPN経由でサーバに接続できるようにしてあります。

で、こいつがまたブツブツと接続が切れる現象が多発してまして……
これまではそれほど重大な事態に発展してなかったので
ずっと放置していたんですが、療養+三連休を機に
設定を見直す事にしてみました。
これまでの経験上接続が切断される現象はアイドル時間が
ちょっと続くと発生していると推察出来たので、
大体こういうのはPoPToPかPPPかのいずれかの
タイムアウト設定が短いから発生しているのだろうと
軽くアタリを付けて設定ファイルを確認してみます。

まずはPoPToPから。
# jove /usr/local/etc/pptpd.conf

# TAG: ppp
# Path to the pppd program, default '/usr/sbin/pppd' on Linux
#
#ppp /usr/sbin/pppd

# TAG: option
# Specifies the location of the PPP options file.
# By default PPP looks in '/etc/ppp/options'
#
option /etc/ppp/ppp.conf
#option /etc/ppp/options.pptpd

# TAG: debug
# Turns on (more) debugging to syslog
#
debug

TAG: stimeout
# Specifies timeout (in seconds) on starting ctrl connection
#
# stimeout 10

# TAG: noipparam
# Suppress the passing of the client's IP address to PPP, which is
# done by default otherwise.
#
noipparam

# TAG: logwtmp
# Use wtmp(5) to record client connections and disconnections.
#
logwtmp

# TAG: bcrelay <if>
# Turns on broadcast relay to clients from interface <if>
#
bcrelay fxp0

# TAG: localip
# TAG: remoteip
(略)

…………
ありませんね。stimeoutはコネクションが確立する前の段階での
タイムアウトを設定する項目なので、今回の件とは無関係でしょう。


ということで、次はPPPの方を。
# jove /etc/ppp/ppp.conf

default:
set log Phase Chat LCP IPCP CCP tun command
ident user-ppp VERSION (built COMPILATIONDATE)

# Ensure that "device" references the correct serial port
# for your modem. (cuaa0 = COM1, cuaa1 = COM2)
#
set device /dev/cuaa1

set speed 115200
set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \
\"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CONNECT"
set timeout 180 # 3 minute idle timer (the default)
enable dns # request DNS info (for resolv.conf)
(略)

ありましたありました。この set timeout が原因でブツブツと
接続が切られるようですね。思うに3分アイドルが続くと
接続をぶった切っているようです。
基本的にpppはダイヤルアップ環境を前提にデフォルト値が
設定されている項目が多いためこういう事になっているので、
VPN接続として使う場合は極端に延ばすか
0秒(タイムアウトなし)にするのがよろしいでしょう。


と、いうわけで上記 set timeout を0にしてしばらく様子を見てみる事に。