Tutorial
ISP向けMikroTik PPPoEサーバー
ISP向けにMikroTik PPPoEサーバーを構築する方法:IPプール、PPPプロファイル、secrets、rate limit、CGNAT背後の加入者のリモート管理。
概要 MikroTik PPPoEサーバーを使うと、ISPは加入者を認証し、各人にIPアドレスを割り当て、プランごとの速度制限を適用できます。すべてRouterOSから行え、小規模な導入では外部RADIUSは不要です。設定は短く順序立った連鎖です。IPプール、PPPプロファイル、加入者のsecrets、PPPoEサービス、そしてNATです。より難しい問題は、1台のコンセントレーターを設定することではなく、多数で一貫した検証可能な設定を運用することであり、しばしばCGNATの背後にあります。本ガイドは両方を扱います。

MikroTik PPPoEサーバーとは?
MikroTik PPPoEサーバーは、各加入者をPoint-to-Point Protocol over Ethernet経由で認証し、プールからIPを渡し、ゲートウェイ・DNS・速度制限を制御するプロファイルを適用するRouterOSのサービスです。これがほとんどの中小ISPが顧客接続を管理する方法です。顧客はユーザー名とパスワードでダイヤルし、サーバーが資格情報を確認し、セッションは割り当てられたプランを継承します。別個の機器なしで、ユーザーごとの認証、IP割り当て、帯域制御が行えます(MikroTikドキュメント — PPPoE)。
PPPoEが説明責任ゆえにISPの標準であり続けています。各加入者は個別の資格情報を持つため、未払いでアカウントを無効化し、誰がオンラインかを確認し、固定アドレスや速度を個人に結び付けられます。これらはブリッジやDHCP配信ではきれいに得られません。設定全体は1つの考えに帰着します。プランをプロファイルで一度定義し、そこに加入者を結び付けるのです。
ステップ1 — IPプールを作成する
RouterOSが加入者に貸し出すアドレスから始めます。プールは名前付きブロックで、例えば/ip pool add name=pppoe-pool ranges=10.20.0.2-10.20.255.254のように、このコンセントレーターが担う同時セッションに余裕を持たせて規模を合わせます。プロファイルのゲートウェイアドレス(local-address)は貸し出し範囲の外に置き、誤ってクライアントに渡らないようにします。
プールはハードウェアに合わせて規模を決めます。控えめなルーターは数百セッション、CCRクラスの機器は数千を扱います(Tech@Layer-x — PPPoE Server on MikroTik for ISP Deployments)。代わりにパブリックIPを配るには、プールをルーティング可能なブロックに向け、ステップ5のNATを省きます。
ステップ2 — PPPプロファイルを構築する
PPPプロファイルはプランが生きる場所です。local-address(各加入者が見るゲートウェイ)、ステップ1のremote-addressプール、DNSサーバー、そして—ISPに最も重要な—各セッションを制限するrate-limitを設定します。プロファイルを加入者に割り当てれば速度を継承するので、「20/10」プランは数千のアカウントで再利用される1つのプロファイルです(madankc.com.np — MikroTik PPPoE Server Complete Setup Guide)。
ある詳細がほぼ全員をつまずかせます。方向です。RouterOSはプロファイルのrate-limitをrx-rate/tx-rateとしてサーバーの視点で読みます。加入者のアップロードが先、ダウンロードが後で、顧客がプランを説明する順とは逆です。「下り100Mbps/上り30Mbps」のパッケージはrate-limit=30M/100Mと書きます。逆にすると各顧客は静かに入れ替わったプランを受け取ります。まさにテンプレート設定が防ぐフリート規模の誤りです。
ステップ3 — 加入者のsecretsを追加する
各加入者には「secret」が必要です。/ppp secretの下に作成する、ユーザー名、パスワード、そしてプランを定義するプロファイルです。小規模なら、これがユーザーデータベース全体です。顧客ごとにsecretを追加し、必要なら静的IP用に固定のremote-addressを留め、サービスを停止するにはsecretを無効化します。これはMikroTikのUser Managerがホットスポット加入者向けに拡張する、同じ資格情報ごとの説明責任であり、10.5.50.1ホットスポットゲートウェイとUser Managerのガイドで扱っています。
ローカルsecretsは数百から数千の範囲でスケールしなくなり、顧客変更ごとに1台のルーターを編集することがボトルネックになります。その時点で認証を外部RADIUSサーバーへ移し、コンセントレーターはRADIUSにログインが有効かを尋ねるだけになり、加入者データベースを1か所に保ちます。
ステップ4 — アクセスインターフェースでPPPoEサーバーを有効化する
次にサービスを有効化します。/interface pppoe-server serverでPPPoEサーバーを追加し、アクセスネットワークに面したインターフェース(ポート、VLAN、またはbridge)にバインドし、そのdefault-profileをステップ2のプロファイルに設定し、認証方式を選びます。pap、chap、またはmschap2です。RouterOSはそのインターフェースでPPPoEディスカバリーに応答し、有効なsecretでダイヤルするクライアントを認証します。
規模では2つの設定が重要です。one-session-per-hostオプションは加入者が複数の同時セッションを開くのを防ぎ、max-mtu/max-mruはPPPoEのオーバーヘッドが顧客トラフィックを断片化しないよう設定すべきです。アクセスネットワークが顧客やゾーンごとに分割される場合、MikroTik bridge構成ガイドがサーバーが乗るレイヤー2の基礎を扱います。
ステップ5 — NATとファイアウォールのルールを追加する
ステップ1で加入者にプライベートアドレスを割り当てた場合、そのトラフィックには変換が必要です。各PPPoEセッションがインターネットに届くよう、WAN出力インターフェースにバインドしたsrcnatチェーンにmasqueradeルールを追加します。これはMikroTikでのNAT構成ガイドで扱う同じNATの基礎です。パブリックIPを配ったなら、masqueradeを省きブロックをルーティングします。
次にコンセントレーターを保護します。PPPoEサービスは加入者から到達可能であるべきですが、ルーターの管理インターフェースはそうあってはなりません。そこで、加入者側からのWinbox、API、WebFigアクセスを破棄するファイアウォールルールを追加します。実際の顧客収益を担うコンセントレーターは、まさに乗っ取られたセッションから到達可能にしたくない機器です。
ステップ6 — フリートをリモートで管理・検証する
ここが単一ルーターのチュートリアルが飛ばす部分です。1台でPPPoEを立ち上げるのは簡単ですが、数十のコンセントレーターで同一のプロファイル、MTU設定、ファイアウォールルールを運用し—各々がセッションを認証し正しいrate limitを適用することを証明する—のが本当のISPの問題です。アクセスルーターがパブリックIPなしでCarrier-Grade NATの背後にあるとさらに難しくなり、事業者がLTEやStarlinkのアップリンクに頼るにつれ一般化しています。
ここで集中管理が真価を発揮します。MKControllerは、パブリックアドレスがなくても各ルーターを認証済みのアウトバウンドトンネル経由で到達可能に保ちます。これはCGNAT背後のMikroTikリモートアクセスガイドと同じ手法で、設定を監査しフリート全体に修正を配布でき、顧客が電話する前にセッション落ちの機器を知らせるテレメトリを備えます。
ヒント
- secretsではなくプロファイルをテンプレート化する。プラン変更は1つのプロファイルに触れるべきで、数千のアカウントには決して触れない。
- コンセントレーターのCPUに注意する。
rate-limitによるセッションごとのキューは積み重なり、過負荷の機器は静かにセッションを落とす。 max-mtu/max-mruを意図的に設定する。PPPoEは8バイトのオーバーヘッドを加え、結果として生じる断片化は多くの「1拠点だけ遅い」チケットの隠れた原因です。- 数百ユーザーを超えたら認証を集中化する。ルーターに散在するローカルsecretsは監査が不可能になる。
PPPoEエッジ全体を1画面から制御する
1台のMikroTikでのPPPoEサーバーは簡単です。ISPのフリート全体で運用する—同一のプロファイル、各機器で正しいrate-limitの方向、管理を施錠し、各コンセントレーターがパブリックIPなしのCGNAT背後でも認証する証明—のが、事業者が午後をまるごと失うところです。それがMKControllerの作られた仕事です。各ルーターに安全なアウトバウンドトンネルで到達し、設定を監査し、ライブセッションを監視し、フリート全体に一度に修正を配布し、顧客が電話する前にセッション落ちの機器を知らせるテレメトリを備えます。これがMikroTikでPPPoEを運用するISPが、ルーターごとの雑務を単一の制御プレーンに変える方法です。