「ぷらら」のIPv6 IPoEの利用設定が完了したので、Synology DS-216JのWebStationとPhotoStationをIPv6 IPoEでアクセスできるよう設計した。DS-216Jは、IPv6自動設定で稼働している。IPv6固定アドレスを割振るため、IPv6 Prefix + IPv4の第3、第4オクテットをIPv6の第7、第8ヘクテットへ割振る事とした。IPv6のPrefixが変化するのか不明であるが、IPv6(AAAA)対応DDNSにFQDNを登録する。ヤマハのDDNS(Netvolante)は、IPv6未対応なので、新たなDDNSサービスを検討する。https用のサーバ証明書は、DS-216JでLet's Encryptから取得する。DDNSへの登録は、DS-216JのDDNS機能を利用して自動化を行う事とした。稼働させるIPv6 httpサーバは、DS-216JのnginxにVirtual ServerでIPv6専用として稼働させる。IPv4は、「ぷらら」PPPoE経由で今まで通りの構成とした。
![](https://blogimg.goo.ne.jp/user_image/69/58/21f5dbc920549861256bfeb3299a4bdc.png)
(1)DS-216JのIPv6アドレス設定
リンクローカルに設定されているIPv6アドレス、ゲートウェイ、DNSアドレスをグローバルIPv6アドレスに手動設定する
![](https://blogimg.goo.ne.jp/user_image/1b/95/db69b6d918faaa4986dadd7d4432b7b2.png)
![](https://blogimg.goo.ne.jp/user_image/12/92/2300b87d8a401b8754c92332aa1ed129.png)
(2)DDNS選定と登録
「AAAA」レコード登録に対応している「MyDNS」を使う事とし、IPv6専用とした。
利用登録後、ドメインの登録と決定したIPv6アドレスを設定。
![](https://blogimg.goo.ne.jp/user_image/24/55/b1f3b64a5c884debc720e2d01490b820.png)
(3)DS-216Jのhttp/httpsサービスをnginxのvirtual serverで設定する
Let's Encryptのサーバ証明書を得るため、IPv6専用でhttp(ポート80)稼働と「.well-known/acme-challenge」ディレクトリを準備。証明書の新規取得後に設定する「httpsへのredirect」も準備する。https(ポート443)は、Let's Encryptから証明書を取得するまで既存ローカルドメイン用証明書を使い(server_nameを合わせ)テスト稼働する。ローカルサイトでは、NVR500のDNSに「AAAA」レコードをテスト追加して確認する。
「dns static aaaa somehost.anydomain 2001:0db8::2:1」
Let's Encrypt証明書の更新時に対応する「.well-known/acme-challenge」ディレクトリも準備する。
![](https://blogimg.goo.ne.jp/user_image/6c/83/f8b34aa182c1f19a26795cff7081bd03.png)
(4)http(ポート80)サーバの稼働を確認する
iPhone6SテザリングをMacBook(macOSX Sierra)に接続し、Parallels Desktop上のWindows10からIPv6アドレスでping確認。trace routeも確認。
![](https://blogimg.goo.ne.jp/user_image/32/e3/1a8c65e0e203c0eca259722790406df3.png)
macOSX上のSafariからIPv6アドレスでURLアクセスして観るが、表示されない。。。
PR-S300SEのセキュリティログを確認すると「パケットフィルタ」で遮断されている。
![](https://blogimg.goo.ne.jp/user_image/7b/a8/b32d2492b92a2ec7b7085cf1c270e5b5.png)
DS-216Jへのtcp/httpとtcp/httpsを両方向で通過させる。
![](https://blogimg.goo.ne.jp/user_image/07/af/151d57c374811e7669d347deb654c432.png)
もう一つあった、NVR500ファイアウォールのセキュリティフィルタ。WANポートのIPv6フィルタ。
![](https://blogimg.goo.ne.jp/user_image/33/cb/30340aeaf6b937727efe77968e313f47.png)
tcp/http(www)とtcp/httpsを通過させる。
IPv6アドレス、MyDNSに登録したFQDNでのURLアクセス確認。
「.well-known/acme-challenge」ディレクトリにテスト用htmlを配置してアクセス確認。
![](https://blogimg.goo.ne.jp/user_image/6d/fe/cfb6b6d0ff3cc383aece8e76ed3b1da5.png)
これでLet's Encrypt電子証明書取得準備完了。
(5)Let's Encryptから電子証明書を得る
「Synology DS-216JでLet's Encryptからサーバ証明書(Free)を得る」と同様に電子証明書を取得する。
![](https://blogimg.goo.ne.jp/user_image/57/79/a349ebb078f183655b1239696d0e7a69.png)
得られた証明書は、「構成」設定しない。取得された証明書は、「/usr/syno/etc/certificate/_archive」ディレクトリに保存される。_archiveディレクトリ下に「ランダム6文字ディレクトリ」がある。証明書取得日に作成されたディレクトリが目的の証明書フォルダ。SSHでDS-216Jに接続し、下記で内容を確認。
「openssl x509 -text -noout -in /usr/syno/etc/certificate/_archive/ABCDEF/cert.pem」
確認終了後、virtual server設定に証明書を設定。http(ポート80)のhttps(ポート443)へのredirect設定し、ssl接続を確認する。
(6)IPv6 SSLとIPv4 SSL接続確認
IPv6
![](https://blogimg.goo.ne.jp/user_image/54/87/605c8a90435a20da5eb4ff676035aa26.png)
IPv6(iPhone6S)
![](https://blogimg.goo.ne.jp/user_image/6b/1d/b38d818c0340bac12dfb30708240ef7f.png)
IPv4
![](https://blogimg.goo.ne.jp/user_image/72/47/79304a8aa1dfacb08b36a16244845d75.png)
(7)DS-216JのDDNS機能でドメインとIPv6アドレスの自動更新処理
別途記述する
Synology DS-216JのDDNSでIPv6 AAAAレコードを登録する
![](https://blogimg.goo.ne.jp/user_image/69/58/21f5dbc920549861256bfeb3299a4bdc.png)
(1)DS-216JのIPv6アドレス設定
リンクローカルに設定されているIPv6アドレス、ゲートウェイ、DNSアドレスをグローバルIPv6アドレスに手動設定する
![](https://blogimg.goo.ne.jp/user_image/1b/95/db69b6d918faaa4986dadd7d4432b7b2.png)
![](https://blogimg.goo.ne.jp/user_image/12/92/2300b87d8a401b8754c92332aa1ed129.png)
(2)DDNS選定と登録
「AAAA」レコード登録に対応している「MyDNS」を使う事とし、IPv6専用とした。
利用登録後、ドメインの登録と決定したIPv6アドレスを設定。
![](https://blogimg.goo.ne.jp/user_image/24/55/b1f3b64a5c884debc720e2d01490b820.png)
(3)DS-216Jのhttp/httpsサービスをnginxのvirtual serverで設定する
Let's Encryptのサーバ証明書を得るため、IPv6専用でhttp(ポート80)稼働と「.well-known/acme-challenge」ディレクトリを準備。証明書の新規取得後に設定する「httpsへのredirect」も準備する。https(ポート443)は、Let's Encryptから証明書を取得するまで既存ローカルドメイン用証明書を使い(server_nameを合わせ)テスト稼働する。ローカルサイトでは、NVR500のDNSに「AAAA」レコードをテスト追加して確認する。
「dns static aaaa somehost.anydomain 2001:0db8::2:1」
Let's Encrypt証明書の更新時に対応する「.well-known/acme-challenge」ディレクトリも準備する。
![](https://blogimg.goo.ne.jp/user_image/6c/83/f8b34aa182c1f19a26795cff7081bd03.png)
(4)http(ポート80)サーバの稼働を確認する
iPhone6SテザリングをMacBook(macOSX Sierra)に接続し、Parallels Desktop上のWindows10からIPv6アドレスでping確認。trace routeも確認。
![](https://blogimg.goo.ne.jp/user_image/32/e3/1a8c65e0e203c0eca259722790406df3.png)
macOSX上のSafariからIPv6アドレスでURLアクセスして観るが、表示されない。。。
PR-S300SEのセキュリティログを確認すると「パケットフィルタ」で遮断されている。
![](https://blogimg.goo.ne.jp/user_image/7b/a8/b32d2492b92a2ec7b7085cf1c270e5b5.png)
DS-216Jへのtcp/httpとtcp/httpsを両方向で通過させる。
![](https://blogimg.goo.ne.jp/user_image/07/af/151d57c374811e7669d347deb654c432.png)
もう一つあった、NVR500ファイアウォールのセキュリティフィルタ。WANポートのIPv6フィルタ。
![](https://blogimg.goo.ne.jp/user_image/33/cb/30340aeaf6b937727efe77968e313f47.png)
tcp/http(www)とtcp/httpsを通過させる。
IPv6アドレス、MyDNSに登録したFQDNでのURLアクセス確認。
「.well-known/acme-challenge」ディレクトリにテスト用htmlを配置してアクセス確認。
![](https://blogimg.goo.ne.jp/user_image/6d/fe/cfb6b6d0ff3cc383aece8e76ed3b1da5.png)
これでLet's Encrypt電子証明書取得準備完了。
(5)Let's Encryptから電子証明書を得る
「Synology DS-216JでLet's Encryptからサーバ証明書(Free)を得る」と同様に電子証明書を取得する。
![](https://blogimg.goo.ne.jp/user_image/57/79/a349ebb078f183655b1239696d0e7a69.png)
得られた証明書は、「構成」設定しない。取得された証明書は、「/usr/syno/etc/certificate/_archive」ディレクトリに保存される。_archiveディレクトリ下に「ランダム6文字ディレクトリ」がある。証明書取得日に作成されたディレクトリが目的の証明書フォルダ。SSHでDS-216Jに接続し、下記で内容を確認。
「openssl x509 -text -noout -in /usr/syno/etc/certificate/_archive/ABCDEF/cert.pem」
確認終了後、virtual server設定に証明書を設定。http(ポート80)のhttps(ポート443)へのredirect設定し、ssl接続を確認する。
(6)IPv6 SSLとIPv4 SSL接続確認
IPv6
![](https://blogimg.goo.ne.jp/user_image/54/87/605c8a90435a20da5eb4ff676035aa26.png)
IPv6(iPhone6S)
![](https://blogimg.goo.ne.jp/user_image/6b/1d/b38d818c0340bac12dfb30708240ef7f.png)
IPv4
![](https://blogimg.goo.ne.jp/user_image/72/47/79304a8aa1dfacb08b36a16244845d75.png)
(7)DS-216JのDDNS機能でドメインとIPv6アドレスの自動更新処理
別途記述する
Synology DS-216JのDDNSでIPv6 AAAAレコードを登録する