MRTGの設定覚書

FreeBSDのルーターの設定をやり直してから、MRTGでSNMPの情報が取得できなくなっていた。
net-snmpをインストールしてsnmpwalkをかけても返事が返ってこないことから、症状はSNMPのパケットがうまく出ていないらしい。
で、ipfwでSNMPのudpポートを開く設定に。ここで問題なのは、udpは本来一方的垂れ流しだが、SNMPのqueryはoutgoingで適当に選ばれたportから対象のport
161にqueryが飛ぶと、返事が対象のport 161からoutgoing…

FreeBSDのルーターの設定をやり直してから、MRTGでSNMPの情報が取得できなくなっていた。

net-snmpをインストールしてsnmpwalkをかけても返事が返ってこないことから、症状はSNMPのパケットがうまく出ていないらしい。

で、ipfwでSNMPのudpポートを開く設定に。ここで問題なのは、udpは本来一方的垂れ流しだが、SNMPのqueryはoutgoingで適当に選ばれたportから対象のport 161にqueryが飛ぶと、返事が対象のport 161からoutgoingで選ばれたportに帰ってくるということ。だから単純にport 161へのoutgoingを許可しただけだと、返事が入ってこないのでNo Responseになってしまう。

で、ふと思い出したのが、これってntpの場合と同じだな。

で、ipfwの設定で以下の設定を追加する。

ipfw add pass udp from ${iip} to any 161 keep-state

keep-stateって指定がいったい何の役に立つのかと思っていたが、ここで役に立つのね。keep-stateを指定しておくとoutgoingしたudpに対する返事が帰ってくることを想定してしばらくの間、firewallに穴を開けておいてくれるわけだ。

で、めでたくsnmpwalkでルーターの設定が取得できるようになった。

あとはMRTGの設定を書くだけか。

NWN Linux Server on FreeBSD

NWNのLinux用サーバーをFreeBSDで動かす。結論から言うと、普通に動く。
まず、BioWareからServer用パッケージの最新版を落とす。その中で必要なファイルは一つだけ。
linuxdedserver166.tar.gz
これ以外のファイルはWindows版の日本語NWNから持ってこないと、サーバーが日本語の言語Signatureにならないので、日本語Clientでプレーできない。
次にサーバーにNWNのデータを格納するフォルダーを作る。NWNのLinuxサーバーはユーザー権限で…

NWNのLinux用サーバーをFreeBSDで動かす。結論から言うと、普通に動く。

まず、BioWareからServer用パッケージの最新版を落とす。その中で必要なファイルは一つだけ。

linuxdedserver166.tar.gz

これ以外のファイルはWindows版の日本語NWNから持ってこないと、サーバーが日本語の言語Signatureにならないので、日本語Clientでプレーできない。

次にサーバーにNWNのデータを格納するフォルダーを作る。NWNのLinuxサーバーはユーザー権限で動かしても構わないので、どんなユーザーでどこに掘っても構わない。

そのフォルダに、Windows版のインストールディレクトリから以下のファイルおよびフォルダを転送する。転送前にWindows版のバージョンをLinuxサーバーのバージョンと合わせて置くこと。

chitin.key
data/*
database/*
dialog.tlk
dialogf.tlk
hak/
modules/
nwm/
nwplayer.ini (Windows版でマルチプレイヤーサーバーの設定をしておくとそのまま使える)
override/
patch.key

以上のファイルを転送したら、最後にこのフォルダにLinuxサーバーのアーカイブの中身を展開する。

次にアーカイブから展開されたfixinstallスクリプトを走らせる。Linux用なので、shellがbashになっているので、bashがインストールされてなければインストールすること。また、スクリプト内の実行shellの指定が/bin/bashになっているが、FreeBSDのportsでインストールすると/usr/local/bin/bashで入るので、これも変更してから実行する。

fixinstallで足りないフォルダ等を見つけると警告してくるので、その場合は適宜Windows版のフォルダから転送すればよい。

全てが終われば、ユーザー権限でnwserverを実行すればそれで終わり。

nwplayer.iniで指定してあるポートでincoming packetが通過するようにファイヤーウォールを設定することを忘れないこと。

このサーバーはstdin/outでコマンドでコントロール出来るので、出来ればconsoleにする端末を別に用意してモニターしてあげるとよい。コマンド解説はServer用パッケージに含まれるreadme.linuxserver.txtを参照のこと。-quietオプションで完全なサーバーになるが、この場合はautosaveしか働かなくなるので注意。

モジュールとハックはそれぞれmodules/とhak/に入れる。ハックはファイル名を変更しないこと。モジュールはファイル指定が面倒になるので、簡単なファイル名に変更した方がよい。