BSD

FreeBSDで L2TP + IPSEC その2

トンネルが張れたので次ぎにIPSEC。

IPSECを使うのは初めて。

単純に暗号の鍵を設定してやりゃ出来ると思ってたんですが、どうもカーネルの再構築が 必要ならしい。うーん。setkeyとか設定するプログラムは標準であるのに、なんで カーネル再構築いるんだろう・・・

でFreeBSDでIPSECと検索しても例によって古いバージョンしか出てこないので、 ここは楽をすることをアキラメ本家のハンドブックを熟読。

options         IPSEC
options         IPSEC_FILTERTUNNEL
options         IPSEC_DEBUG
device          crypto


無事東京サイドのカーネルの再構築は終わりました。

で、同じ設定で青森サイドのカーネル構築をしようと思ったらコンパイルエラーに。 なんでやねん?と30秒ほど悩みよく見てみると、青森サイドはFreeBSD6.2だったことが判明。 カーネルのオプションが違うと予想。

こっちも7.0にあげればいいんだろうけど、流石にリモートでOSのバージョンをあげるのは怖いので、ドキュメントをあちこち探しまくり次のオプションでコンパイル。

options         IPSEC
options         IPSEC_ESP
options         IPSEC_DEBUG
options         IPSEC_FILTERGIF
device          crypto


これで問題無く動くっぽい。 オプションが全部必要なのかどうかは検証してないけど、とりあえずこれで動く模様。

続く。
Posted by issei

Category : BSD

FreeBSDで L2TP + IPSEC

弊社は青森と東京にグローバルアドレスを8個づつ持っていて、 サーバも双方においてたりするんですが、これを青森にまとめておいて 東京のオフィスをすっきりさせたいなというのが最近の課題。

また最近仮想化を着々と進めており、双方いプライベートアドレスな仮想PCも増えたこともあり、これを機会に、男がすなるVPNもしてみむとてするなり。ということにしました。

実際のところ、ほとんどSSHで済んでしまうので、VPNなどいらないような気もしますが、何事も経験。

でターゲットですが、弊社はほとんどがFreeBSDサーバなので、さくっと流行のmpdでトンネルを張ろうと四苦八苦。トンネルはPPTPが主流みたいだけど、あえてL2TPにしました。深い理由はありませぬ。

まずネットワークの構成。

青森側

グローバルアドレスのIPが8個 プライベートアドレスとして192.168.16.0/24と 10.1.16.0/24の2つ。 これらは同じHUB群に混在

東京側

グローバルアドレスのIPが8個 プライベートアドレスとして192.168.253.0/24, 192.168.254.0/24 これらは192.168.253系列とグローバル&192.168.254系列は別々のHUB群に存在。

なんでそんなに複雑なのか?といわれそうですが、まぁ歴史的にそうなっちゃったんで、しかたありません。(笑)

で、簡単に出来るだろうとタカをくくってたのですが、 これがおおはまり。グーグル先生に聞いてみても、世の中にあるVPNの使いかというのは自宅や会社のネットワークにPPTPで(1端末が)接続するというもので、双方のプライベートネットワーク間にトンネルを張るというのはほとんどない。(また確かにに個人の趣味レベルでは余り実用性なさげですしね)

というわけで、マニュアルを熟読して自力で設定す。 まず別アドレスをL2TPでトンネルを張り合うマシンに設定しておきます。

青森側

default:
        load l2tp_lns



l2tp_lns: create bundle static B1 set ipcp ranges 192.168.16.111/32 192.168.254.111/32 set iface route 192.168.254.0/24 set iface route 192.168.253.0/24

create link static L2 l2tp set link action bundle B1 set l2tp self *.*.147.37 set l2tp peer *.*.221.244 set link enable incoming


東京側
default:
        load l2tp_lns



l2tp_lns: create bundle static B1 set ipcp ranges 192.168.254.111/32 192.168.16.111/32 set iface route 192.168.16.0/24 set iface route 10.1.16.0/24

create link static L2 l2tp set link action bundle B1 set link max-redial 0 set l2tp self *.*.221.244 set l2tp peer *.*.147.37 open


これでトンネルは成功。(l2tp selfと l2tp peerのIPはふせました) pingなどを飛ばすとちゃんと行きます。

次に双方のネットワークのプライベートアドレスにちゃんとパケットが届くように default routeで飛ぶ先のルータで

青森側
route add 192.168.253.0/24 192.168.16.37
route add 192.168.254.0/24 192.168.16.37


東京側
route add 192.168.16.0/24 192.168.254.244
route add 192.168.16.0/24 192.168.254.244


もちろんトンネル張るマシンには192.168.16.37と192.168.254.244の別アドレスを振っておくのを忘れずに。



東京は引越しと同時にIPv6などひいていて(もっとも役にたったのは、亀が動くのが見れたことと、2chのIPv6板に書き込みができたことくらいか?)V6のトンネルなどは何度かやってたのですが、v4でやるのは初めての経験だった。また仕事の役に立たない知識が増えたかなぁ~

しかし、ググると未だにFreeBSD4.4の話とかが上位に出てくるのなんとかならないかなぁ。

続く
Posted by issei

Category : BSD

FreeBSD 7.0その後

インストールは呆れるくらい簡単に終了。 むしろその後おなじ環境にするのに四苦八苦ですが。

xorgがどんな頑張っても800x600にしかならない・・

実家のPCはいまどき珍しい1024x768なのよ。 結局1時間くらい悩んで、手動で Hsync, Vsyncを入力してなんとか解決。

xemacsのフォント設定が・・・

こちらも1時間くらいなやんで設定。 前回とおなじ設定でうまくいかないのは、もはやお約束か・・ 微妙に違う環境設定が、会社、東京の自宅、実家と三箇所に存在することに。

それ以外は順調かなぁ。とりあえずwlでメール読めるようになったから、次は svnかのう。
Posted by issei

Category : BSD

FreeBSD 7.0

青森の作業マシンのRailsのバージョンを上げようとしたら、例によってdependency地獄に陥ったので、これを機会に7.0にすることにしました。

というわけで只今インストール中。
Posted by issei

Category : BSD

make world

new マシンのkernelを最新のにしようと、cvsupでSTABLEもってきて、

make installkernl

起動せず。orz

6.2で5.5をコンパイルしてたことが発覚。そりゃカーネルは起動するがもろもろ影響でるのは当たり前や。

他のマシンからまんまコピーしてきたので、RELENG_5でcvsupしとった。ハハハハハ

10分ほど悪あがきをしてみたけど、どうやっても古いカーネルが起動してくれないので、再インストール決定。

やはり「ながら」で作業するとダメですな。
Posted by issei

Category : BSD

いまさらMini ITXでFreeBSD

CPUファンと電源ファンがないマシンが欲しい!!ということで、EPIA-LN10000EG というMini ITXのMBを購入。

目的はFreeBSDを入れてほげほげすることなんでCPUパワーはどうでもいいので、これくらいのスペックでも十分なのです。

あっさり動くでしょ・・と思いましたがいろいろはまりました。

まずは、買ったケースの電源ケーブルが短すぎてとどかねえ~

しょうがないので延長ケーブルを買いに奔走。ホント事務所がアキバでよかった。TZONEにて購入。しかし、タダですら小さいケースに延長ケーブルを入れたものだから取り回しがきつく・・・

ま、しょうがないすね。

次にこのケースはCDをつけるところがないので、インストール時のみCDドライブをつないで起動。しかし、4pinの電源コネクタが足りないではないか!!ということで二股の分岐ケーブルを購入に奔走。ホント事務所がアキバでよかった。マルツ電波で購入。しかしタダですら小さいケースに分岐ケーブルを入れたものだから取り回しがきつく・・・

で、起動してみたところどうもCDドライブがいかれているらしく嫌な音が・・・しょうがないので、別のドライブをつないで起動。OK問題ない。

しかしFreeBSDのインストールを始めたところATAディスクのDMAのCRCがエラーとかほざきます。試行錯誤の結果DMAを切ってPIOにすればよい模様。

しかしいまどきPIOは寂しすぎる・・

待てよ?SATAならうまくいくんじゃないか?

というわけで、SATAの2.5inchディスクを購入に奔走。ホント事務所がアキバでよかった。クレバリーで購入。

しかしSATAのケーブルがない。ついでに電源も。

また奔走しようかと思ったけど、どこかにあったような気がするので、ケーブル箱をひっくり返してなんとか発見。

起動してみたらちゃんとインストールできたーーー

これからはSATAだな。

ま、しかし、普通のケース用のケーブルなんで取り回しは全然楽になってないんですけどね。

その後なんとか押し込めてふたをして完成させた次第。
Posted by issei

Category : BSD

COPYをする

自宅のBSDのHDの大部分を占めるTVを録画した動画(しかもDV形式)をいい加減別のHDに退避させることに。

で、ケースを開けたりするのが面倒なんで、とりあえず目の前にあったUSB外付けDISKにコピーしましょということになったわけですが、これがいろいろと問題の種でして。

1)
どうせなら、Windowsで見れるほうがいいかなーということで、普通にNTFSでフォーマットしてBSDに接続してmount。

だが、ボリュームに書き込めないw
BSDではNTFSに書き込めないのね。してやられた。

2)
ならばFAT32でと思ったけど、VISTAではFAT32でフォーマットを選べない。FAT32でフォーマットするには専用ツールがいるっぽい。してやられた。しかも、FAT32のファイルのサイズの上限4Gというじゃない。そもそも6Gのファイルとかがあるので、FAT32は消えた~。

3)
WindowsにHDDを接続し、samba経由でコピー。コピーに要する時間は8時間。とりあずコピーが終わるけど4Gを超えたファイルがちゃんとコピーされたかどうか不安なので、BSDで再mountしてcmpで比較。しかしBSDからNTFSへのアクセスが遅せEEEEEEEEEEEEEEE。USBドライバの問題なのかNTFSドライバの問題なのか・・・そこまで調査する気力なし。

4)
ひょっとしてreadonlyで明示的にmountすれば早いのではないか?と思い立ち、実行。お!はやいやん。さっそくcmpを実行。見事に2Gバイト目でデータが違うと言われたwww

データが異なってるのか、cmpのバグなのか・・・調査する気力が(ry

5)
NTFSは駄目だなwということで、BSDでnewfsして単純にufsでフォーマットすることに。これならはやいっしょと、mountしてtarでおもむろにコピー開始。

しかし終わらNEEEEEEEEE!!!

というかsamba経由より遅いよ。やっぱUSBの問題かなぁ??
ということで12時間以上がんばったけど終わらないので挫折。さてどうしたものか。

6)
目の前にMacがあったのでMacにつないで、tarでコピーしたらすべて幸せなんじゃないか?ということで、HFSでフォーマットして再度tarでネットワーク経由でコピー開始。

いや、これはイイ!!。md5でチェックサムも計算して一致を確認。最初っからこうすりゃよかった。

そんなこんなでここんとこ家のPCぶん回しっぱなしです。

大容量HD・大きなサイズのファイルは何年たっても鬼門ですね~
Posted by issei

Category : BSD

portsぢごく

終わってみればインストール済みのportsが480から600くらいに増え?依存関係もがんばって修復してさてXを起動すべぇ・・とxinitとタイプしてみたところ起動しないという。

わはははは。

これはまっさらにして再インストールか?と思いましたが、すこし悪あがきをしてみることに。

エラーをみると、

Failed to load module "ati"

ようするに、

atiのモジュールがない・・

ということ。さらに、追うと

mouseのモジュールがない・・
keyboardのモジュールがない・・

んー。そんな基本的なモジュールがなぜないんだ・・・と思ってみてみたら、/usr/ports/x11-driversなんてディレクトリがあって、いっぱいモジュールらしきものがが入っているじゃない・・

というわけで、怪しそうなのをmakeしてinstallしてなんとか起動することができました。

ディレクトリ構成が激しくかわったので、そいつについてはupgradeしてくれないんだろうな。まぁそりゃそうか。
Posted by issei

Category : BSD

firefoxがコンパイルできん

仕事で使用しているFreeBSDのportsがぐちゃぐちゃしてきたので整理してたらfirefoxが動かなくなりました。

なもんで再コンパイル。

しかし、PRAddrInfoが定義されてないとか抜かしてエラーでとまってしまいます。

調べてみると、PRAddrInfoはFirefoxのソース内にない模様。ということはどっかで定義されてるはずなんですが /usr/local/include や/usr/includeにはない模様。

つーことはどっかのportsに入っているわけですが・・最近追加されたんでしょうかねぇ?

ということで、最近まっさらの状態からportsをいれまくってFreeBSDで検索してみると確かに/usr/local/include内で定義されているヘッダファイルを発見。

やはり予想通り何かのportsに入っていたようです。

そこで、/var/db/pkg 以下あたりをgrepしてみると nsprというモジュールにはいっているぽいことが発覚。nsprのバージョンをportupgradeであげたらコンパイルが無事続行しました。

よかったよかった。
Posted by issei

Category : BSD

wlが遅い

どうにも遅い。

どれくらい遅いかというと、自宅から会社のサーバにあるメールすら読めない始末。

とはいえ特に設定は変えてないのだが・・・・

といろいろツールを駆使して調べてみたところ、どうもgreが遅いらしい。

これは自宅にグローバルIPがやってきたので嬉しくてgreでトンネルを張ったんですが、これがなんかよくないらしい。

というわけで、greをはずしたら普通に快適になりました。

どこに根本的な問題があるのかわかりませんが、とりあえず解決したからこれはこれでヨシ
Posted by issei

Category : BSD