OpenWrtとフレッツ光ネクスト/クロス v6プラス(MAP-E/固定IPIP6)で繋ぐには

# おことわり

:::note alert
## 本記事は設定例を提示しているものであり、設定内容に関する問い合わせはお答えできません
設定には最低限基本的なTCP/IPの知識、およびOpenWrt(Linux)の知識が必要です。
作業は専門のスペシャリストに依頼するか、OpenWrtコミュニティフォーラムでご質問ください。
当方はいかなる場合でも一切のサポートの保証を致しかねます。
:::


:::note warn
## 本記事は2024年7月18日時点のNTT西日本 フレッツ光クロス及び21ipでの検証結果を元に執筆しています
光コラボやその他のプロバイダの場合、挙動が異なる場合もあります。
当方は本記事に関する情報で発生したいかなる損害も責任を負いません。
問い合わせは各自契約先の事業者へお願い致します。
:::

# 早見表
:::note info
## 👍️次の場合はONU直結で利用出来ます!
- ひかり電話がない(ONUのみ)
- HGW等ONU以外のレンタル機器が無い

### 方法
ONUから直接RJ45(LANケーブル)をOpenWrt機器に繋いで利用できます！
:::
:::note warn
## 🤔次の場合はONU直結で利用出来ません…
- ひかり電話がある
- HGWを使用している
- フレッツ・ジョイントは利用していない

### 方法
ONU→HGW→OpenWrtでつないで利用できます。
ひかり電話が不要であれば解約し、直結とすることも可能です。
:::
:::note alert
## 😭次の場合は使えません！
- HGWを使用している
- フレッツ・ジョイントを利用している

### 方法
一番アカンパターンです。フレッツ・ジョイントで設定配信されている影響でOpenWrtからはどう頑張ってもトンネルを繋げることは出来ません。
我慢してHGWで設定・通信を受けてOpenWrtをDMZとして利用するほかありません。
もしくはHGWを使う理由が無いのであればレンタルを解約してOpenWrt直結で通信しましょう。
:::


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/2ede5857-6e1c-7db5-ba27-b1ac1e5a57e0.png)

# 解説
:::note info
フレッツ光ネクスト/クロスとTransix・Xpass・v6コネクト(DS-Lite/IPIP)の場合は下記サイトを御覧ください。
:::

https://w.atwiki.jp/ddwrt_openwrt/pages/159.html

## v6プラス(MAP-E)のつなぎ方
1. mapパッケージをインストールします。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/eba2743d-cf05-5483-33b3-75137e7f3041.png)

1. [計算ツール](https://ipv4.web.fc2.com/map-e.html)にWANインターフェイスのIPv6アドレスを貼り付け、計算ボタンを押します。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/bd88cccd-fc00-4e57-4143-60eeded174db.png)

1. 画像のように結果が表示されたら、Luciよりインターフェースを作成し、下記のとおりに設定します。
(下記画像では`ブート時に起動`にチェックが入っていませんが、チェックを入れないと起動時に自動接続できません。また、EAビット長、PSIDビット長、PSIDオフセットも実際の出力に合わせて変更してください。)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/b02457f0-f9b8-8d0b-73da-b477db82207f.png)
1. `トンネルリンク`、`従来のMAPを使用`、`IPv6プレフィックスの委任`の設定をします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/6f231f7b-c323-6076-c921-ea9ee21a2f28.png)
1. ファイアウォール設定をします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/0c09fe24-4b0a-a5b2-c335-9b7113d4f264.png)

1. 保存して適用を行い、IPv4通信が出来るようになっていることを確認して下さい
:::note warn
2024年8月6日現在、公式パッケージのMAP-EではNTT系のMAP-EはICMPが返ってこない事象が発生します。
[こちら](https://github.com/fakemanhk/openwrt-jp-ipoe?tab=readme-ov-file#:~:text=also%20IPv4%20PING%20is%20not%20working.)に従って`map.sh`を書き換えるか置き換える事でICMPを処理出来るようになります。
よく分からない場合は下記のワンライナーをご利用下さい。
```bash
cd /lib/netifd/proto && wget https://github.com/fakemanhk/openwrt-jp-ipoe/raw/main/map.sh.new && chmod 755 map.sh.new && mv map.sh.new map.sh && service network restart
```

:::

## v6プラス(IPIP/固定IP)のつなぎ方

1. `luci-proto-ipv6`パッケージをluciで検索し、インストールします
1. `map` `ds-lite` `ip-full`パッケージもついでにインストールします

1. プロバイダから送られてきた接続情報を確認します
下記のようなメールや書面が送られてきていると思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/62e5296b-02d5-2690-90da-6082e244f1ec.png)
ここで重要なのは

    - 払い出された固定IPアドレス
        - IPv4アドレス
    - IPv6プレフィックス
        - 不明な場合はDHCPv6で広報されるPD(Prefix Delegation)
            - 通常は/56が広報される
    - インターフェイスID
        - IPv6サフィックスとも呼ばれます
    - BRアドレス
        - IPv6アドレス

の4つです。
1. 情報を元にインターフェイスを作成していきます

:::note info
ローカルIPv4アドレスにCIDR`/32`の入力は不要です。
:::

### wan4(IPIP6デバイス)の設定内容
#### 一般設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/7f5deede-0934-9d6a-8e3c-760b72b84035.png)

:::note warn
ローカルIPv6アドレスを空白にすると通信ができない原因となります
:::

#### 詳細設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/f17e987d-cfcc-9c06-3d55-4ee4aae114be.png)

:::note info
トンネルリンクはIPv6通信を行うwan6インターフェイスを選択してください
:::

:::note warn
wan4側のIPv6割当ヒントは必ず0にしてください
lan/wan4両方空白にするとlan側が自動的に0、wan4側が1に繰り上がり、IPv6プレフィックスが不一致の為通信できなくなります。
:::

#### ファイアウォール
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/29e07cbd-0983-96bd-04f9-b16cb02b505b.png)

### wan6(DHCPv6デバイス)の設定内容
#### 一般設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/92be55ce-6416-87d7-f774-f7f3cc9bc962.png)

#### 詳細設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/b79ef0a0-baa8-92da-2edb-05fc05ea6008.png)

:::note warn
必ずIPv6割り当て長を`無効`に設定してください
:::

#### ファイアウォール
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3314743/7cf93269-e1ba-d667-43ba-39accae85780.png)

保存して適用を行い、IPv4通信が出来るようになっていることを確認して下さい。