概要
機会があり、HomeNOCさんに接続させて頂きました。備忘録です。
こちらの手法は上手く行っておらず、まだ検証が続いています。
一応、動作が確認された方法は このページ(【回線】NEC+CiscoルータでHomeNOCに接続する) に載っています。
恐らくこのページの方法でもルータを2台に分ければ上手くいくのではないかと思いますが、詳細な要因は今のところ不明です。
※2023.05.23追記
原因は接続対向ルータのソフトウェア不具合だったようです。クリティカルケースを踏み抜いてしまったらしいです
こちらのブログ(アーカイブ)さんでは、同じく Cisco 891FJ/K9 ルータを使う方法でBGP over GREを確立されていました。
手順
① HomeNOCさんのホームページでやること
② NTTさんにお願いすること
③ Ciscoのルータでやること
の3種類があります。
① HomeNOCホームページでやること
まずはホームページをよく読みます。
次に、ダッシュボードにアクセスし、必要事項を記入。
IPv4アドレスのサブネットマスクですが、サーバ用途なら/30を選択すると良いでしょう。1つはゲートウェイ、1つはブロードキャストのため、2つがグローバルIPとして使えます。どれを選べば良いか困ったらSlackなりメールなりで質問してみましょう。
接続方式及び回線種別はL3接続(BGP)、トンネル(GRE)を選択するのが無難です。
ちなみに「接続情報の追加」で図1のようにエラーが出るのはシステムの不具合とのことです。同じ事象に遭遇した人は運営委員さんにメール(support@homenoc.ad.jp)で問い合わせてください。
[400] error: invalid ipv4 route template
OK
補足:接続方式および回線種別について
HomeNOCさんのホームページを見ると、あたかも知っていて当たり前かのようにStatic Routing/BGP接続、GRE/IPIPトンネルなどという用語が並んでいますが、少し前提知識が必要なので補足です。
・rarafyの技術ブログ|【回線】Static Routing/BGP接続、GRE/IPIPトンネルの違い
② NTTにお願いすること
webでの申請が最終段階(接続情報の追加)に進み、IPv6アドレスを記入する段になったらフレッツ光を引きます。
無償のIPv6オプションは必ず付けてもらってください。ちなみに小型ONUも無償オプションです。対応したルータで小型ONUをどうしても使いたいと伝えたところOKが出ました。
私の家では「フレッツ光ネクスト マンション・ギガラインタイプ」を引きました。
マンションに導入されていたインターネット環境がVDSL方式だったため、光配線方式に変更するところから手続しました。2022年1月末に手続を始めて開通したのは4月15日です。回線工事には延べ4ヶ月を要し、体感ではVDSL→光配線の切替えにおおよそ2ヶ月、スプリッタ→部屋への工事に1ヶ月かかりました。
③Ciscoのルータでやること
Cisco 891FJ-K9を1台買いました。まずは小型ONUをSFPポートに挿します。図3のように挿しました。インターフェイスは Gigabit Ethernet 8 です。
左側面が光る本小型ONUは、モデル名にMと入っているので三菱製ということが分かります。
さて、小型ONUを挿してランプが点いたら、コンソールケーブルを挿してルータのセットアップを行います。
※ちなみに本体を初期化せず立ち上げたらユーザ名がkashiwazaki_kariwa_xxx でした。Cisco製品はそんな所でも使われているのですね。
参考:
・BLUECORE.NET|[Network] Home NOC Operators Groupに接続をした。
・Adminモード→コンソールの設定
まずは本体設定です。システムメッセージ割込みを自動改行するようにし、出力されるメッセージを最後まで表示するよう設定し、タイムアウトは30分に延長します。
Router> en
Router# term len 0
Router# conf t
Router(config)# line cons 0
Router(config-line)# logg sync
Router(config-line)# exec-timeout 30 0
Router(config-line)# exit
・時刻
Router(config)# clock timezone JST 9
Router(config)# exit
Router# clock set 18:00:00 15 April 2022
Router# wr mem
・ポート有効化
ポートの状態を確認します。
Router# show ip int brie
“administratively down” となっているポートがあります(図4)。
“FastEthernet0″(100MbpsのLAN)と “BRI0″(ISDN回線≒アナログ電話と同じ2線式メタル回線) は多分使わないので、それ以外の “GigabitEthernet8” を有効化します。SFPモジュールも使えるようにします。
Router# conf t
Router(config)# int gi 8
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# !service unsupported-transceiver
・NTT東日本から割当られたIPv6アドレスの確認
IPv6アドレスを確認するため、以下のコマンドを打込みます。
Router(config)# ip cef
Router(config)# ipv6 unicast-routing
Router(config)# ipv6 cef
Router(config)# ipv6 dhcp pool STATELESS
Router(config-dhcpv6)# import dns-server
Router(config-dhcpv6)# import domain-name
Router(config-dhcpv6)# exit
Router(config)# int gi 8
Router(config-if)# no ip address
Router(config-if)# ipv6 address autoconfig default
Router(config-if)# ipv6 enable
Router(config-if)# ipv6 nd ra suppress all
Router(config-if)# end
Router# show ipv6 interface
※ “ipv6 nd ra suppress all” は、コンフリクトエラーへの対応です。”conflicting ND setting reachable time” というのは、link-local に RA を吐いている (競合している) ルータが居ることを意味し、Gi8に対して(こちらから)RAを吐く必要は無いので、上記コマンドでRAを抑制します。
Apr 24 10:55:28.075: %IPV6_ND-3-CONFLICT: Router FE80::225:84FF:FE99:19C6 on GigabitEthernet8 conflicting ND setting reachable time 300000
すると、図5のようにNTTから割り当てられたIPv6アドレスが確認できます。この場合は “2408:213:86A3:B900:DAB1:90FF:FE18:3D96/64” ですね。この数値はHomeNOCの「接続情報を追加」の段階でWebから入力します。
参考:
・ Cisco|IPv6 インターネット接続設定例(IPv6oE方式)
・ ネットワークエンジニアとして|IPv6 – ipv6 unicast-routing / ipv6 address
・OPEN IPv6 DDNS for NGN|Ciscoルータでの使用方法
・接続情報の確認
接続情報を確認します。
・GREトンネルの確立
この時点でトンネル先にpingが到達することを確認しておきましょう(図7)。
次に、GREトンネルを確立します。サブネットマスクの変換には図8を使ってください。
Router# configure terminal
Router(config)# interface tunnel 0
Router(config-if)# ip address 103.247.181.167 255.255.255.254
Router(config-if)# tunnel source 2408:213:86A3:B900:726D:15FF:FEBF:791E
Router(config-if)# tunnel destination 2405:6580:9a30:1600::1111
Router(config-if)# tunnel mode gre ipv6
Router(config-if)# end
この段階でGREトンネルが確立されることを確認します。
参考:
・Cisco|インターフェイスおよびハードウェア コンポーネント コンフィギュレーション ガイド、Cisco IOS XE Release 3S | GRE IPv6 トンネル
・島根データセンター友の会|[Config設定例] Ciscoルーターを用いて、上流拠点とGREを用いてピアを張る場合
・BGP接続
Router# configure terminal
Router(config)# router bgp 65041
Router(config-router)# neighbor 103.247.181.166 remote-as 59105
Router(config-router)# address-family ipv4
Router(config-router-af)# neighbor 103.247.181.166 activate
Router(config-router-af)# network 103.202.216.68 mask 255.255.255.252
Router(config-router-af)# end
参考:
・Cisco|BGP ケース スタディ
・ネットワークエンジニアとして|MP-BGP
・DNSの設定
Router# configure terminal
Router(config)# no ip domain-lookup
Router(config)# ip name-server 8.8.8.8 8.8.4.4
Router(config)# ip name-server 2404:1A8:7F01:A::3 2404:1A8:7F01:B::3
Router(config)# ip name-server 2001:4860:4860::8888 2001:4860:4860::8844
・IPアドレスの設定(LAN側)
まずVLANの状況を確認します。
Router# show vlan-switch
↓アウトプット
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Gi0, Gi1, Gi2, Gi3, Gi4, Gi5
Gi6, Gi7
10 VLAN0010 active
20 VLAN0020 active
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
1 enet 100001 1500 - - - - - 1002 1003
10 enet 100010 1500 - - - - - 0 0
20 enet 100020 1500 - - - - - 0 0
1002 fddi 101002 1500 - - - - - 1 1003
1003 tr 101003 1500 1005 0 - - srb 1 1002
1004 fdnet 101004 1500 - - 1 ibm - 0 0
1005 trnet 101005 1500 - - 1 ibm - 0 0
VLAN2をGi 0とします。VLAN1はGi1-7です。
Router# conf t
Router(config)# vlan 2
Router(config-vlan)# exit
Router(config)# int Gi 0
Router(config-if)# switchport mode access
Router(config-if)# switchport access vlan 2
Router(config-if)# exit
Router(config)# int range gi 1 - 7
Router(config-if-range)# swit mode acc
Router(config-if-range)# swit acc vlan 1
Router(config-if-range)# end
VLANの状態を確認します(図10)。
VLAN2(ルータ)にはグローバルIPアドレス103.202.216.69/30を割り当てます。
Router# conf t
Router(config)# int vlan 2
Router(config-if)# ip address 103.202.216.69 255.255.255.252
Router(config-if)# exit
IPアドレス設定で “bad mask /30 for address” と出てしまった場合は有効なサブネットマスクを適用し直します。図11参考。
・DHCPの設定(LAN側)
192.168.102.2-192.168.102.30をDHCPで配布するアドレスから除外します。DHCPプールの名前は適当に”sales”とでもします。
Router(config)# service dhcp
Router(config)# ip dhcp excluded-address 192.168.102.2 192.168.102.30
Router(config)# ip dhcp pool sales
Router(dhcp-config)# network 192.168.102.0 255.255.255.0
Router(dhcp-config)# dns-server 8.8.8.8 8.8.4.4
Router(dhcp-config)# default-router 192.168.102.1
Router(dhcp-config)# lease 0 2
Router(dhcp-config)# exit
・NATの設定(WAN⇔LAN)
VLAN3グループに対してNAT(PAT)を適用します。最後のDNSサーバの設定が必要かは分かりません(要らないかもしれません)。
Router(config)# access-list 1 permit 192.168.102.0 0.0.0.255
Router(config)# ip nat inside source list 1 int tu 0 overload
Router(config)# int tu 0
Router(config-if)# ip nat outside
Router(config-if)# exit
Router(config)# int vlan3
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# ip dns server
これでLAN側に繋いだPCからでもインターネットへの接続が確認できるはず……
・パケットキャプチャ
参考:
・ITBOOK|EPC (Embedded Packet Capture)
・IOSアップデート
参考:
・ワイズリマインダー|Cisco 841M J ルータのIOSをアップデートしてみた
・雑録的ノート|CiscoのIOSバージョンアップにはUSBメモリを使おう
1件のコメント