EdgeRouter X – 3. UPnP やポート転送を設定する ( UPnP / Port Forwarding )

今回は、 LAN 内に FTP サーバーがあったり、オンラインゲームをしたりする時に必要な UPnP と Port Forawding の設定をしてみます。

UPnP とか Port Forwarding ってナニ?

UPnP は LAN 内にある端末が WAN 側から通信を受け付けられるようルーターが自動的に Firewall 等々を変更する機能です。使い方を誤ると脆弱性を作ってしまうことになるので、色々議論はありますが、ルーターが UPnP 対応になっていること前提のソフトウェアやオンラインゲーム等たくさんあるので、設定してみます。 EdgeRouterは 2つの UPnP 機能を持っていますが、セキュリティの高い UPnP2 をコンフィグツリーから設定してみます。また、外部から LAN 内に立てたサーバー等にアクセスする際に必要な Port Fowarding の設定もしてみます。

今回はこのような作業になります。

  1. コンフィグツリーから UPnP2 機能を有効にする
  2. GUI から Port Forwarding の設定をする

今回の設定後はこんな感じになります。 Port Forwarding に関しては、 LAN 内の端末 192.168.1.21 に FTP サーバー (ポート 21) を立てたとして、それを WAN 側の適当なポート 50001 からアクセスさせるものとします。

設定値
ER-X ファームウェア 1.9.0
UPnP2
listen-on switch0
nat-pmp enable
secure-mode enable
wan eth0 (もしくは PPPoE0)
Port Forwarding
WAN Interface eth0 (もしくは PPPoE0)
Hairpin NAT Enable Harpin NAT
LAN Interface switch0
Original port 50001
Protocal Both
Forward-to address 192.168.1.21
Forward-to port 21
Description FTP

では設定してみます。


コンフィグツリーから UPnP2 機能を有効にする

ER-X の管理画面の Config Tree タブをクリックし、画面左のツリーから service > upnp2 をクリックして各種項目を設定します。

ER-X に管理者アカウントでログインし、 Config Tree タブをクリック 
service をクリック
upnp2 をクリック
listen-on の + Add ボタンをクリック
listen-on に switch0 を入力
nat-pmp に enable を入力
secure-mode に enable を入力
wan に eth0 (もしくは PPPoE0) を入力
Preview ボタンを押す
Apply ボタンを押す

screen-shot-2016-10-06-at-1-41-28-pm


GUI から Port Forwarding の設定をする

ER-X の管理画面の Firewall/NAT タブをクリックし、 Port Forwarding タブをクリックして各種項目を設定します。

ER-X に管理者アカウントでログインし、 Firewall/NAT タブをクリック 
Port Forwarding タブをクリック
WAN interface: eth0 (もしくは PPPoE0)
Hairpin NAT: Enable Hairpin NAT
LAN interface: switch0
+ Add Rule ボタンを押す
Original port: 50001
Protocol: Both
Forward-to address: 192.168.1.21
Forward-to port: 21 (FTP)
Description: FTP
Save ボタンを押す

screen-shot-2016-10-06-at-1-50-51-pm


ハードウェアオフロードを有効にする

それでは最後に、せっかくコンフィグツリーの使い方を覚えたので、ハードウェアオフロードを有効にしましょう。 MediaTek 製の SoC MT7621AT を搭載した ER-X プラットフォームは、既存の Cavium Octeon SoC ベースの EdgeRouter のようなハードウェアでのアクセラレーション機能がありませんでしたが、ファームウェア 1.8.5 より晴れて ER-X でも搭載されました。ただしデフォルトではオフになっています。ここまでの設定で特に問題がなく、 ER-X が思った通りに動作しているようであれば、ハードウェアオフロードを有効にしてみましょう。

ER-X に管理者アカウントでログインし、 Config Tree タブをクリック 
system をクリック
offload をクリック
hwnat に enable と入力
Preview ボタンを押す
Apply ボタンを押す

screen-shot-2016-12-10-at-9-11-07-pm
これにより NAT が SoC によるハードウェア処理になり、 IPv4 / IPv6 / VLAN / PPPoE / bridging 等が高速になります。ルーティング性能は 940 Mbps 程度まで出るようです。ちなみにファームウェア 1.9.0 からその下ある ipsec を enable にすると ER-X で IPsec の暗号化もハードウェア処理になりますが、バグによりこれを有効にすると L2TP が不安定になるので、 L2TP を使う人は有効にしない方がいいでしょう。

ハードウェアオフロードに関してはここに解説があります。

EdgeRouter – Hardware Offloading Explained

お疲れ様でした。 UPnP が有効になっていれば PS4 でインターネット接続診断をした際に “NAT タイプ2” と表示されるはずです。 PS4 も MAC アドレスを調べて IP アドレスを固定しておくといいでしょう。

また自分の WAN 側 IP アドレスを調べて、 FTP サーバーにアクセスできるか確認しておきましょう。スマートフォン等で携帯電話のネットワークを利用して確認してもいいですし、 Hairpin NAT が有効になっているので、 LAN 内からでも WAN 側 IP アドレス経由でアクセスすることができるはずです。・・できなかったら・・・どこか設定が間違ってます(笑)。


yabe.jp » Gadgets » EdgeRouter X – 3. UPnP やポート転送を設定する ( UPnP / Port Forwarding )