2018年11月11日日曜日

自宅のネットワーク環境のNVR510の設定(抜粋,一部修正,v6プラス,PPPoE併用,ひかり電話)

私の自宅のネットワーク環境のNVR510の設定です。
抜粋版でIPアドレスなどは修正してあります。

環境は以下のような感じ。
ローカルネットワーク192.168.62.0/23
NVR510ローカル側アドレス192.168.62.1
VPNサーバ192.168.62.200v6プラスでポート開放。
クライアントIP:192.168.63.1-5
DLNAサーバ192.168.62.201PPPoEでポート開放
ひかり電話の電話番号0333333333
ローカルネットワークアドレスが通常の/24ではなく、/23なのかというと、VPNサーバのクライアントIPが違うからです。NVR510がDHCPで配布するIPアドレスは、192.168.62.xxx(62=00111110b)で、VPNクライアントのIPアドレスは、192.168.63.xxx(63=00111111b)なので、ネットワークマスクを/23(255.255.254.0)にすればまとめて扱えます。

NVR510(とNVR700W)は、他のルータとは違う特徴を持っています。それは、ひかり電話を直接扱える事。
ひかり電話を契約すると、通常ONUが内蔵されたHGW(ホームゲートウェイ)がレンタルされます。HGWがアナログ電話との接続をやってくれます。なので、ひかり電話を使いつつ、別のv6プラス対応ルータを接続しようとすると、HGW側でIPv6パススルー設定をして、HGWの後段にv6プラスルータを接続する必要があります。
一方、NVR510はTELポートを持っているので、HGWにアナログ電話を接続しなくてもいいです。
私の自宅のHGWはかなり古いRV-230SEですが、ルータなどの機能を切って、単なるONUとして使うことができます。













こんな感じに、短いLANケーブルがついている部分があるんですが、それを外してNVR510のWANポートに直結できます。アナログ電話はNVR510側に接続します。
こうすれば、古いHGWにIPv6パススルーの処理をさせる必要がなくなるので、私の環境では(通信速度は上がらなかったですが)高負荷時の安定性が増しました。
NVR510は小型ONUにも対応していて、小型ONUを導入すれば、RV-230SE自体が不要になるのですが、小型ONUの入手はちょっと面倒です。

以下は、NVR510の設定です。全部をコマンドでやるのは大変なので、Web GUIである程度設定してから差分をコマンドで設定した方が良いと思います。

ip routing on
ipv6 routing on
今は、両方ともデフォルトonのようなので省略できます。

ngn type lan2 ntt
NGNとの接続設定。ひかり電話を使うのでntt

 ip lan1 address 192.168.62.1/23
NVR510のローカル側のIPアドレス設定

ip route default gateway tunnel 1 gateway pp 1 filter 100
ip filter 100 pass 192.168.62.201 * * * *
DLNAサーバがインターネットと通信するときだけ、pp 1(PPPoE)を使います。
それ以外は、tunnel 1(v6プラス)を使います。

ip lan2 address dhcp
WAN側のIPv4アドレスをDHCPで取得。これが必要なのかちょっと怪しい。
【2020/12/29追記】
   この設定がないとひかり電話が使えません。しかし、まだ検証中なのですが、v6プラス環境の場合、この設定を入れると、DHCPでIPアドレスを取得する処理が2時間に1回走りますが、そのときにv6プラス側のIPv4通信が瞬断するようです。ブラウザなどでは気づきにくいですが、オンラインゲームとかはシビアに影響します。
 tunnel select 1
 tunnel encapsulation map-e
 ip tunnel mtu 1460
 ip tunnel secure filter in 2000 2001 2002 2003 2999
 ip tunnel secure filter out 1000 1001 1002 1999 dynamic 10000 10001 10002 10003 10004 10005 10006 10007
 ip tunnel nat descriptor 1000
 tunnel enable 1
nat descriptor type 1000 masquerade
nat descriptor address outer 1000 map-e
nat descriptor masquerade static 1000 1 192.168.62.200 tcp 55555
 v6プラスの設定。細かい説明は本家のページを。v6プラスの場合、使えるポートが限定されますが、外部からの接続を許すことができますので、使えるポートを使用してVPNサーバを立ち上げました。使えるポートは回線によって違います。v6プラスの設定をして実際に接続するとsyslogにv6プラスが使用するポート番号(=使えるポート番号)が書き込まれます。この例ではポート55555を使っています。

pp select 1
 pp keepalive interval 30 retry-interval=30 count=12
 pp always-on on
 pppoe use lan2
 pppoe auto disconnect off
 pp auth accept pap chap
 pp auth myname user password
 ppp lcp mru on 1454
 ppp ipcp ipaddress on
 ppp ipcp msext on
 ppp ccp type none
 ip pp secure filter in 2000 2001 2002 2003 2999
 ip pp secure filter out 1000 1001 1002 1999 dynamic 10000 10001 10002 10003 10004 10005 10006 10007
 ip pp nat descriptor 2000
 pp enable 1
nat descriptor type 2000 masquerade
nat descriptor masquerade static 2000 1 192.168.62.201 udp *
PPPoEの設定。ほとんどWeb GUIで設定したものを使っています。DLNAサーバは、外部にUDPポートを広範囲に開放する必要があるので、v6プラスでは無理で、PPPoEを使っています。

ipv6 prefix 1 ra-prefix@lan2::/64
ipv6 lan1 address ra-prefix@lan2::1/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
ipv6 lan2 secure filter in 4000 4001 4002 4003 4999
ipv6 lan2 secure filter out 3000 3001 3999 dynamic 30001 30002 30003 30004 30005 30006 30007 30008
IPv6の設定。ひかり電話を使っている場合は、RAプロキシではなくDHCPv6-PDの設定になるらしい(YAMAHAサイト1(ひかり電話なし), YAMAHAサイト2(ひかり電話あり))のですが、私の自宅の環境では、ひかり電話ありにも関わらずRAプロキシ設定です。ネットの情報を見ていると、何人かの環境はそうなっているみたいです。NTT側の設定ミスだとかどうとか。

ipv6 lan1 mld router version=2
ipv6 lan2 mld host version=2
IPv6マルチキャストの設定。ひかりTV用です。

dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.62.10-192.168.62.201/23
dhcp scope bind 1 192.168.62.200 ethernet xx:xx:xx:xx:xx:xx
dhcp scope bind 1 192.168.62.201 ethernet yy:yy:yy:yy:yy:yy
dhcp client release linkdown on
DHCPサーバの設定。2つサーバはIP固定に。

ip filter 1000 reject * 192.168.62.0/23 * * *
ip filter 1001 reject * * udp,tcp 135,137-139,445 *
ip filter 1002 reject * * udp,tcp * 135,137-139,445
ip filter 1999 pass * * * * *
ip filter dynamic 10000 * * ftp
ip filter dynamic 10001 * * domain
ip filter dynamic 10002 * * www
ip filter dynamic 10003 * * smtp
ip filter dynamic 10004 * * pop3
ip filter dynamic 10005 * * submission
ip filter dynamic 10006 * * tcp
ip filter dynamic 10007 * * udp
IPv4 outフィルターの設定。ファイル共有などだけブロックして後はスルーさせます。後述しますが、in側のフィルターは基本全ブロックで、動的フィルターで通過させます。

ip filter 2000 reject 192.168.62.0/23 * * * *
ip filter 2001 pass * 192.168.62.0/23 icmp * *
ip filter 2002 pass * 192.168.62.200 tcp * 55555
ip filter 2003 pass * 192.168.62.201 udp * 30000-60000
ip filter 2999 reject * * * * *
IPv4 inフィルターの設定。動的フィルターを使うのでICMPと開放したポート以外は全部拒否。

ipv6 filter 3000 reject-log * * udp,tcp 135,137-139,445 *
ipv6 filter 3001 reject-log * * udp,tcp * 135,137-139,445
ipv6 filter 3999 pass * * * * *
ipv6 filter dynamic 30001 * * ftp syslog=off
ipv6 filter dynamic 30002 * * domain syslog=off
ipv6 filter dynamic 30003 * * www syslog=off
ipv6 filter dynamic 30004 * * smtp syslog=off
ipv6 filter dynamic 30005 * * pop3 syslog=off
ipv6 filter dynamic 30006 * * submission syslog=off
ipv6 filter dynamic 30007 * * tcp
ipv6 filter dynamic 30008 * * udp
IPv6 outフィルターの設定。IPv4と基本同じ。

ipv6 filter 4000 pass * * icmp6 * *
ipv6 filter 4001 pass * * 4
ipv6 filter 4002 pass * * udp * 546
ipv6 filter 4003 pass * xxxx tcp * 55555
ipv6 filter 4999 reject-log * * * * *
IPv6 inフィルターの設定。YAMAHAのv6プラス設定の説明ページを参照。
ルール4001はv6プラスのパケットを通過させるために必要。VPNサーバはIPv6も受け付けれるので、そのために4003ルールを設定しています。

dns host lan1
dns service fallback on
dns private address spoof on
dns private name NVR510
dns server 2001:4860:4860::8888 2001:4860:4860::8844 8.8.8.8 8.8.4.4 
DNSの設定。YAMAHAのv6プラス設定の説明ページだと、dns server dhcp lan2だけでいいはずなんですが、その設定ではうまくDNSが引けないので、Google Public DNSを使う設定にしました。

【2020/5/5追記】
DNSの設定は、今は以下のようになっています。Google Public DNSとCloudflare DNS を使う設定にしています。v6プラスを使う環境だとIPv4よりIPv6の方が絶対に速いので、全部IPv6のアドレスを指定しています。
dns server 2001:4860:4860::8888 2001:4860:4860::8844 2606:4700:4700::1111 2606:4700:4700::1001
【2020/8/15追記】
今のDNSの設定は、以下のようになっています。引っ越したのでネットワークの環境が変わっているのと、これまではパブリックDNSだけ使っていても、ひかりTVのSTBが起動できていたんですが、最近何か環境が変わったようで、DHCPで配布されるDNS(フレッツ網のDNS)を使わないといけなくなりました。ただ、フレッツ網のDNSはたまに障害が起きるので、パブリックDNSも引けるようにしてます。
dns server select 500000 dhcp onu1 any .
dns server select 500001 2001:4860:4860::8888 any .
dns server select 500002 2606:4700:4700::1111 any .
dns server select 500003 2001:4860:4860::8844 any .
dns server select 500004 2606:4700:4700::1001 any .
 
analog wait dial timer 1 2
analog sip arrive permit 1 myname
analog sip call myname 1 sip:0333333333
analog sip arrive permit 2 off
analog sip call permit 2 off
analog supplementary-service pseudo call-waiting
analog extension emergency-call-dial type normal-number
analog extension dial prefix sip prefix="9#"
analog extension dial prefix port=1 ngn lan2
analog extension dial prefix port=2 ngn lan2
sip use on
sip codec permit lan2 g711u
アナログ電話の設定。Web GUIで設定したものそのままです。


2018年11月6日火曜日

PC買い換えました

4年半ぶりぐらいにPCを買い換えました。

昔は、PCでそんなにいろいろやらなかったので、性能はそこそこのコンパクトPCを使っていたんですが、PCでやることが増えると、ちょっと性能に不満が出てきました。特に、PCゲームだと、GeForce GTX 1060以上を推奨するものが多いんですが、コンパクトPC(=ロープロファイルのグラフィックカードしかつけられない)だと、1050Tiまでが限界でそれ以上拡張できないんですよね。

新旧のPCスペックはこんな感じ。
旧PCのメーカーはEPSONで、新PCのメーカーはSycomです。両方ともBTO。EPSON安定度は抜群なんだけどいかんせん高くて。SycomもBTO系では高い方ですが。
新PC 旧PC(最終スペック)
OS Windows 10 Pro
CPU Intel Core i7-9700K(3.6GHz)Intel Core i7-4770K(3.5GHz)
Memory 16GB 32GB
GraphicGeForce GTX 1060 GeForce GTX 1050 Ti
Disk M.2 PCI-E SSD 1TB Intel SRT 2TB(64GB SSD+2TB HDD)
LAN Intel I219-V Intel I217-V

CPUは最新の第9世代になりました。最初Core i9にしようかと思ったんですが、売り切れたのと、価格もちょっときつかったので、当初予定していたCore i7の最新にしました。
メモリは32GBから16GBに減らしました。さすがに32GBは使い切れなかったので。
あと、ディスクは値段もこなれてきたので、M.2 SSDにしました。旧PCでは、2TB内の400GBぐらいしか使っていなかったので、今回は1TBにしました。SSDの2TBは結構高いし。
GraphicはとりあえずGTX1060を。GTX or RTX 2060のカードが出そろってきたら、載せ替える予定。

ベンチマークもとりあえず取ってみました。



















新しいPCを使いはじめて、一番最初に感動したのは、
とにかく静か
ということです。
まずHDDがなくなったのでカリカリ言わなくなったし、ファンが本当に静かになって回転しているのに音がほとんどしない。コンパクトPCだとファンが小さいので回さないといけないけど、ちょっとケースを大きくして大きなファンを付けて、低速で回すとほんとに静かになるんだね。

あと、いろいろな動画の再生が安定しました。
PC TV plusの再生が乱れにくくなって、Youtube LiveのUltra Low Latencyが止まりづらくなりました。旧PCでも、CPU使用率とかを見ると余裕がありそうなのに、やっぱり変わるもんですね。

2018年11月5日月曜日

今まで私が試したv6プラス対応ルータ一覧(Buffalo WXR-1900DHP, IO-DATA WN-AX1167GR, IO-DATA WN-AX2033GR, NEC WG2600HP3, YAMAHA NVR510)

v6プラス接続をするとき、NTTのホームゲートウェイ(HGW)を使うのが一番手っ取り早いのですが、NTTから貸与されているHGWが古すぎる場合などは、市販のルータを使うしかないです。(HGW交換できないの?とNTTに聞いてみたことがあるんですが、故障以外は交換しないと言われてしまったので)

で、NVR510がv6プラス対応するまで、いろいろなルータを試すというv6プラスルータ難民をやっていました。
私が試したv6プラス対応ルータが以下になります。
・Buffalo WXR-1900DHP
・IO-DATA WN-AX1167GR
・IO-DATA WN-AX2033GR
・NEC Aterm WG2600HP3
・YAMAHA NVR510

それぞれの感想です。
VDSL環境だと、すべてのルータの速度の差はそんなにないです。誤差レベル。

【Buffalo WXR-1900DHP】
最初に私がv6プラスを試したルータです。その当時は、NTTのHGWと、Buffalo製ルータしかv6プラス対応していませんでした。
使った感じだと、安定性にちょっと難ありです。
v6プラスのマップルールの取得に失敗することが結構ありました。
昔はNDプロキシを使うとIPv6通信が止まるという現象が出ていて、パススルーで使っていました(NVR510をファイアウォール代わりにしていた)。ファームウェア更新で、私の環境でまともに使えるようになったのですが、他の人の環境では未だにトラブっている人もいるようです。

【IO-DATA WN-AX1167GR】
【IO-DATA WN-AX2033GR】
シンプル機能で値段お安めのルータ。
私は以下の理由で常用しませんでした。その後ファームウェア更新されていないようなので、多分今でも直っていないと思います。

(1) DHCPが配信してくるDNSサーバだと、接続できないサイトがある(WN-AX2033GR)。
https://sourceforge.net/speedtest/
のテストがChromeブラウザだと動作しません。IEとかだと大丈夫なようです。
IO-DATAに問い合わせをして、サポートの方でも現象が再現したのですが、Chromeの問題と言うことでクローズされてしまいました。他のルータ+Chromeだと問題が起きないので、Chromeの問題というより、WN-AX2033GRの問題だと思うんですが...

(2) ひかりTVの画像がたまに飛ぶ
いつも通信が問題なわけでは無く、たまにパケットの転送が間に合ってないようです。
ひかりTVはかなり通信がシビア(WXR-1900DHPでも、QoS機能使うと反って悪くなるぐらい)で、工夫しないと安定的に見れないんですが、多少処理に問題があるようです。

【NEC Aterm WG2600HP3】
NECが初めてv6プラス対応したルータ(OEMではすでにやっていましたけど)。
「IPv6 High Speed」の「3倍速い」に期待して買ったんですが、「3倍速い」のは当社比だったようで...
私が最後に試したときには、IPv6のpingが通らないという問題がありました。今はどうなんだろう。

WXR-1900DHPはPPPoEパススルーできるんですが、WG2600HP3はできません。人によっては困るかも。あと、IPv6パススルーはできず、かならずNDプロキシ接続になります(困る人いないと思うけど)。

【YAMAHA NVR510】
つい最近v6プラス正式対応したので、現在私が常用しているルータです。

価格が高いです。
設定もある程度はGUIでできますが、v6プラスなど細かい設定はコマンドでやらないといけないので、普通の人には手は出せないと思います。

でも、安定度と、設定の自由度が非常に高いので便利です。
v6プラス通信とPPPoE通信がこれ1台でできるので、ルーティングをちゃんと設定すれば、クライアント側のネットワークが非常にシンプルに構築できます。