RouterOSにおける無線LAN メッシュネットワークの作り方

この記事は約10分で読めます。

はじめに

最近、在宅勤務のなどにより無線LANを使用する機会が増えることになり、それにより無線LANメッシュネットワークが注目されることが多くなりました。実際に現在販売される無線LANルーターはメッシュネットワークが組めることを売りにしているところも多いです。

この辺りはMikrotik(正確にはRouterOS)は昔から売りにしておりましたが、中々日本の方には周知できておりませんでした(技適による対応製品が多くなかったこともありますが)。

改めてrouterboard製品(正確にはRouterOSを使用しているもの)で無線LANメッシュネットワークの設定方法について記事を書いておくことにしました。

使用機材

  • hAP ac (RB962UiGS-5HacT2HnT)

日本国内における技適が通過している製品としてhAP acがありますが今回はこれを使用します。

hAP ac | MikroTik
Dual concurrent triple chain 2.4/5GHz AP, 802.11ac/a/n/b/g, Five Gigabit Ethernet ports, PoE-out on port 5, SFP, USB for 3G/4G support or storage
総務省 電波利用ホームページ | 技術基準適合証明等を受けた機器の検索
基準認証制度,技術基準適合証明,技術基準適合自己確認

想定している構成

今回は4台のhAP acを使用し、それぞれをアクセスポイントとして動作させるとともにWDS(Wireless Distribution system)によりhAP ac同士を接続することでメッシュネットワークを構築します。これにより4台のhAPを一つのアクセスポイントとして見立てることも出来るようになりローミングも行われるようになります。

そももWDSとは

WDS(Wireless Distribution System)とは、無線LANのインフラストラクチャーモードにおける機能の一つであり、別々のアクセスポイント同士を無線LANで接続させ、さらに各APに対して有線LANで接続されたネットワーク機器同士の間で各APを経由する通信を成立させる機能のことですね。ただしメーカーによって細かい定義が変わることがあるので互換性がないことがおおい。

無線LAN - アライドテレシス
無線LAN | 基礎知識 無線LANとは 無線LANのセキュリティ 無線ネットワーク構築のポイント 無線LAN
ココをおさえる! ブロードバンド用語のツボ

設定方法

meshインターフェースの作成

# AP1
/interface mesh
add mesh-portal=yes name=mesh-interface

# AP2
/interface mesh
add mesh-portal=yes name=mesh-interface

# AP3
/interface mesh
add mesh-portal=no name=mesh-interface

# AP4
/interface mesh
add mesh-portal=no name=mesh-interface

ネットワークの出口(ルーターに近い側)のアクセスポイントについてはmesh-portalyesにし有効にしましょう。これが設定されていないとパス経路が適切に計算されません。

Q. Can I have multiple entry/exit points to the network?

A. If the entry/exit points are configured as portals (i.e. proactive mode is used), each router inside the mesh network will select its closest portal and forward all data to it. The portal will then discover path on behalf of the router, if needed.

https://help.mikrotik.com/docs/pages/viewpage.action?pageId=8978441
さらに

またパラメータとしてReoptimize Pathsというパラメータがあります。これはパス経路が頻繁に変わるような環境においてその経路計算を素早く行うための設定値です。ただしWDSを経由してアクセスポイント同士の経路計算のための通信が増えますのでスループットが落ちるとされています。

家庭用で使用する分には基本的に有効にする必要は無いかと思います。

アクセスポイントのIPアドレスの設定

# AP1
/ip address
add address=192.168.88.1/24 interface=mesh-interface network=192.168.88.0
  
# AP2
/ip address
add address=192.168.88.2/24 interface=mesh-interface network=192.168.88.0
  
# AP3
/ip address
add address=192.168.88.3/24 interface=mesh-interface network=192.168.88.0

# AP4
/ip address
add address=192.168.88.4/24 interface=mesh-interface network=192.168.88.0

bridgeインターフェースの作成およびWifiインターフェースの追加

# bridgeインターフェースの追加
/interface bridge
add name=bridge1

# Wifiインターフェースをbridgeインターフェースに追加
/interface bridge port
add bridge=bridge1 interface=wlan1
add bridge=bridge1 interface=wlan2
add bridge=bridge1 interface=ether5
add bridge=bridge1 interface=ether2
add bridge=bridge1 interface=ether3
add bridge=bridge1 interface=ether4
add bridge=bridge1 interface=ether1

後述していますが、Meshネットワークを構成する際にはRSTPによるloop防止が必要になります。bridgeインターフェースを作成する際には既定でSTPとしてRSTPが選択されるため、明示的に記述しなくても大丈夫です。

Wifiのセキュリティプロファイルの設定

/interface wireless security-profiles

# 5GHz向けの接続用パスワード
set [ find default=yes ] supplicant-identity=MikroTik
add authentication-types=wpa2-psk disable-pmkid=yes eap-methods="" \
    mode=dynamic-keys name=mesh-key-a supplicant-identity="" \
    wpa2-pre-shared-key=<ssid:mesh-ssid-aのパスワード>

# 2.4GHz向けの接続用パスワード
add authentication-types=wpa2-psk disable-pmkid=yes eap-methods="" mode=\
    dynamic-keys name=mesh-key-g supplicant-identity="" \
    wpa2-pre-shared-key=<ssid:mesh-ssid-gのパスワード> 

Wifiインターフェース設定

/interface wireless

# Wifiインターフェース 2.4GHz向け設定
set [ find default-name=wlan1 ] \
    band=2ghz-g/n channel-width=20/40mhz-XX country=japan disabled=no frequency=2442 \
    hw-protection-mode=rts-cts mode=ap-bridge security-profile=mesh-key-g ssid=mesh-ssid-g \
    wds-default-bridge=bridge1 wds-mode=dynamic-mesh wireless-protocol=802.11 \
    wmm-support=enabled wps-mode=disabled

# Wifiインターフェース 5GHz向け設定
set [ find default-name=wlan2 ]  \
    band=5ghz-a/n/ac channel-width=20/40/80mhz-XXXX country=japan \
    disabled=no frequency=5180 hw-protection-mode=rts-cts mode=ap-bridge \
    security-profile=mesh-key-a ssid=mesh-ssid-a wds-default-bridge=bridge1 \
    wds-mode=dynamic-mesh wireless-protocol=802.11 wps-mode=disabled
POINT

ここで重要なパラメータはwds-default-bridgewds-modeです。

  • wds-default-bridge: WDSが設定されるインターフェースをどのbridgeに所属させるか、を設定する
  • wds-mode: WDSインターフェースを手動で設定するか動的に設定するか。

セキュリティをギチギチに設定するのであればstaticで設定しWDSインターフェースを手動で追加するべきでしょう。今回は設定を簡便化するため動的に設定するdynamic-meshを使用します。手動で設定するときは対向のAPのWifiインターフェースのMACアドレスを指定することで接続が出来るようになります。

この時点でうまくいっていればWDS同士で疎通が行われ始めているはずです。

meshインターフェースにbridgeインターフェースを追加する。

/interface mesh port
add interface=bridge1 mesh=mesh-interface
そもそも

なぜmeshインターフェースにbridgeインターフェースを所属させるという、二度手間に近い形にするかというと、メッシュネットワークという形である以上、ネットワークの経路が複数存在する形となりloopが発生することになります。meshインターフェースは単独でSTP(スパニングツリープロトコル)設定をももっていないため、RSTP設定が使用できるbridgeインターフェースを間に挟む形にしています。

Q. How is this better than RSTP?

A. It gives you optimal routing. RSTP is only for loop prevention.

https://help.mikrotik.com/docs/pages/viewpage.action?pageId=8978441

最後に

接続環境によっては接続と切断が繰り返す場合があります。その際はdisconnect-timeoutを長い時間に設定し直すことで改善する可能性があります。

# デフォルトでは3秒
/interface wireless set disconnect-timeout=

一応設定を確認しているつもりですが、接続が出来ないようならご指摘いただければ助かります。

公式サイト

ドキュメントサイトについて以前はwiki.mikrotik.comでしたが、現在は新サイトhelp.mikrotik.com/docs/ へ移行が進んでいます(全てのコンテンツが移行できているわけではない)。

HWMPplus (Mesh) - RouterOS - MikroTik Documentation
タイトルとURLをコピーしました