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

カテゴリ: BSD

コメント一覧

ダブルNATは厄介だねぇ。早くIPv6使える環境に移行したい。 サーバ類は、地震雷火事親父?対策で、地理的に分散してた方が良いかと。 ググる先生は、Linuxには優しいけど、*BSDには冷たいねぇ。被リンク率でランキング されるので、古過ぎる情報が上位に来てしまう。こないだもビデオキャプチャの話題をググったら、 FreeBSD2.x時代のページがズラズラ出てきて萎えた。 IBM SmartCaptureのドライバが絶版に成った今、ノートPCでアナログキャプチャするには どうすれバインダー!?
kaz

バックアップは双方なのでそのあたりは完璧・・なはずっす。 V6は東京(ADSL)で契約してるので、青森からも以前はトンネルを張ってたんですが、そうするとAAAAがあるやつは全部東京(ADSL)経由になっちゃうことがあって辞めたりw V6なんて実験くらいにしか使ってなかったので、設定したことすら忘れてたのも事実ですが。csupが遅いなぁ~と思ってたらV6で接続してて気がつきました。 ちうか早めに気づかないとね。
Isami