ここ数年、シングルボードコンピュータの価格が急激に上昇しています。特に、ルーターとして使用できるデュアルネットワークポートを備えた安価なモデルは、手を出しにくくなっています。その中で、安価といえる選択肢としてNanoPi R2Sがありますが、価格はUS$25.00からと手頃な反面、RK3328プロセッサと1GBのメモリしか搭載されておらず、パフォーマンスは控えめです。このスペックでは、高負荷のネットワークタスクを処理するには少々厳しいものがあります。
もう少し高性能な選択肢としてNanoPi R4Sがあります。こちらはRK3399プロセッサを搭載しており、4GBメモリバリアントが選べます。しかし、価格は一気に跳ね上がり、4GBモデルはUS$65.00、ケース付きになるとUS$75.00になります。性能面では魅力的ですが、この価格を考慮すると、手軽に導入するには少々高価に感じるかもしれません。
次に挙げられるのはRock Pi Eですが、RK3328プロセッサを搭載し、4GBメモリバリアントが用意されています。しかし、問題はネットワークポートの片方が100Mbpsである点です。これは、現代の高速インターネット環境ではボトルネックになる可能性が高く、実用的ではありません。また、RADXA E25も興味深い製品です。RK3568プロセッサを搭載し、最大8GBメモリバリアントが提供されていますが、4GBメモリモデルの価格はUS$75.00と、こちらもやや高額です。確かに性能は優れているものの、予算に制約がある場合は選択肢から外れるかもしれません。
そんな中、発見したのがSeeed StudioのLinkstar H28Kです。RK3528チップセットを搭載しており、超高速とは言えないものの、1GbE対応のデュアルネットワークポートを備え、しかも4GBメモリバリアント(0408)が選べます。さらに、8GBのeMMCも搭載されており、ルーター用途には十分なスペックです。電源供給はType-Cポートを使用し、PD対応で5Vから12Vまでの範囲に対応しているのも便利です。驚くべきはその価格で、メタルケース入りのモデルがUS$39.90という非常にリーズナブルな設定になっています。2GBメモリバリアント(0208)もUS$34.90で販売されていますが、わずかUS$5の差しかないため、迷わず4GBモデルを選ぶのが賢明でしょう。
このLinkStar H28Kは、LinuxやOpenWRTが動作するため、TFカードにOpenWRTをインストールして挿入すれば、すぐにルーターとして機能します。GUIで簡単に設定ができるため、初心者でも安心して使えるのが大きな魅力です。(実際には普通以上のネットワークの知識が必要です)

LinkStar-H28K-0208, 2GB RAM & 8GB eMMC, Quad-core, PCIE/RGMII Gigabit Port, Travel RouterをSeeed Studioの公式サイトから購入しました。LinkStar-H28K-0408はUS$39.90、送料はUS$5.90で、合計US$45.80。日本円に換算すると、購入時のレートで6,997円でした。もちろん、家庭用のブロードバンドルーターをこの価格で購入することもできますが、カスタマイズ性や機能性を考えれば、このモデルは非常に魅力的です。

注文してから約10日後、中国郵政を通じて商品が到着しました。写真を見てもわかるように、箱は多少潰れていましたが、国際配送ではよくあることなので特に問題はありません。

箱の中には、プチプチに包まれた小さな箱と、使い道がよくわからないシールが1枚入っていました。

このシールは折り目がついていて、役立ちそうにありませんが、記念品的な要素として付属しているのかもしれません。

ルーター本体はメタルケースに収められており、手に持つと驚くほど重厚感があります。箱ごと重さを測ってみたところ、151gありました。

箱の裏面には「eVarmaster」(欧税通)と書かれていましたが、これはおそらく製品とは無関係な情報のようです。欧州向けの税関関連の表示のようなので、特に気にする必要はないでしょう。

箱の中身には、ビニールに包まれたルーター本体と、箱の縁に貼られていたブートピンが付属していました。このピンは、システムを再起動する際に使用するためのものですが、頻繁に使うことはないでしょう。必要な場合は、針金などでも代用できますが、付いているのは親切といえます。

ルーター本体の前面には、右下にTFカード(microSDカード)スロットがあり、その中央下には4つのLEDインジケーターが配置されています。これらのLEDは、動作状態を視覚的に確認するのに便利です。

背面には2つのネットワークポート、1つのUSB-Aポート、ブートピン用の穴、そしてType-Cポートが配置されています。このType-Cポートは電源用で、5Vから12VのPD対応となっています。OpenWRTを利用する際には、左側のポート0がLAN側、右側のポート1がWAN側として初期設定されています。初回起動時には左側のポートをLANに接続し、192.168.1.1/24にアクセスすることで設定を開始できます。
以下、LinkStar-H28K Wiki からOpenWRTのイメージファイルをダウンロードし、それをmicroSDカードに書き込むことで、LinkStar-H28KをOpenWRTルーターとして設定する手順です。

まず、LinkStar-H28K用のOpenWRTのイメージファイルをダウンロードし、microSDカード (TFカード)に書き込み、LinkStar-H28Kのカードスロットに挿し込みます。次に、Type-Cの電源ケーブルをLinkStar-H28Kに接続して起動します。初期設定では、LinkStar-H28KのIPアドレスは192.168.1.1/24に設定されているため、192.168.1.0/255.255.255.0の範囲内にあるLAN環境を用意します。ただし、LinkStar-H28KにはDHCPサーバが標準で有効になっているため、ルーター、HUB、PCがあれば自動的にIPアドレスが割り当てられ、接続が確立します。
接続が完了したら、ブラウザを開き、アドレスバーに「http://192.168.1.1」と入力してアクセスします。
ログイン画面が表示されたら、ID「root」、パスワード「password」を入力してログインします。

ログインに成功すると、最初に「Overview」ページが表示されます。このページで、LinkStar-H28Kの基本情報を確認できます。LinkStar-H28Kには、ARMv8アーキテクチャの4コアプロセッサであるRK3528が搭載されています。メモリは総量3934MBのうち、初回起動直後の状態では約3844MBが空いており、約90MBがシステムに使用されています。このシンプルなインターフェースで、デバイスの状態やリソースの使用状況を一目で確認できます。

次に、WAN(インターネット側)接続を設定します。今回は、WAN接続をPPPoE方式で設定します。近年主流のIPv4 over IPv6接続(日本では何故かこれがIPoEなどと呼ばれています)のMAP-Eは初期状態では対応パッケージが含まれていないため、利用できません。また、DS-Liteも同様の理由で初期状態では設定できない可能性があります。
まず、WAN側のネットワークポートをONUなどのインターネット接続デバイスにネットワークケーブルで接続します。
次に、左側のメニューから「Network」の「Interfaces」を選択します。
インターフェース一覧が表示されるので、右側の「WAN (eth1)」の列にある「EDIT」ボタンをクリックして、詳細な設定を進めます。

WAN(IPv4)のプロトコルの初期設定は「DHCP client」となっています。まずはこれを変更します。設定画面でWAN(IPv4)をクリックすると、プルダウンメニューが表示されますので、その中から「PPPoE」を選択します。この操作により、プロバイダが提供するインターネット接続方式に適応させることができます。
「PPPoE」は、主に光ファイバーやADSL接続で使用されるプロトコルで、多くのインターネットサービスプロバイダ(ISP)で標準的に採用されています。

次に、選択したプロトコルが「PPPoE」として正しく反映されていることを確認します。画面上部の「SWITCH PROTOCOL」ボタンをクリックしてプロトコル変更を確定します。これで、WAN接続の方式が「PPPoE」に変更され、プロバイダの認証情報の入力が可能になります。
正しく設定しないと、インターネット接続が確立できないため、このステップは非常に重要です。

プロバイダから提供されたPAP/CHAPの「username」と「password」を入力します。これらの認証情報は、接続の際にプロバイダと通信するために必要不可欠です。特に、入力内容を間違えるとインターネットに接続できないため、慎重に確認しながら入力します。
この2つの情報を正しく入力したら、一番下にある「SAVE & APPLY」ボタンをクリックします。これにより設定が保存され、接続が適用されます。

設定を保存したら、自動的にインターフェース一覧画面に戻ります。ここで、WAN(IPv4)のインターフェースが「eth1」から「pppoe-WAN」に変わっているか確認します。ここで一番下の「SAVE & APPLY」ボタンをクリックするのを忘れないようにします。この操作を忘れると、設定が反映されず、通信が開始されない場合があります。
初めての設定では、これを忘れることがあると予想されるため注意が必要です。

少し時間が経つと、WAN(IPv4)のRX(受信)とTX(送信)の数値が増加しているのを確認できます。これにより、インターネット接続が正常に開始されたことが確認できます。
これで、PPPoE接続の設定は完了です。問題なくインターネットに接続できているか、ブラウザを開いて確認してみると良いでしょう。
PPPoEの接続設定はこれで終わりです。

パッケージのインストールを行いたい場合は、左メニューから「System」内の「Software」を選択します。右側の列の上部には「No package lists available」と表示されているはずです。この表示がある場合は、右側にある「UPDATE LISTS」ボタンをクリックして、パッケージリストを更新します。
なお、パッケージリストはルーターを再起動すると保存されず、再び「No package lists available」と表示されるので、必要に応じてリストを更新する必要があります。

通常、初期設定では5つのパッケージリストがダウンロードされますが、ダウンロードの進行状況は表示されません。ダウンロード完了まで少し待つ必要があります。特に通信速度が遅い場合や、多くのリストが存在する場合は、数分ほどかかることがあります。

パッケージを検索します。今回は、Filter欄に「luci」と入力します。「luci」はOpenWRTのユーザーインターフェースを管理するプログラムです。検索が完了したら、「FIND PACKAGE」ボタンをクリックします。
ページ下部に、luci関連のパッケージが一覧表示されます。ただし、今回は未インストールのパッケージをインストールするため、「Available packages(luci)」タブを選択してください。これで、インストール可能なluciパッケージのリストが表示されますので、必要なパッケージを選んでインストール作業を進めます。

「luci」というキーワードを入力して検索を行うと、数多くの結果が表示されます。その中から必要なパッケージを見つけるため、リストを下にスクロールしてください。そして「luci-i18n-base-ja」(luciのベース部分を日本語に翻訳するパッケージ)を探し出します。左側にある「Install」ボタンをクリックしてインストールを開始します。

確認ポップアップが表示されるので「OK」をクリックします。

インストールが失敗することなく、画面に白い文字で「Installing…」と表示されていれば、無事にインストールが進行しています。このプロセスは、終了タイミングがはっきりと表示されないため、少しだけ待つのが確実です。焦らず、しばらく時間を置いて確認します。

左メニューから「System」の項目に進み、「System」を選択します。
右列に表示されるタブの中から「Language and Style」を選びます。
このとき、Language欄にはデフォルトで「auto」が設定されていますので、ここをクリックしてプルダウンメニューを表示し、言語の選択肢から「日本語(Japanese)」を選びます。

Language欄が「日本語(Japanese)」に変更されたことを確認したら、画面下部にある「SAVE & APPLY」ボタンを押します。
これでメニューの言語が日本語表示に切り替わります。操作画面が日本語になることで、今後の設定や操作が一層わかりやすくなります。

「一般設定」タブを選択します。ここではタイムゾーンの設定を行います。
タイムゾーン欄のプルダウンメニューから「Asia/Tokyo」を選択し、正確な時間を表示できるように設定します。
さらに、「NTPサーバーを有効化」にチェックを入れます。
初期状態では、4つのNTPサーバー候補として中国のサーバーが設定されていますが、このままでは日本国内での利用に適していません。そのため、自前で運用しているNTPサーバーや、日本国内でよく使用されている公開NTPサーバーのホスト名やIPアドレスを入力します。
全ての設定を確認したら、画面下にある「保存&適用」ボタンをクリックして変更を反映させます。

ここまでの設定でIPv4のPPPoE接続を設定し、問題なくIPv4でインターネットに接続できる状態にしています。
しかし、現時点ではIPv6はLAN内で使用できるものの、インターネットに接続することができていません。そこで、次にIPv6でもインターネット接続ができるように設定を行います。
左側のメニューから「ネットワーク」タブを選び、その中にある「インターフェース」をクリックします。
次に、右側に表示されている「LAN」の行で「編集」ボタンをクリックします。

「LAN」の編集画面が開いた際、最初に表示されるインターフェースのタブは「LAN」が既に選択された状態になっているはずです。もしそうなっていれば、その部分は特に変更する必要はありません。
続いて、画面の下部にいくつかのタブがありますが、「一般設定」「詳細設定」「デバイス設定」「ファイアウォール設定」のどれでも構いません。「一般設定」ではルーターの基本的なネットワーク設定を変更することが可能です。OpenWRTのデフォルトIPアドレスは192.168.1.1ですが、必要に応じて192.168.0.1などに変更したり、既にLAN内で同じアドレスが使用されている場合は別のアドレスに変更することもできます。
ページの下部まで内容を確認するために、画面を下にスクロールしましょう。

スクロールしていくと、ページの下部に「DHCPサーバー」の設定欄が見えてきます。ここで「IPv6設定」タブをクリックします。
「ルーター広告-サービス」「DHCPv6サービス」「NDP-プロキシ」の項目が表示されるので、それぞれの値を「リレーモード」に変更します。
設定が完了したら、ページの最下部にある「保存&適用」ボタンを押して変更内容を反映させます。

OpenWRTのバージョンによっては「WAN6」タブが利用可能で、このタブで「LAN」と同じようにDHCP設定を行うことができます。具体的には、3つの項目を「リレーモード」に設定し、さらに「マスターモード」にチェックすることができます。しかし、今回使用しているバージョンでは「WAN6」側にDHCPサーバーの設定項目が存在しないため、この設定はWeb UIから行うことができません。
そのため、SSHを利用してルーターに接続し、手動で設定を追加します。(次)

SSHでルーターにroot@ルーターIPアドレスとpasswordで接続します。
/etc/config/dhcpファイルに6行追加します。エディタとしてvim(vi)が使えるので特に問題なく編集が可能です。
画像はログインして変更済みのファイルを閲覧しているものです。(編集ではありません)
config dhcp 'wan6'
option dhcpv6 relay
option ra relay
option ndp relay
option master 1
option interface 'wan6'

テキストファイルの編集が完了したら、ルーターを再起動します。
再起動は、左側のメニューから「システム」を選び、その中にある「再起動」オプションをクリックします。
右側に表示される「再起動する」ボタンを押すと、ルーターが自動的に再起動します。
ルーターが再起動したら、接続されている端末もIPv6設定を受け取るために再起動させる必要があります。ルーターに接続されている全ての端末が自動的にIPv6設定を取得し、インターネットへの接続ができるようになります。再起動かネットワークの再接続を行えば、設定が適用されます。
これで、最初に行うべき基本的な設定は全て完了しました。追加のファイアウォールやルーティング設定は必要に応じて追加で行います。

また、今回はPPPoE接続を利用しましたが、将来的にはMAP-Eを使ったIPv4 over IPv6接続に挑戦したいと考えています。ところが、MAP-E接続を試みるために必要なパッケージのインストールを行ったところ、エラーが発生してしまいました。パッケージが揃っていないため、この問題を解決するのは簡単ではなさそうです。
現状、OpenWRTではなく通常のLinuxを使用してMAP-Eの設定を行うほうが早そうですが、OpenWRT用のパッケージを揃えて設定を行うのも技術的に興味深い試みです。
OpenWRT自体はオープンソースで信頼できるプラットフォームですが、Linkstar用にSpeeedから提供されているOpenWRTは中国市場向けの設定が行われているため、何かしらのカスタムが施されている可能性があり、不安に感じる部分もあります。ArmbianがLinkstarボードをサポートしてくれると、より安心して利用できるのではないかと期待しています。
関連記事: