OpenWrt 謹製ファームウェアへ書き換えた 中国移動 RAX3000M WiFi6ルータを、 アクセスポイント モード(いわゆるDumb AP)に設定しました。
アクセスポイント化への手順
既にこれまで何機かのOpenWrtルータをDum AP化してきましたが、今回はハードウェア構成がほぼ同じな、H3C Magic NX30 Proの例から、その設定を限りなくコピペ流用できる見込み。
手順は基本的に以下の通り。
- WANを廃して有線無線全てLANに
- DHCPやDNS、Firewallを停めて自身もDHCPクライアントに
- 無線インターフェイスを適宜設定
ちなみに、OpenWrt公式ドキュメントにもアクセスポイント化(Dumb AP)の手順が、LuCIベース、コマンドラインベース双方で丁寧に解説されています。
/etc/config/network
まず、ネットワークインターフェイスが定義されている /etc/config/network ファイルから。OpenWrtデフォルト設定は次の通り。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
config interface 'loopback' option device 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option ula_prefix 'fdce:fa3e:10d4::/48' config device option name 'br-lan' option type 'bridge' list ports 'lan1' list ports 'lan2' list ports 'lan3' config interface 'lan' option device 'br-lan' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option ip6assign '60' config interface 'wan' option device 'eth1' option proto 'dhcp' config interface 'wan6' option device 'eth1' option proto 'dhcpv6' |
これを次のように有線ポートをLANへ集約してしまいます。LANのプロトコルをDHCPにするのは作業の終わりで。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
config interface 'loopback' option device 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' option ipv6 '0' config globals 'globals' option packet_steering '1' config device option name 'br-lan' option type 'bridge' option ipv6 '0' list ports 'lan1' list ports 'lan2' list ports 'lan3' list ports 'eth1' config interface 'lan' option device 'br-lan' # option proto 'dhcp' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option gateway '192.168.1.1' option dns '192.168.1.1' option ipv6 '0' config inrerface option name 'lan1' config inrerface option name 'lan2' config inrerface option name 'lan3' config inrerface option name 'eth1' |
変更を適用し、 lo や br-lan からIPv6アドレスが消えているのを確認しました。
|
1 2 3 4 |
root@RAX3000M:~# uci commit network root@RAX3000M:~# /etc/init.d/network restart 'radio0' is disabled 'radio1' is disabled |
/etc/config/dhcp
次は /etc/config/dhcp ファイル、デフォルトは次の通り。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
config dnsmasq option domainneeded '1' option boguspriv '1' option filterwin2k '0' option localise_queries '1' option rebind_protection '1' option rebind_localhost '1' option local '/lan/' option domain 'lan' option expandhosts '1' option nonegcache '0' option cachesize '1000' option authoritative '1' option readethers '1' option leasefile '/tmp/dhcp.leases' option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto' option nonwildcard '1' option localservice '1' option ednspacket_max '1232' option filter_aaaa '0' option filter_a '0' config dhcp 'lan' option interface 'lan' option start '100' option limit '150' option leasetime '12h' option dhcpv4 'server' option dhcpv6 'server' option ra 'server' option ra_slaac '1' list ra_flags 'managed-config' list ra_flags 'other-config' config dhcp 'wan' option interface 'wan' option ignore '1' config odhcpd 'odhcpd' option maindhcp '0' option leasefile '/tmp/hosts/odhcpd' option leasetrigger '/usr/sbin/odhcpd-update' option loglevel '4' |
ここから、 lan のDHCPサーバ機能を無効化します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
config dnsmasq option domainneeded '1' option boguspriv '1' option filterwin2k '0' option localise_queries '1' option rebind_protection '1' option rebind_localhost '1' option local '/lan/' option domain 'lan' option expandhosts '1' option nonegcache '0' option cachesize '1000' option authoritative '1' option readethers '1' option leasefile '/tmp/dhcp.leases' option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto' option nonwildcard '1' option localservice '1' option ednspacket_max '1232' option filter_aaaa '0' option filter_a '0' config dhcp 'lan' option interface 'lan' option ignore '1' config dhcp 'wan' option interface 'wan' option ignore '1' config odhcpd 'odhcpd' option maindhcp '0' option leasefile '/tmp/hosts/odhcpd' option leasetrigger '/usr/sbin/odhcpd-update' option loglevel '4' |
変更を適用して、サービスを再起動。
|
1 2 |
root@RAX3000M:~# uci commit dhcp root@RAX3000M:~# /etc/init.d/dnsmasq restart |
/etc/config/firewall
ファイアウォール設定ファイル、 /etc/config/firewall のゾーン定義部分のデフォルトは次の通り。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
config defaults option syn_flood 1 option input REJECT option output ACCEPT option forward REJECT # Uncomment this line to disable ipv6 rules # option disable_ipv6 1 config zone option name lan list network 'lan' option input ACCEPT option output ACCEPT option forward ACCEPT config zone option name wan list network 'wan' list network 'wan6' option input REJECT option output ACCEPT option forward REJECT option masq 1 option mtu_fix 1 config forwarding option src lan option dest wan |
最終的にはサービスも停めてしまうのでどうでもいいのですが、取り敢えず設定を次のようにしてしまいます。
|
1 2 3 4 5 |
config defaults option syn_flood 1 option input ACCEPT option output ACCEPT option forward ACCEPT |
変更を適用して、サービスを再起動。
|
1 2 |
root@RAX3000M:~# uci commit firewall root@RAX3000M:~# /etc/init.d/firewall restart |
DHCPクライアントになる
以上、ルータの有線インターフェイス部分の変更を終えたら、 /etc/config/network のIPアドレス取得方法を静的からDHCPに変更して再起動、RAX3000Mのいずれかの有線ポートを既存のLANに繋いでIPアドレスを取得させます。
RAX3000Mが取得したIPアドレスを見つけてブラウザからアクセス。ネットワークインターフェイスを確認してみます。
不要なサービスの停止
不要になったDNS、DHCP、ファイアウォールの各サービスを停止の上、無効化してしまいます。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
root@RAX3000M:~# /etc/init.d/dnsmasq status running root@RAX3000M:~# /etc/init.d/dnsmasq stop root@RAX3000M:~# /etc/init.d/dnsmasq disable root@RAX3000M:~# /etc/init.d/dnsmasq status inactive root@RAX3000M:~# root@RAX3000M:~# /etc/init.d/odhcpd status running root@RAX3000M:~# /etc/init.d/odhcpd stop root@RAX3000M:~# /etc/init.d/odhcpd disable root@RAX3000M:~# /etc/init.d/odhcpd status inactive root@RAX3000M:~# /etc/init.d/firewall status active with no instances root@RAX3000M:~# /etc/init.d/firewall stop root@RAX3000M:~# /etc/init.d/firewall disable root@RAX3000M:~# /etc/init.d/firewall status inactive |
これら主要サービスを無効にしたりパッケージ削除しても、ファームウェアの更新時には元に戻ってしまうことに留意。
無線インターフェイスの設定
続いて無線インターフェイスは、H3C Magic NX30 Proの設定をほぼそのままコピペ流用して適用しました(デバイス固有部分のみ書き換え)。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
config wifi-device 'radio0' option type 'mac80211' option path 'platform/18000000.wifi' option channel '6' option band '2g' option htmode 'HE40' option country 'US' option cell_density '0' option txpower '28' option noscan '1' config wifi-iface 'default_radio0' option device 'radio0' option network 'lan' option ifname 'wlan0' option mode 'ap' option ssid 'CMCC' option encryption 'psk2+ccmp' option key '########' option logger_syslog_level '1' option ieee80211r '1' option nasid 'C875F4######' option mobility_domain '4765' option ft_over_ds '0' option ft_psk_generate_local '1' config wifi-device 'radio1' option type 'mac80211' option path 'platform/18000000.wifi+1' option channel '40' option band '5g' option htmode 'HE160' option country 'US' option cell_density '0' option txpower '23' config wifi-iface 'default_radio1' option device 'radio1' option network 'lan' option ifname 'wlan1' option mode 'ap' option ssid 'CMCC' option encryption 'psk2+ccmp' option key '########' option logger_syslog_level '1' option ieee80211r '1' option nasid 'C875F4######' option mobility_domain '4765' option ft_over_ds '0' option ft_psk_generate_local '1' |
設定を適用してLuCI上で確認してみます。
|
1 2 |
root@RAX3000M:~# uci commit wireless root@RAX3000M:~# /etc/init.d/network restart |
2.4G帯WiFi設定では、NX30 Proでは設定できた最大出力28dBm (630mW)が、本機では27dBm (501mW)止まり。おそらくファームウェアビルド時の機種毎の設定なのでしょう。
2.4G帯、5G帯各インターフェイス共に、lanネットワークに紐付け。
NX30 Proで見つけた5G帯チャンネルによって最大出力が異なったり、設定通りの出力が出ないことがあるのは、本機も全く一緒。
5G帯のスピードテストでは、有線LANや外向き上限の1Gbpsに準ずる文句なしの結果に。

図10.5G帯スピードテスト結果
次ページでは、有線・無線インターフェイス設定後のポストセットアップ事項に進みます。










