http://www.commufa.jp/support/former/howto/download/pdf/c_03_net.pdf
http://www.aterm.jp/bb-support/832a/part_ct.html
http://jpn.nec.com/press/201404/20140410_01.html
http:aterm-wh382a.pdf
富士アクセス == 富士通
らしい
この ONU は FUJITSU Network FA2132 GE-PON ONU らしい
http://jp.fujitsu.com/telecom/carrier/products/lineup/a-gepon/spec_2132.html
http:fa2232_ge-pon.pdf
ルーターが他にあった場合には、そのルーターをブリッジモードにするのが良い。そうすればシングルセグメントになる。家庭環境でシングルセグメントにしない理由は無い。ネットワークの論理構成がシンプルになり、設定もまたシンプルになる。シングルセグメントがいろいろな理由で一番使いやすい。
情報 → 現在の状態 → 接続状態 → IPv6接続状態
IPv6インターネット未接続(IPv6CPタイムアウト)
恥を忍んでコミュファに電話で相談。30年以上もコンピュータを使っているが、分からなくて他人に聞いたのは初めてである。
ルーターのリモート診断機能を ON にして、診断してもらったが、僕が自分で「接続先の設定」を設定したのが悪かったらしい。ここは空欄にしてルーターをリセットすると、自動的に設定されるとの説明である。(マニュアルにはこんなことは書かれていなかったぞ)
僕が「ホーム1Gセレクト」からの切り替えでなかったなら、この問題に気付いたであろう。しかし、僕の場合には、この欄には Biglobe への接続情報が書かれていたのである。だから書き換えるのは(心情として)当然である。
なお、個々の端末レベル(例えば Macbook)で IPv6 が働いていない現象があったが、これは端末のバグの可能性が高い。筆者の場合リブートで解決した。
なお、この図の接続先設定はインターネット接続にコミュファではない ISP を使っている場合に設定する。その仕組みは PPPoE による。(そのために、ルーターによっては PPPoE と書かれている)
他方では Aterm WH382A には
詳細設定 → その他の設定 → PPPoEブリッジ
情報 → 現在の状態 → PPPoEブリッジ使用状態
ここでの PPPoE ブリッジとは、ルータの NAT 機能を使わないで、直接 WAN 側のアドレスで通信する機能らしい。 「PPPoE 対応のゲーム機を接続できます」とある。
ルーターの「現在の状態」の意味は、現在PPPoEブリッジを利用している端末の有無を示しているらしい。接続はクライアント側から行う。「PPPoEブリッジを使用する」は端末に PPPoE ブリッジの使用を許す意味らしい。詳しくは次の URL を見れば分かる。
DMZ ホストには公開するサーバーを指定する。IPv4 パケットフィルターでは、DMZ ホストにパケットが届くように設定する。
DMZ ホストは通常は家庭内の他のコンピュータと異なるサブネットに置く。その場合は DMZ ホストから家庭内の他のコンピュータにはアクセスできない。DMZ ホストが陥落して、ボット化した場合にも、他のコンピュータへの影響を最小限に留めるためである。
筆者の場合には使いやすさと設定のシンプルさを優先して、DMZ ホストに特別なサブネットを割り当てていない。サブネットを割り当てると仮想的なマルチセグメントとなる。どこまでもシングルセグメント主義である。(他にも多数のサーバーが動いているからね~~)
DMZホストは1つしか指定できないことに注意しよう。複数指定できた方が便利なこともあるのにね。
そのためにポートマッピングのお世話になることになる。
DMZホストは1つしか指定できないので、複数のホストをネットに公開したい場合にはポートマッピングでホストを追加する。
Aterm WH382A の IPv4 ポートマッピングは非常にわかりにくい。
DMZホストの時と同様にパケットフィルタと組み合わせて使う。(つまりポートをマップしただけではパケットを通さないので注意が必要である)
ポートマップを可能にする場所が 3 箇所に分散している。
詳細設定 → その他の設定 → DMZホスト機能
意図通りの動作が得られない場合には、この4箇所をチェックしなくてはならない。
(ここら辺の関係がマニュアルにもネットの中にも見つからない。)
この様に複雑な(ややこしい)やり方を採った理由は理解しにくい。
筆者の場合、次図の設定で意図した結果になっている。
IPv6 パケットフィルターの設定例
これで、TCPポート80とTCPポート443以外はブロックされている。
LAN 側のパケットフィルターがなぜ必要なのか筆者には理解できない。
https://www.compnet.jp/archives/3215
ここで指摘されている問題は Aterm WH382A に関しては存在しない。
筆者は自前の DNS を運用している。理由は、LAN 内のホストへ名前でアクセスしたいからだ。
そして不思議な現象に出会った。
時々、DNS の応答が極端に遅くなるのだ。
dig でホスト hebe.local の IPv6 アドレスを調べる時の正常な結果は
-bash$ dig hebe.local aaaa ; <<>> DiG 9.8.3-P1 <<>> hebe.local aaaa ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12782 ;; flags: qr aa ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;hebe.local. IN AAAA ;; ANSWER SECTION: hebe.local. 3600 IN AAAA 2402:6b00:22cd:bf80::6 ;; Query time: 7 msec ;; SERVER: 192.168.0.6#53(192.168.0.6) ;; WHEN: Mon Sep 7 18:24:18 2015 ;; MSG SIZE rcvd: 56DNS サーバーのアドレスは 192.168.0.6 で、ちゃんと hebe.local の IPv6 アドレス
2402:6b00:22cd:bf80::6
ところがブラウザが応答に手間取っている時に dig を実行すると、
-bash$ dig hebe.local aaaa ; <<>> DiG 9.8.3-P1 <<>> hebe.local aaaa ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 1351 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;hebe.local. IN AAAA ;; AUTHORITY SECTION: . 72700 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2015090700 1800 900 604800 86400 ;; Query time: 124 msec ;; SERVER: 2402:6b00:22cd:bf80:1266:82ff:fe0c:ed18#53(2402:6b00:22cd:bf80:1266:82ff:fe0c:ed18) ;; WHEN: Mon Sep 7 18:22:43 2015 ;; MSG SIZE rcvd: 103
hebe.local の IPv6 アドレスが採れない。しかも、問い合わせた DNS サーバーのアドレスは
2402:6b00:22cd:bf80:1266:82ff:fe0c:ed18
この現象は Macbook の DNS の表示によっても裏付けるられる。
ルーターの DHCP は OFF に設定されている。また筆者の DHCP サーバーでは DNS として 192.168.0.6 のみが指定されている。
どうやら、この現象は IPv6 の RA (Router Advertisement) と関係しているらしい。
IPv6 では DHCP に頼らずともルーターを自動的に探すメカニズム(RA)が存在する。そしてついでに DNS 情報もルーターから貰うことができるらしい(option)。Aterm にはこれを禁止するオプションが無い。そこで次図のように設定した。
NO NO NO!
まだ起こる。この問題は Yosemite の WiFi の不安定性が関係している可能性がある。
現在、ルーター(192.168.0.1)へ ping し続けて、WiFi 問題を確認中。
時々 Request timeout が発生している...
Request timeout for icmp_seq 4469 64 bytes from 192.168.0.1: icmp_seq=4470 ttl=255 time=4.190 ms 64 bytes from 192.168.0.1: icmp_seq=4471 ttl=255 time=5.282 ms 64 bytes from 192.168.0.1: icmp_seq=4472 ttl=255 time=6.232 ms 64 bytes from 192.168.0.1: icmp_seq=4473 ttl=255 time=4.329 ms Request timeout for icmp_seq 4474 Request timeout for icmp_seq 4475 64 bytes from 192.168.0.1: icmp_seq=4476 ttl=255 time=4.571 ms 64 bytes from 192.168.0.1: icmp_seq=4477 ttl=255 time=5.618 ms 64 bytes from 192.168.0.1: icmp_seq=4478 ttl=255 time=4.303 ms
関係するネットの記事:
https://www.nic.ad.jp/ja/materials/iw/2010/proceedings/d2/iw2010-d2-06.pdf
https://tools.ietf.org/html/rfc6106
Aterm WH382A に関してさらに不思議なことが見つかった。
まず筆者の環境を説明する。
router
、ドメイン名は router.local
hebe
、IP アドレスは 192.168.06
192.168.0.6
を設定したと書いたが、どうやらこの設定が働いていない。
働いていないことは次の事実から推定される。
dig のマニュアルによれば、Mac から
dig me.nyx.link
/etc/resolv.conf
に基づいて、利用する DNS サーバーが決定される。ここには 192.168.0.6
が設定されている。dig @router.local me.nyx.link
router
を DNS サーバーとして利用する。
me.nyx.link
は家庭の中で動いている Web サーバーであり、ローカル DNS サーバー では 192.168.0.6
として IP アドレスが設定されている。
他方 me.nyx.link
は、インターネットレベルではグローバルアドレスとなっている。
さて、図1の設定は、クライアントが DNS の問い合わせを 192.168.0.6
に問い合わせても 192.168.0.1
に問い合わせても同じ結果が得られることを期待したのであるが...
dig @router.local me.nyx.link
結局考えられるのは、図1のようにローカル DNS サーバーを設定しても無効になっていて、その場合 ISP から提供される DNS サーバーが利用されると言うことだろう。
Aterm WH382A のこの仕様は初心者向けの保護機能なのだろうが、僕のケースでは困る。
クライアントが名前解決に 192.168.0.6
のみを利用してくれれば問題は無いのだが、ローカルホストの名前解決に 192.168.0.1
を使われると困るのだ。
Aterm に関して困ったことがある。Aterm だけではなくて、ルーターの通常の仕様かも知れないがメーカーさんはよく考えて欲しい。
me.nyx.link
は家庭の中で動いている Web サーバーであり、ローカル DNS サーバー では 192.168.0.6
として IP アドレスが設定されている。
他方 me.nyx.link
は、インターネットレベルではグローバルアドレスとなっており、現在の IPv4 アドレスは 115.36.102.252
である。従って LAN の中では 192.168.0.6
でアクセスし、LAN の外からは 115.36.102.252
でアクセスすることになる。LAN の外からは 192.168.0.6
でアクセスできないことはローカルアドレスの定義から自明であるが、LAN の中から 115.36.102.252
でアクセスするとどうなるか?
Aterm だと奇怪にもルーターにアクセスしてしまう! グローバルアドレスなので、ルーターを通ろうとするのは当然なのだが... しかしそのパケットを自分へのアクセスだと勘違いしているのはバグだとしか言いようがない。そのために、me.nyx.link
の名前で LAN の中からはアクセスできないのだ。もっとも Web のブラウザに関しては幸いなことに IPv6 → IPv4 の順でアクセスしてくれる。我が家の LAN では IPv6がサポートされているので、これだとルーターを通らずに直接 me
にパケットが届くのである。もしも IPv4 だけの設定がされていたら LAN の中からは me.nyx.link
の名前では me
にアクセスできないであろう。
me
の LAN の中でのドメイン名は me.local
である。だから me.local
と me.nyx.link
を使い分ければ良いではないかとの向きもあろうが、そう言う訳にも行かないことがある。例えば Web ページの中で http://me.nyx.link
のアドレスが含まれる場合があるからである。
Web ブラウザの場合は、IPv6 優先なので1、まだタチが良い。他のアプリの場合には必ずしもそうではない。まだまだ IPv4 優先の状況なのである。
この問題はルーターの設計を工夫すれば簡単に解決する。LAN の中で宛先がグローバルアドレスの場合には、必ずルーターを通る。ルーターはそのアドレスが WAN 側から見て自分宛のものであれば、元に戻してくれればよい。WAN 側からそのパケットが来たかのように。そうすれば、ポートマッピングを経て、正しい IPv4 アドレスに変換される。
最近、息子が使っている Windows7 でトラブルがあった。
ネットサーフィンが不調である。原因はDNSサーバが正しく設定されていなないことにあった。
なぜ、DNSサーバのIPが分からないでいるのか? ノートパソコンを立ち上げたときに、DHCPから情報を受け取っていないかららしい。
それでは、なぜDHCPが正しく働いていないのか?
我が家の無線LANには複数の入口がある。 コミュファ提供の Aterm と、Apple の AirMac Extreme である。後者は、今となっては、もはや古いモデルであるが、性能は良く、安定している。ところが前者は AirMac Extreme 程の性能はなく、また安定性に劣る。
息子のノートパソコンの接続優先順位は、Aterm → AirMac の順になっていた。ブート時の接続が多少不安定なまま行われたのであろうか? Aterm に接続はしたが DHCP からの情報は受け取られなかったと考えられる。
そこで我が家の無線LAN環境を見直すこととした。ノートパソンからの接続口が複数あることが問題である。
安定性に劣るものが混在していると、問題を引き起こす。それにトラブルが発生したときの診断が複雑になる。正しい解決は、Aterm の無線機能を止めることである。
Aterm WH832A の無線LANを無効にするには、「無線LAN設定/無線LAN基本設定」で、「2.4GHz通信機能、
5GHz通信機能」を共に無効にする。