Lambdaカクテル

Common LISPが好きなWeb屋さんです 自宅サーバやフロントエンドもできます

家にIPv6が来た

ようやくネットの工事が完了して、家にフレッツ光ネクストが開通した。

IPoEで接続し、IPv6上でIIJのサイトで計測した速度も100Mbpsルータの限界近くまで出ている。1Gbps出るプランなので、ルータをいいものに換えればまだ上がるだろう。

IPv4IIJmioのサービスでDS-liteを使ってトンネルするつもりだがまだ手続きの事情で開通していないようなので(開通するとメールが来るようだ)、IPv4サイトはこれまで通りの回線で見ることになる。当然遅い。

ユニキャストアドレスが部屋の中の端末に配られていて、今のところグローバルにアクセス可能になっている。あまりセキュアではないので、NATを使って室内とアドレスを分けたい。

今日はこれを自宅のFreeBSDサーバで試そうとしたが、上流のrouter advertisement(RA)によるデフォルトルーティングの設定(rtsold_enable="YES"による)とゲートウェイ機能(ipv6_enable_gateway="YES"による)がうまく噛み合わず、ゲートウェイとして動かしているときはうまく上流にルーティングできず、ゲートウェイを止めると上流に届く、といった状態になってしまった。

それとは別にrtadvdを使ったIPv6アドレスの配布はうまく成功し、クライアントがサーバにルーティングするようにできた。

ひょっとして下流に宛てたRAと上流から来たRAが競合して、上流側のネットワークアダプタを混乱させているのではないかと思う。しかし、rtadvd_interfacesはきちんと指定しており、しかもrtsold_flagsに上流側のアダプタを指定しているので、きちんと通信は分けられているはずだ。

freebsdのルーティング周りに明るくないまま手を出したのが良くなかったかもしれない。とはいえrtadvdが一通り動かせたので知識は得られたと思う。ちゃんとしたゲートウェイを作れるだけのネットワーク知識をつけていきたい。良い機会なので、ルーティングやIPv6について学ぼうと思う。

ちなみに市販のDS-lite対応ルータを買うという手もあって、金を積めば解決する。NVR500とか。

IPoE IPv6+DS-liteとFreeBSDで部屋にユニークローカルアドレスを配るために必要な(と考えている)もの

  • IPv4でもIPv6回線経由で通信できるようにする
    • DS-lite(v4をトンネルする)
    • gifってやつでなんとかなるんだろ?(適当)
  • アドレスを配る
    • rtadvd もしくは dhcpv6を動かす
    • rtadvdではDNSなどの情報を配ることができない
  • NATを行う
    • NAT66をpfで動かす
    • 他にもやり方はありそう

道のり長いな……うわぁ頑張ろう

そういえばpfの他にipfwとかもあったな……

NATとNAPTの違いもよく理解しないといけない。