スキップしてメイン コンテンツに移動

フレッツ光クロス(コラボ含む)でONU直下にルータを収容する場合とフレッツ光のひかり電話ありとの違いについて

以前のインターネット接続環境は、フレッツ光クロス+OCNバーチャルコネクト(map-e, プロバイダはぷらら)だったのですが、"ONU直下にルータを接続"していたので、WAN側に送られてくるRAにはプレフィックス情報はふくまれていませんでした。
フレッツ光クロスの場合、map-eでも固定IP4でもこれは正常で、"ONU直下にルータを接続"し、プレフィックスを自動で取得する場合はDHCP-PDでdhclientのexit時に環境変数からプレフィックス情報を取得するという算段でした。
今回、フレッツ光クロスコラボ(enひかりクロス)でV6プラスかつ固定IPの環境に変更したのですが、事前に色々としらべたところ、各社の設定ではRAでプレフィクスを取得するような記述がみうけられ、ONU直下でもRAでプレフィックスが下りてくるように思えたのですが、一部明記がなかったため、ONU直下とHGW(ホームゲートウェイ)経由を混同してしまい、結果、接続設定をするときに少し混乱してしまいました。
たとえば、CiscoのIOSにてV6プラスで固定IPを利用する場合、以下のようになっています。
https://community.cisco.com/t5/tkb-cisco-start-ドキュメント/jpne-v6プラス-固定ipサービスへのiosルータ接続-dhcpv6-pd編-ひかり電話を契約している場合 より

### WAN側物理インターフェース設定 ###
interface GigabitEthernet0/5
 no ip address
 duplex auto
 speed auto
 ipv6 address FE80::'ISPより指定されたインタフェイスID(IFID)' link-local
 ipv6 address autoconfig
 ipv6 enable
 ipv6 nd autoconfig default-route
 ipv6 nd ra suppress all
 ipv6 dhcp client information refresh minimum 60
 ipv6 dhcp client pd PREFIX
!

### トンネルインターフェース設定 ###
interface Tunnel0
 ip address ‘固定IPアドレス x.x.x.x’ 'サブネットマスク y.y.y.y'
 ip mtu 1460
 ip nat outside
 ip virtual-reassembly in
 ip tcp adjust-mss 1420
 tunnel source GigabitEthernet0/5
 tunnel mode ipv6
 tunnel destination ‘BRのIPv6アドレス'
!

### LAN側 VLANインターフェース ###
interface Vlan1
 ip address 10.10.10.1 255.255.255.128
 ip nat inside
 ip virtual-reassembly in
 ip tcp adjust-mss 1300
 ipv6 address PREFIX ::1:0:0:0:1/64
 ipv6 enable
 ipv6 nd other-config-flag
 ipv6 dhcp server STATELESS
!
ipv6 address autoconfigはステートレス設定、つまり、RAに基づいてSLAACにて設定されるということですが、ONU直下の場合、前述のようにRAにはプレフィックス情報は含まれていないので、WAN側デバイスであるGigabitEthernet0/5には、ここまでの記述だとIPv6 GUAが割り当てられるようには見えませんが、この設定のまま接続できると思い込み、V6プラスの固定IPの場合、ONU直下からRAでプレフィックス情報が下りてくるように勘違いしてしまった、ということです。
しかしながら、このコンフィグは"ひかり電話あり"のものです。つまり、Home Gatewayを経由するため、RAはPrefix情報を含んだものがHome Gatewayから降りてくるのでこのコンフィグは結局は正しいということになります。
そこで、Ciscoのもう一つの例(IOS-XEの場合)をよく読むとひかり電話ありの場合の構成は、やはり、ONU直下ではなくHome Gateway下に接続すると明記されていました。
https://community.cisco.com/t5/tkb-cisco-start-ドキュメント/jpne-v6プラス-固定ipサービス-への-ios-xeルータ-サンプルコンフィグ-ひかり電話を契約している場合-dhcp/ta-p/4174723 より

(前略)
本設定例では下記を使用しております。
※IOS-XEルータ C1111X-8P
※WAN側に Gi0/0/0、LAN側にSwitchport(Gi0/1/x)を使用。
IOS-XEルータをHGWに接続します。(ひかり電話ホームゲートウェイ)
DHCP-PDによりIPv6 Prefixを取得します。
生成されたIPv6アドレスをSourceにしたIPv4 over IPv6トンネルを構成します。
(中略)
### WAN側物理インターフェース設定 ###
interface GigabitEthernet0/0/0
description 'WAN side'
no ip address
negotiation auto
ipv6 address FE80::(ISPより指定されたインターフェースID) link-local
ipv6 address autoconfig default
ipv6 enable
ipv6 dhcp client pd PREFIX
!
(後略)
結局フレッツ光クロスで"ONU直下"に Cisco ルータを接続し、WAN側インターフェースにCEアドレス(PREFIX:IFID/128)を設定する場合、WAN側インターフェースのコンフィグ例は以下のようになるはずです。
interface TenGigabitEthernet1/1/2
 no ip address
 ipv6 enable
 ipv6 nd autoconfig default-route
 ipv6 nd ra suppress all
 ipv6 dhcp client information refresh minimum 60
 ipv6 dhcp client pd PREFIX
 ipv6 address PREFIX ::インターフェースID/128
!
つまり、ここはdhclientのexitフックでWAN側にPrefix:IFID/128を割り当てるのと同じです。
wan_interface=enp1s0f0
#lan_interface=enp1s0f1
IFID=0001:0203:0400:0000
#IP4=1.2.3.4

if [ -n "$new_ip6_prefix" ]; then
  prefix=`echo $new_ip6_prefix | awk 'BEGIN{FS="/"}{print $1}' | awk 'BEGIN{FS="::"}{print $1}'`
#  plen=`echo $new_ip6_prefix | awk 'BEGIN{FS="/"}{print $2}'`
  plen=128
  ip -6 addr add $prefix:$IFID/$plen dev $wan_interface  
fi
一部のメーカではONU直下あるいはHomeGateway直下と明記している構成例の場合もあったので、確認不足であったのは否めません。
なお、こちらに投稿しているように、当方の環境でのDebianルータは既に構成済で、CEアドレス (PREFIX:IFID/128)を含め/etc/rc.localからスクリプトで一括設定していますが、ONU直下での接続には特に問題は出ていません。ちなみに CEアドレス はWAN側/LAN側のいずれに割り当ててもIPv4/IPv6共に通信できています。
今回は以上です。それでは。

コメント

このブログの人気の投稿

wsdd を使ってSamba サーバをネットワークに表示

Windows 10のアップデートで、セキュリティー対応のため、smbv1がデフォルトではインストールされなくなり、Samba serverがエクスプローラーのネットワークに表示されなくなってしまいました。そこで、いくつか方法を調べたのですが、linuxでwsdの実装がないか探したところ、 https://github.com/christgau/wsdd が、見つかりましたので、さっそくインストールしてみました。まだパッケージにはないようですが、インストール自身は簡単です。wsdd自体は以下のように取得し、linkを張っておきます。 cd /usr/local/bin/ sudo wget https://raw.githubusercontent.com/christgau/wsdd/master/src/wsdd.py sudo chmod 755 wsdd.py sudo ln -sf wsdd.py wsdd こちらのsambaサーバはDebianなので、/etc/systemd/system/wsdd.serviceは以下のようにしました。 [Unit] Description=Web Services Dynamic Discovery host daemon Requires=network-online.target After=network.target network-online.target multi-user.target [Service] Type=simple ExecStart=/usr/local/bin/wsdd -d MYDOMAIN [Install] WantedBy=multi-user.target wsdd -d MYDOMAINのところを、環境にあわせて書き換えてください。 次に、systemdに登録・起動テストを行います。 systemctl enable wsdd systemctl start wsdd 起動に成功すると、エクスプローラーのネットワークに表示されます。  なおこのwsddはpython3が必要です。一度試してみてください。SMBv1/CIFSを停止していても、大丈夫です。 cで書かれたほかのwsddの実装もあるようなので、いずれパッケージになるかもしれませ

Hyper-V Server2019にワークグループ環境下でWindows10(1809)から接続

Hyper-V server 2019に、ワークグループ環境にてWindows10(1809)から接続してみました。Windows10にHyper-V管理ツールがインストールされていることと、Hyper-V Serverをインストール済であることが前提です。以下、Hyper-V serverは名前がHyperVSV、アドレスは192.168.1.110としています。 まず、Hyper-V server上で、powershellを起動し、以下のコマンドを入力します。 Enable-WSManCredSSP -Role Server -Force 続いて、クライアントのWindows10のpowershell で以下のコマンドを入力します。 winrm quickconfig -Force Enable-WSManCredSSP -Role Client -DelegateComputer * -Force さらに、クライアントマシンで、gpedit(グループポリシーエディタ)を起動し、以下の要領でポリシーを設定します。 a. [コンピューターの構成]->[管理テンプレート]->[システム]->[資格情報の委任]->[NTLMのみのサーバー認証で新しい資格情報の委任を許可する] を有効にし、サーバを一覧に追加[表示...]ボタンをクリックして、「WSMAN/*」を追加 b. [コンピューターの構成]->[管理テンプレート]->[システム]->[資格情報の委任]->[NTLM のみのサーバー認証で保存された資格情報の委任を許可する] を有効にし、サーバを一覧に追加[表示...]ボタンをクリックして、「*」を追加 また、名前解決できるように、(notepadを管理者権限で実行し)C:\Windows\System32\Drivers\etc\hostsにサーバ名とIPアドレスの対を追加。 192.168.1.110 HyperVSV 最後に、Hyper-Vマネージャーを起動し、Windows10からHyper-V サーバに接続します。手順は以下の通りです。 「サーバーに接続」->コンピュータの選択->別のコンピューターに[HyperVSV]と入力し、[別のユーザーとして接続する

フレッツ光クロス:MAP-E ROUTER by Debian Box (iptables)

フレッツ光クロスがようやく開通したので、Debianにてrouterを構成し接続してみました。なお、プロバイダーを選ぶにあたっては、IPoE方式がそれぞれ異なるため検討したところ、IPoEでは、MAP-Eでもv6plusとocnバーチャルコネクトがあり、前者がポート数240なのに対し、後者は約4倍のポート数が使えるようなネットの情報をみて、OCNバーチャルコネクトを選択しました。(プロバイダーとしてはぷららです。なおDS-LiteはCE側でのNATではないので今回は見送りました。)そこで、OCN バーチャルコネクトをDebian(iptables)で実現するとどうなるかと思い、ネットの情報を頼りにしつつ、設定した次第です。 実際に試した結果、とりあえず通信できていますが、MAP-Eは本来マッピングルールをマップサーバから取得するはずなので、今回のやり方が正解とはいえませんし、仕様変更されると通信できなくなる可能性があります。あくまでも参考程度ですが、本稿をUPしてみました。 2023/03/16追記: こちら にゲームコンソールNAT越え(Nintendo Switch ナットタイプ A判定)対応版を投稿しました。 2023/03/28追記:※1の記述および3行無効化によりNAT越え(Nintendo Switch ナットタイプ B判定)できるようになりました。 構成は以下の通りです。 ルーターがDebianで回線がOCNバーチャルコネクトであること以外はなにも特別なところはない構成です。 さて、いきなり設定ですが、まず、割り当てられたプレフィックスを確認します。 確認は、 dhclient -6 -d -P enp2s0 とします。出力の中に 前略 RCV: | | X-- IAPREFIX 2400:4050:5c71:af00::/56 後略 このようにプレフィックスが表示されるので、その確認したプレフィックスを書き留めておきます。これを こちらで 入力します。すると、 CE: 2400:4050:5c71:af00:99:f171:c600:2f00 IPv4 アドレス: 153.241.113.198 ポート番号:(1776-1791 2800-2815 3824-3839) 4848-4863 5872-5887 6896-