« routerをSRT100からLinux PCサーバに入れ替えたよ その2 | ホーム | LinuxルータでOCN IPv6設定をやったよ 〜その2 wide-dhcpv6-clientとradvdとその他の巻〜 »

2010年4月10日

LinuxルータでOCN IPv6設定をやったよ 〜その1 xl2tpdの巻〜

で、前回作ったLinuxルータにOCN IPv6の設定を入れてみた。大まかにはこちらの内容を参考にしてなんだけど、debian(lenny)なので微妙に違えています。

http://www.ln-lab.net/lunar-night.lab/page2-memo_ocnipv6/design-white/lang-ja
Memo - OCNIPv6

xl2tpdの設定

まずxl2tpdを動かします。lennyのパッケージそのままだと1.2.0なんだけど、これだとうまくL2TP接続を確立してくれませんでした。というわけでソースパッケージをそのまま持ってきます。

http://www.xelerance.com/software/xl2tpd/
Xelerance - Xelerance: Software: xL2TPD

こちらからどうぞ。一緒にdebビルド用のスクリプトがdebian/ディレクトリ配下に有るのでこれを使う。

$ wget http://www.xelerance.com/software/xl2tpd/xl2tpd-1.2.4.tar.gz
$ tar zxvf xl2tpd-1.2.4.tar.gz
$ cd xl2tpd-1.2.4
$ chmod +x ./debian/rules
$ env PREFIX=/usr dpkg-buildpackage -rfakeroot

ここで環境変数としてPREFIX=/usrにしてdpkg-buildpackage渡す必要があります。そうしないと出来上がったdebパッケージをインストールしたときに/usr/local/sbin/xl2tpdのパスで入れられちゃうんですけども、一緒にインストールされるinitスクリプトが/usr/sbin/xl2tpdにあることを想定して動くので、かなしいことに(´・ω・`)なります。

で、出来上がりがこうなるので、

hironobu@nelly:~/xl2tpd-1.2.4$ ls -l ..
合計 1148
-rw-r--r-- 1 hironobu hironobu    700 2010-04-10 00:46 l2tpd_1.1.11.dfsg.1-2_all.deb
drwxr-xr-x 9 hironobu hironobu   4096 2010-04-10 00:46 xl2tpd-1.2.4
-rw-r--r-- 1 hironobu hironobu 541039 2009-03-09 08:27 xl2tpd-1.2.4.tar.gz
-rw-r--r-- 1 hironobu hironobu    500 2010-04-10 00:46 xl2tpd_1.1.11.dfsg.1-2.dsc
-rw-r--r-- 1 hironobu hironobu 541003 2010-04-10 00:46 xl2tpd_1.1.11.dfsg.1-2.tar.gz
-rw-r--r-- 1 hironobu hironobu   1603 2010-04-10 00:46 xl2tpd_1.1.11.dfsg.1-2_amd64.changes
-rw-r--r-- 1 hironobu hironobu  68346 2010-04-10 00:46 xl2tpd_1.1.11.dfsg.1-2_amd64.deb

xl2tpd_1.1.11.dfsg.1-2_amd64.debをインストールすればよいでござる。バージョンが"1.1.11"になってるのは同debianディレクトリ配下のどこか設定ファイルか何かがあるはずのをいじればいいじゃないかな。(適当)

$ sudo dpkg -i xl2tpd_1.1.11.dfsg.1-2_amd64.deb

インストールは完了。で、設定。

; /etc/xl2tpd/xl2tpd.conf
[lac ocnipv6]
lns = foobar.ocn.ne.jp
hostname = aaa@bbb
ppp debug = yes
pppoptfile = /etc/ppp/peers/ocnipv6
length bit = yes
require chap = yes
refuse pap = yes
require authentication = yes
redial = yes
redial timeout = 10
max redials = 6
# /etc/ppp/peers/ocnipv6
nodefaultroute
noip
+ipv6
usepeerdns
user aaa@bbb
mtu 1390
noipdefault
default-asyncmap
nopcomp
noaccomp
noccp
novj
nobsdcomp
nodeflate
lcp-echo-interval 30
lcp-echo-failure  2
lock
noauth

1つ目はxl2tpd.conf。lnsにはOCNから指定された接続サーバ名を、hostnameにはOCNにPPPoE接続を設定した際のユーザIDをそれぞれ設定する。あとは上に挙げたページからそのまま持って来ています。

2つ目はそのxl2tpd.conf中のpppoptfileオプションを通じて指定される、L2TP上でのppp接続で使われるpppd設定ファイルです。こいつも同じくOCNでのユーザIDを持って来ています。

さらに/etc/xl2tpd/l2tp-secretsにOCNのユーザIDとパスワードを書きます。書式は/etc/ppp/{chap-secrets,pap-secrets}と同じ。

"aaa@bbb" * "ccc"

ここで一度xl2tpdを再起動しておきます。

Apr 11 00:23:41 gw xl2tpd[2606]: setsockopt recvref[22]: Protocol not available
Apr 11 00:23:41 gw xl2tpd[2606]: This binary does not support kernel L2TP.
Apr 11 00:23:41 gw xl2tpd[2607]: xl2tpd version xl2tpd-1.2.4 started on nelly PID:2607
Apr 11 00:23:41 gw xl2tpd[2607]: Written by Mark Spencer, Copyright (C) 1998, Adtran, Inc.
Apr 11 00:23:41 gw xl2tpd[2607]: Forked by Scott Balmos and David Stipp, (C) 2001
Apr 11 00:23:41 gw xl2tpd[2607]: Inherited by Jeff McAdams, (C) 2002
Apr 11 00:23:41 gw xl2tpd[2607]: Forked again by Xelerance (www.xelerance.com) (C) 2006
Apr 11 00:23:41 gw xl2tpd[2607]: Listening on IP address 0.0.0.0, port 1701

こんな感じに出ますのでね。続いてxl2tpdを操作してL2TP接続を開始させます。

# echo "c ocnipv6" > /var/run/xl2tpd/l2tp-control

でこんなログが出るはず。

Apr 11 00:23:41 gw xl2tpd[2607]: Connecting to host foobar.ocn.ne.jp, port 1701
Apr 11 00:23:41 gw xl2tpd[2607]: Connection established to x.x.x.x, 1701.  Local: 36525, Remote: 60956 (ref=0/0).
Apr 11 00:23:41 gw xl2tpd[2607]: Calling on tunnel 36525
Apr 11 00:23:41 gw xl2tpd[2607]: Call established with x.x.x.x, Local: 26379, Remote: 27351, Serial: 1 (ref=0/0)
Apr 11 00:23:41 gw xl2tpd[2607]: start_pppd: I'm running: 
Apr 11 00:23:41 gw xl2tpd[2607]: "/usr/sbin/pppd" 
...
Apr 11 00:23:41 gw pppd[2617]: pppd 2.4.4 started by root, uid 0
...
Apr 11 00:23:41 gw pppd[2617]: CHAP authentication succeeded
Apr 11 00:23:41 gw pppd[2617]: CHAP authentication succeeded
Apr 11 00:23:41 gw pppd[2617]: sent [IPV6CP ConfReq id=0x1 ]
Apr 11 00:23:41 gw pppd[2617]: rcvd [IPV6CP ConfReq id=0x1 ]
Apr 11 00:23:41 gw pppd[2617]: sent [IPV6CP ConfAck id=0x1 ]
Apr 11 00:23:41 gw pppd[2617]: rcvd [IPV6CP ConfAck id=0x1 ]
Apr 11 00:23:41 gw pppd[2617]: local  LL address fe80::xxxx:xxxx:xxxx:xxxx
Apr 11 00:23:41 gw pppd[2617]: remote LL address fe80::yyyy:yyyy:yyyy:yyyy
Apr 11 00:23:41 gw pppd[2617]: Script /etc/ppp/ipv6-up started (pid 2648)

で最終的に接続が完了すれば、ifconfigで下のようなpppxインタフェイスが出現します。

ppp2      Link encap:Point-to-Point Protocol  
          inet6 addr: fe80::xxxx:xxxx:xxxx:xxxx/10 Scope:Link
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1390  Metric:1
          RX packets:481 errors:0 dropped:0 overruns:0 frame:0
          TX packets:297 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:163773 (159.9 KiB)  TX bytes:32095 (31.3 KiB)

ここまでで結構長くなったので一旦終わり。次はwide-dhcpv6cの設定に行きます。

トラックバック(0)

トラックバックURL: http://foursics.jp/cgi-bin/mt/mt-tb.cgi/288

コメントする

OpenID対応しています OpenIDについて

このブログ記事について

このページは、Hironobu Kouraが2010年4月10日 20:59に書いたブログ記事です。

ひとつ前のブログ記事は「routerをSRT100からLinux PCサーバに入れ替えたよ その2」です。

次のブログ記事は「LinuxルータでOCN IPv6設定をやったよ 〜その2 wide-dhcpv6-clientとradvdとその他の巻〜」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。