OCN光アクセス(ビジネス)のIPv6サービス

OCN光アクセス(ビジネス)のIPv6サービスが開通したので、いろいろ設定してみたのですが、これが案外面倒でした。法人向けのサービスだけど、多分個人向けもあまりかわらないと思われますので、一応まとめておきます。

ちなみに使用OSはFreeBSD8.1です。

まず、技術仕様は熟読したほうがいいです。ネットでググっても余り役にたちませんのでw (斜め読みだけで頑張ろうとしたのがそもそもの失敗)

http://www.ocn.ne.jp/ipv6/service/pdf/ocnipv6uni_ver1.0.pdf

これによると、pppでトンネル張って、DHCPv6でアドレスを振り出すという作業が必須ぽい。

まず、pppoeの接続IDでつまづきました。何を入力すればいいのか?うーん、おかしいなぁと試行錯誤し、送られてきたよーく紙をみたら、欄外に小さい字で

「@bizf.ocn.ne.jpを@bizf6.ocn.ne.jp」

と置き換えてくださいとかいてやがるの。FAXで字つぶれて読むのに苦労したわー。

最初からでっかくかいてくれ。欄外とか勘弁

次に設定pppの設定。v4とは別にpppをもう一コネクション張る必要があり、かつ、そのリンクアップで dhcpv6cを使ってアドレスを振り出す必要があるようです。

http://ipv6.blog.ocn.ne.jp/ipv6/2006/04/ocn_ipv6_1926.html

にportsがころがってるのでこれを素直にコンパイルするのが早い・・・と思いきや、このままでは動かないので、いくつか対処が必要。この時点では動いたんだろうなぁ・・・・(まぁpppのサンプルスクリプトだけは参考になるけど)

まず /etc/ppp/ppp.conf

pppoe6:

set authname XXXXXX@bizf6.ocn.ne.jp set authkey XXXXXX set device PPPoE:xxxx:pppoe-in enable lqr set cd 5 set dial set login set redial 0 0 set timeout 0 enable echo enable ipv6cp disable ipcp disable deflate disable pred1 disable vjcomp set server /var/run/pppoe6 "" 0177

のように書けばとりあえずOKぽい。ipcpとか deflateを殺しておかないとエラーで止まるようです。



で、/etc/ppp/ppp.linkupに次の設定を書きます。

pppoe6:

add! default HISADDR6 ! /usr/bin/env iface=INTERFACE /bin/sh /etc/ppp/ocnipv6_linkup.sh

接続したあとに起動するscriptである

/etc/ppp/ocnipv6_linkup.sh

ってのは先ほどのportsに入っているのでこれをそのまま使います。中では dhcp6cや rtadvdが起動するようになっています。

これで

# ppp pppoe6

とかやってdialとタイプすると、

ppp -> Ppp -> PPp -> PPP

となり、繋がります。

あとは、これを自動で起動するように /etc/rc.confに書けばおしまい。 v4のリンクも必要でしょうから、次のように書きました。 (v4のリンクの profile名がpppoeです)

ppp_enable="YES" ppp_profile="pppoe pppoe6" ppp_pppoe_nat="YES" ppp_pppoe_mode="ddial" ppp_pppoe_unit="0" ppp_pppoe6_mode="ddial" ppp_pppoe6_unit="1"

ipv6_enable="YES" ipv6_gateway_enable="YES"

注) フレッツ光ネクストを使ってますと、フレッツが全力でIPv6のアドレスを割り振ろうとするので、それを無視する仕組みが必要です。(両方使うのは面倒っぽいのでとりあえずパス) 私はpfで当該IFにくるv6パケットをブロックすることで対処しました。

結構はまるポイントなんで注意が必要です。
Posted by issei

カテゴリ: BSD