[macOS]DreamweaverでQNAP製NAS上のファイルを扱うときの不思議な制約

macOS(10.15 Catalina)でDreamweaverを動かし、QNAP製のNAS上のファイルを使用する時の不思議な制限事項について。

homesはOKでhomeはダメ

QNAP製のNAS(筆者の場合はTS-212P)では、各NASユーザーのファイルは、

[NASのアドレス]/homes/<ユーザー名>/

または

[NASのアドレス]/home/

で認識される(後者はNASにログインしているユーザーの分だけ見える)。しかし、Dreamweaverでは前者のパスでしかファイルを開くことができない。後者のパスはOS(Finder)で認識されていても「(ファイル名)が見つかりません。」というエラーが表示されて開くことができない。

同じAdobeの製品でもPhotoshopなどでは発生しないため、Dreamweaver固有の問題だと思われる。おそらく「home」という名称が製品内部で予約語にでもなっているのだろう。

RT58iとRT107eを組み合わせてL2TP/IPsecとPPTP両対応リモートアクセスVPN環境を構築する

ヤマハのルーター「RT58i」は、VPNのプロトコルとしてPPTPしかサポートしていない。

一方で、iOS 10以降など最近のOSではPPTPをサポートしておらず、モバイル通信サービスでもPPTPを規制していることがしばしばある。

そのため、私はこちらの記事にあるようにQNAPのNAS(TS-212P)をL2TP/IPsecサーバーとして稼働させ、外出先から自宅へのリモートアクセスに利用していた。しかし、当初は問題なく利用できていたものの、徐々に接続できないことが多くなり、TS-212P側のログを見ても、そもそも接続要求が到達していないようで、かといってRT58iのログにもエラーが見られず困っていた。

(そのため、さきほどの記事は公開を控えていたが、本記事作成の過程で必要な設定が整理できたため、本記事とともに公開した。)

ヤマハのルーターでもNVR500以降の製品であれば、L2TP/IPsecに対応しているのだが、一般的な家庭用ルーターよりも価格が高くなかなか手が出ない。ところが、RT58iと同じ頃に発売された「RT107e」というルーターはIPsecに対応しており、2019年現在、中古品として安く流通しているため、RT58iとRT107eを組み合わせてL2TP/IPsecによるリモートアクセスを実現する手順を記述する。

RT58iとRT107eの接続

今回、RT107eはルーターとしてではなく、リモートアクセスサーバーとして機能させるので、RT58iのLANポートとRT107eのLANポートを接続する。RT107eのWANポートには何も接続する必要がない。

RT58iの設定

静的IPマスカレードの登録

ウェブブラウザでかんたん設定ページにアクセスする。

詳細設定と情報>基本接続の詳細な設定 の順に進む。

「設定されているプロバイダの一覧」のうち、接続を受けるために使用するインタフェース(プロバイダ)の行の設定ボタンをクリックする。

「静的IPマスカレード関連(フィルタの自動定義:80番~89番)」の追加ボタンをクリックし、「静的IPマスカレードの登録」画面で次の3つを追加する。

プロトコルポート使用ホストIPアドレス
esp*(RT107eのIPアドレス)
udp500(RT107eのIPアドレス)
udp4500(RT107eのIPアドレス)

設定の確定ボタンをクリックする。なお、これをコマンドで行う場合は以下のコマンドを実行する。(筆者の環境ではフィルタの先頭2つがPPTPに関する設定になっているため、3〜5番目への設定となっている)

nat descriptor masquerade static 1000 3 (RT107eのIPアドレス) esp
nat descriptor masquerade static 1000 4 (RT107eのIPアドレス) udp 500
nat descriptor masquerade static 1000 5 (RT107eのIPアドレス) udp 4500

静的IPフィルタの登録

トップ画面に戻り、

詳細設定と情報>ファイアウォール設定 の順に進む。

「ファイアウォールの設定インタフェース」のうち、接続を受けるために使用するインタフェース(プロバイダ)の行のIPv4フィルタの設定ボタンをクリックする。

「IPv4 静的IPフィルタの一覧」の追加ボタンをクリックし、「IPv4 静的IPフィルタの登録」画面で次の3つを追加する。

フィルタ番号フィルタ・タイププロトコル送信元IPアドレス送信元ポート番号受信先IPアドレス受信先ポート番号
(任意)pass(ログなし)esp**(RT107eのIPアドレス)*
(任意)pass(ログなし)udp**(RT107eのIPアドレス)500
(任意)pass(ログなし)udp**(RT107eのIPアドレス)4500

設定の確定ボタンをクリックする。

戻るボタンをクリックして「IPv4 静的IPフィルタの一覧」画面に戻り、追加した行の「適用 入」のチェックボックスをオンにして設定の確定ボタンをクリックする。

なお、これをコマンドで行う場合は次のコマンドを実行する。(筆者の環境ではフィルタの先頭2つがPPTPに関する設定になっているため、3〜5番目(200082〜200084)への設定となっている)

ip filter 200082 pass * (RT107eのIPアドレス) esp * *
ip filter 200083 pass * (RT107eのIPアドレス) udp * 500
ip filter 200084 pass * (RT107eのIPアドレス) udp * 4500

L2TP/IPsecのリモートアクセスのためには、UDPの1701番ポートをリモートアクセスサーバー(本記事で言えばRT107e)に向ける(NATを設定する)必要があると書かれている記事が多いが、今回はこの設定はRT58i側には不要で、RT107e側でトランスポートモードの設定を行えばよかった。(後述)

RT107eの設定

RT107eのかんたん設定で行えるのはIPsecを用いたLAN間接続のみであり、今回の目的であるL2TP/IPsecによるリモートアクセスサーバーとして機能させるためにはすべてコマンドで設定を行う必要がある。この機種の場合「かんたん設定」(Webインターフェース)はあくまでも競合製品に対抗するためのマーケティング的なものに過ぎず、使いこなすためにはコマンドによる設定が必須である。

RT107eに対してコマンドを実行する。コマンドの実行は、かんたん設定画面から行う(詳細設定と情報>コマンドの実行)他、telnetかシリアル接続で行う。

#【経路設定】
 ip route default gateway [RT58iのLAN側IPアドレス]

# 【LAN設定】
 ip lan1 address [RT107eのLAN側IPアドレス]/[サブネットマスク長]

# 【DNS設定】
 dns server [RT58iのLAN側IPアドレス]

# 【L2TP接続を受け入れるための設定】
# トンネルを複数定義する場合でもユーザー名・パスワードは1組でも構わない。
 pp select anonymous
  pp bind tunnel1 tunnel2
  pp auth request pap
  pp auth username [リモートアクセス時のユーザー名1] [リモートアクセス時のパスワード1]
  pp auth username [リモートアクセス時のユーザー名2] [リモートアクセス時のパスワード2]
  ppp ipcp ipaddress on
  ppp ipcp msext on
  ip pp remote address pool [リモートアクセス端末に割り当てるIPアドレス(「-」で区切って範囲指定可能)]
  ip pp mtu 1258
  pp enable anonymous

# 【L2TP接続で使用するトンネルの設定 (クライアント1つ目)】
 tunnel select 1
  tunnel encapsulation l2tp
  ipsec tunnel 101
   ipsec sa policy 101 1 esp aes-cbc sha-hmac
   ipsec ike keepalive use 1 off
   ipsec ike local address 1 [RT107eのLAN側IPアドレス]
   ipsec ike nat-traversal 1 on
   ipsec ike pre-shared-key 1 text [IPsecの事前共有鍵1]
   ipsec ike remote address 1 any
   l2tp tunnel disconnect time off
   l2tp keepalive use on 10 3
   l2tp keepalive log on
   l2tp syslog on
  ip tunnel tcp mss limit auto
  tunnel enable 1

# 【L2TP接続で使用するトンネルの設定 (クライアント2つ目)】
 tunnel select 2
  tunnel encapsulation l2tp
  ipsec tunnel 102
   ipsec sa policy 102 2 esp aes-cbc sha-hmac
   ipsec ike keepalive use 2 off
   ipsec ike local address 2 [RT107eのLAN側IPアドレス]
   ipsec ike nat-traversal 2 on
   ipsec ike pre-shared-key 2 text [IPsecの事前共有鍵2]
   ipsec ike remote address 2 any
   l2tp tunnel disconnect time off
   l2tp keepalive use on 10 3
   l2tp keepalive log on
   l2tp syslog on
  ip tunnel tcp mss limit auto
  tunnel enable 2

# 【L2TP接続で使用するトンネルの設定 (クライアント3つ目)】
# …

# 【IPsecのトランスポートモード設定】
 ipsec transport 1 101 udp 1701 # 1つ目
 ipsec transport 2 102 udp 1701 # 2つ目
 ipsec auto refresh on

# 【L2TP設定】
 l2tp service on

このコマンドを実行しても、かんたん設定の画面には全く反映されず、何も設定されていないように見える。

L2TP/IPsecとPPTPの併用

私は2つの拠点をRT58iでPPTPでLAN間接続している(これは、かんたん設定だけで行える)が、今回一方の拠点(PPTPサーバー側)にこのL2TP/IPsecリモートアクセスを可能としたことで、外からこの拠点を経由してもう一方の拠点(PPTPクライアント側)にもアクセスできるようになった。

【参考】iOSの設定

設定アプリを起動する。

一般>VPN の順に進む。

「VPN構成を追加…」をタップする。

次のように設定する。

タイプL2TP
説明(任意の文字列)
サーバ(RT58iのWAN側IPアドレス)
アカウントpp auth usernameコマンドで指定した[リモートアクセス時のユーザー名n]
RSA SecurIDオフ
パスワードpp auth usernameコマンドで指定した[リモートアクセス時のパスワードn]
シークレットipsec ike pre-shared-key n textコマンドで指定した[IPsecの事前共有鍵n]
すべての信号を送信オン
プロキシオフ

【参考文献】
http://www.rtpro.yamaha.co.jp/RT/docs/l2tp_ipsec/index.html
【設定例2:複数のL2TPクライアント(アドレス不定)の接続を受け付ける場合】
【設定例3:NATトラバーサルを利用したL2TPクライアントの接続を受け付ける場合】

YAMAHA RT107e VPNルータを買ってみた!
http://blog.kourin.org/blog/?p=5153

RT58iとQNAPのNASの組み合わせでL2TP/IPsecを使用する

ヤマハのルーター「RT58i」は、VPNのプロトコルとしてPPTPしかサポートしていない。

一方で、iOS 10以降など最近のOSではPPTPをサポートしておらず、モバイル通信サービスでもPPTPを規制していることがしばしばある。

ヤマハのルーターもNVR500以降の製品であれば、L2TP/IPsecに対応しているのだが、QNAPのNASもL2TP/IPsecサーバー機能を持っているので、RT58iとQNAPのTS-212Pを組み合わせてL2TP/IPsecによるリモートアクセスを実現する手順を記述する。

RT58iの設定

静的IPマスカレードの登録

ウェブブラウザでかんたん設定ページにアクセスする。

詳細設定と情報>基本接続の詳細な設定 の順に進む。

「設定されているプロバイダの一覧」のうち、接続を受けるために使用するインタフェース(プロバイダ)の行の設定ボタンをクリックする。

「静的IPマスカレード関連(フィルタの自動定義:80番~89番)」の追加ボタンをクリックし、「静的IPマスカレードの登録」画面で次の3つを追加する。

プロトコルポート使用ホストIPアドレス
esp*(NASのIPアドレス)
udp500(NASのIPアドレス)
udp4500(NASのIPアドレス)

設定の確定ボタンをクリックする。これをコマンドで行う場合は以下のコマンドを実行する。(筆者の環境ではフィルタの先頭2つがPPTPに関する設定になっているため、3〜5番目への設定となっている)

nat descriptor masquerade static 1000 3 (NASのIPアドレス) esp
nat descriptor masquerade static 1000 4 (NASのIPアドレス) udp 500
nat descriptor masquerade static 1000 5 (NASのIPアドレス) udp 4500

静的IPフィルタの登録

トップ画面に戻り、

詳細設定と情報>ファイアウォール設定 の順に進む。

「ファイアウォールの設定インタフェース」のうち、接続を受けるために使用するインタフェース(プロバイダ)の行のIPv4フィルタの設定ボタンをクリックする。

「IPv4 静的IPフィルタの一覧」の追加ボタンをクリックし、「IPv4 静的IPフィルタの登録」画面で次の3つを追加する。

フィルタ番号フィルタ・タイププロトコル送信元IPアドレス送信元ポート番号受信先IPアドレス受信先ポート番号
(任意)pass(ログなし)esp**(NASのIPアドレス)*
(任意)pass(ログなし)udp**(NASのIPアドレス)500
(任意)pass(ログなし)udp**(NASのIPアドレス)4500

設定の確定ボタンをクリックする。

戻るボタンをクリックして「IPv4 静的IPフィルタの一覧」画面に戻り、追加した行の「適用 入」のチェックボックスをオンにして設定の確定ボタンをクリックする。

なお、これをコマンドで行う場合は次のコマンドを実行する。(筆者の環境ではフィルタの先頭2つがPPTPに関する設定になっているため、3〜5番目(200082〜200084)への設定となっている)

ip filter 200082 pass * (NASのIPアドレス) esp * *
ip filter 200083 pass * (NASのIPアドレス) udp * 500
ip filter 200084 pass * (NASのIPアドレス) udp * 4500

L2TP/IPsecのリモートアクセスのためには、UDPの1701番ポートをリモートアクセスサーバー(本記事で言えばNAS)に向ける(NATを設定する)必要があると書かれている記事が多いが、今回はこの設定はRT58i側には不要だった。

QNAPのNASの設定

ウェブブラウザで設定画面にログインする。

「QVPN Service」を起動する(ない場合はインストールする)。

左段メニューの「VPNサーバー設定」の下の「L2TP/IPSec」をクリックする。

「L2TP/IPSec VPNサーバーを有効にする」のチェックボックスをオンにする。

事前共有鍵に、任意の文字列を入力する。

適用ボタンをクリックする。

左段メニューの「VPNサーバー設定」の下の「権限設定」をクリックする。

VPNユーザーの追加ボタンをクリックしてNASのユーザーを追加し、「L2TP/IPSec」の列のチェックボックスをオンにする。

左段メニューの「概要」をクリックする。

L2TP/IPSecのステータススイッチをオンにする。

【注】IPsecの「s」は正しくは小文字であるが、QVPN Service内では「IPSec」(「S」が大文字)と表記されているため、本記事もそれに合わせている。

【参考】iOSの設定

設定アプリを起動する。

一般>VPN の順に進む。

「VPN構成を追加…」をタップする。

次のように設定する。

タイプL2TP
説明(任意の文字列)
サーバ(RT58iのWAN側IPアドレス)
アカウントQNAPのNASの「権限設定」で追加したユーザー名
RSA SecurIDオフ
パスワードNASのユーザーのパスワード
シークレット(事前共有鍵)
すべての信号を送信オン

RT58iではIPv6接続オプションとIPoE接続によるIPv6インターネットの利用は不可能(旧題・RT58iでIPv6接続オプションを使用する方法)

【本記事について】
当初(2018年4月11日)、本記事では「ヤマハネットワーク周辺機器 FAQ」をもとに「あなたの IPv6 接続性をテストしましょう。」や「ipv6 test」などでのテスト結果を根拠として設定手順を記載していましたが、2019年現在、RT58iではIPv6接続オプションを使用して、IPoE接続によるIPv6インターネット接続を行うことは不可能であることが確認されたため、本記事の内容は撤回いたします。(2019年9月30日)

なお、「こうすればできる」という記事は多いものの、「これではできない」という情報も有益であると思われるため、元の記事内容も削除はせずに残します。

【IPv6が使用できないことが確認された組み合わせ】

種別 名称 提供者
回線サービス フレッツ 光ネクスト マンションタイプ(プラン2) NTT東日本
回線オプションサービス フレッツ・v6オプション基本契約 NTT東日本
プロバイダサービス @nifty光ライフ with フレッツ 東日本 光ネクスト(マンションプラン2) ニフティ(ノジマ)
プロバイダオプションサービス IPv6接続オプション ニフティ(ノジマ)
VDSLモデム VH-100「4」E「S」 NTT東日本
ルーター RT58i(バージョンRev.9.01.53) ヤマハ

この組み合わせでは、ルーター自体はフレッツ網にIPoE接続できているように見えますが、端末がIPv6でインターネットに接続することはできません

IPoEによる接続は多くの場合、ウェブブラウジングをはじめとするインターネット利用の高速化を目的として行われると思いますが、この目的の場合、「v6プラス」への対応を明示しているルーター等を利用されることをおすすめします。

【以下、撤回した記事の元の内容】
フレッツ対応の各プロバイダが提供する「IPv6接続オプション」(業者によっては、単に「IPv6オプション」)をヤマハの2006年のルーターRT58iで使用するための設定手順。

※本稿の対象は「v6プラス」ではない方の「IPv6接続オプション」です。

1.ブラウザで「RT58i かんたん設定ページ」にログインする

2.「詳細設定と情報」をクリックする。

3.「レポートの作成・コマンド実行・初期化」の「コマンドの実行」の行の「実行」をクリックする。

4.テキスト入力欄に次の文字列を入力する。

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 dhcp service client ir=on
dns server dhcp lan2

出典:http://www.rtpro.yamaha.co.jp/RT/FAQ/FLETS-HIKARI-NEXT/ipv6_ipoe.html

5.「設定の確定」をクリックする。

ルーターの再起動や再接続は不要である。
また、プロバイダの設定は従来の「PPPoEを用いる端末型ADSL接続(フレッツ・ADSL、Bフレッツ)」のままでよく、「IPv6/IPv4同時接続 (プラグ・アンド・プレイ機能) を行うADSL接続」で作り直す必要はない。

T-bao Tbook Airレビュー

【2018.1.2加筆しました】ウィンタブさんの記事によると、本製品の一部にWindowsのライセンス認証の問題を抱えているものが出荷されていることが分かりました。筆者も別途用意したライセンスに変更しました。

【2017.9.24加筆しました】

【2017.8.13加筆しました】

ウィンタブさんのサイトを見て、最近Jumperという中華ノートPCが日本でも人気を集めていることを知り、さらに読み進めていたら、後発のT-bao(漢字表記では「天宝」)というメーカーから「Tbook Air」という薄型ノートPCが発売されたとのことだったので、購入しレビューする。 “T-bao Tbook Airレビュー” の続きを読む

MSX BASIC Viewer (Web版)

Windows用アプリケーション「MSX VIEWer」をウェブアプリケーション化しました。
バージョン1.0.0(ビルド201611201410)を公開します。
Web版の他、iOS版、Android版、Windows版(32ビット)があります。

iOS版(iPhone / iPad)はこちら Android版はこちら
Windows版はこちら
表示例

別のウィンドウ(またはタブ)で開く

“MSX BASIC Viewer (Web版)” の続きを読む