物理ポートに付く VLAN 番号を、設定ではなくサーバの返事で決める
図 3 で人が設定に書いた「物理ポートと VLAN 番号」の結びつきを、つながれるたびにサーバへ問い合わせて決める形に置き換える。MAB と RADIUS のやり取りを 1 本の通信として追う
目次
図 3 では、物理ポートに VLAN 番号を人が設定で付けました。図 17 の最後に出たポートセキュリティも、その物理ポートに許す MAC アドレスを人が決め打ちする方法でした。どちらも、機器ごとに人が書きます。
図 18 では、その決め打ちをサーバ 1 か所に集めます。物理ポートに何を付けるかは、ケーブルがつながれるたびにサーバへ問い合わせて決まります。
この連載は、ネットワークの言葉をもの(物理と論理)、結びつき(手動、自動、固定)、通信フロー(1 本の通信がこれらを順に通る流れ)の 3 層に置いています。ここで変わるのは、結びつきの作り方です。
登場するもの
認証・認可の台帳
RADIUS サーバが持つ論理のものです。誰に何を許すかが載ります。誰は MAC アドレスか利用者名、何を許すかは VLAN 番号や ACL です。
物理ポートごとの認証の状態
スイッチが持つ論理のものです。どの物理ポートに、どの MAC アドレスが、どの方式で、許可されたかを持ちます。
事前共有鍵
スイッチとサーバの両方に人が同じ文字列を入れます。そのスイッチが問い合わせてよい相手であることの根拠になります。
AAA の 3 つ
認証は誰かを確かめること、認可は何をしてよいかを決めること、アカウンティングは記録を残すことです。記録だけは宛先ポート番号 1813 を使う別のやり取りです。
802.1X と MAB
802.1X は端末が自分で名乗る方式です。MAB は名乗る仕組みを持たない機器のために、スイッチがその MAC アドレスで代わりに問い合わせる方式です。MAC アドレスは詐称できるので強い認証ではなく、名乗れる端末には 802.1X を使います。
結びつき
物理ポートと VLAN 番号の結びつきが、手動からサーバの返事による自動に変わります。これがこの 1 枚の主題です。
MAC アドレスと許可の結びつきは手動のままです。台帳に人が登録します。変わったのは登録する場所で、機器ごとではなくサーバ 1 か所になりました。
サーバの IP アドレス、ポート番号、事前共有鍵、物理ポートごとの認証の順番も手動のままです。自動になったのは、物理ポートに何を付けるかだけです。
通信フロー
① ケーブルを挿します。リンクは上がりますが、認証が済むまでその物理ポートはデータを通しません。図 2 の学習も転送も、まだ始まりません。
② スイッチ 1 が「名乗って」というフレーム(EAPOL)をその物理ポートに出します。ここではまだ IP を使いません。
③ 名乗る仕組みが無い端末は返事をしません。スイッチは既定で(再試行 2 回+1)×30 秒=90 秒 待って諦め、MAB に切り替えます。順番は設定で変えられます。
④ スイッチ 1 は最初のフレームの送信元 MAC アドレスを読み、その文字列を利用者名にもパスワードにも入れて Access-Request を送ります。宛先ポート番号は 1812(UDP)です。
⑤ サーバは台帳と照らし、Access-Accept(許可)か Access-Reject(拒否)を返します。返りは ④ の送信元ポートへ戻ります。1812 は行きの宛先です。許可の返事には VLAN 番号などの属性を入れられます。
⑥ スイッチ 1 は返事に入っていた VLAN 番号をその物理ポートに付けます。ここから先は図 2 と図 3 とまったく同じ動きになります。
RADIUS で隠されるのはパスワードの欄だけで、残りの属性はそのまま流れます。VLAN 番号は Tunnel-Type、Tunnel-Medium-Type、Tunnel-Private-Group-ID の 3 つの組で渡します。
同じ AAA でも、TACACS+ は用途が違います。機器の管理者ログイン向けで、TCP のポート番号 49 を使い、認証と認可と記録を分けた設計になっていて、命令ひとつずつの認可ができます。RADIUS には命令ひとつずつの制御はありません。隠す範囲も違いますが、その呼び方は出典で食い違っています。Cisco の比較ページは TACACS+ が本文全体を暗号化すると書き、RFC 8907 §4.5・§10.1 は同じ仕組みを暗号化ではなく難読化と呼んで弱点を挙げています。
図 18
上が構成図とフローの矢印、その下に AAA の 3 つ、802.1X と MAB、RADIUS と TACACS+ の 3 つの箱が並びます。いちばん下は各表の推移と、通信の中身の推移です。
図 3 では、物理ポートの VLAN 10 は設定に書いた行でした。図 18 では、同じ VLAN 10 がサーバの返事です。見える結果は同じで、その行がどこから来たかだけが違います。
増えたのはもの(台帳と認証の状態)と結びつきの作り方で、通信フローそのものは図 2 と図 3 のままです。帯のいちばん下のフレームが図 2 のフレームと同じなのは、認証が済めば以降は何も変わらないからです。
図 17 のポートセキュリティとの違いは、許す相手をどこに書くかです。ポートセキュリティは機器の物理ポートに書き、MAB はサーバの台帳に書きます。台数が増えるほど、書く場所が 1 か所であることが効いてきます。
未検証・注意
- Cisco の比較ページは TACACS+ が本文全体を暗号化すると書き、RFC 8907 §4.5・§10.1 は同じ仕組みを難読化と呼びます。どちらか一方だけを採らず、両方の言い方を本文に残しています。
- 勉強会の実機で確かめたのは MAB の成功と失敗の記録までです。TACACS+ は触っていません。
- 802.1X で使う名乗りの方式(証明書、利用者名など)ごとの違いは扱っていません。
- EAPOL に使う決まった番地は 01:80:C2:00:00:03(Ethernet の種類の欄は 0x888E)です。Cisco の解析例で確認できたのは端末からスイッチへ向かう方向だけで、スイッチが最初に出す「名乗って」の宛先が同じ番地かは確認できていません。そのため図の箱は「認証用の決まった番地」のままにしてあります。
- 90 秒は Cisco の既定値から計算した値です。実機の設定で変わります。
- 認可の説明を VLAN 番号に寄せています。許可の返事には ACL も入れられますが、この 1 枚では扱っていません。
- スイッチの管理 IP アドレス 192.168.10.2 と RADIUS サーバの 192.168.3.201 は、図 1〜7 の住所計画に合わせた説明用の値です。勉強会の資料の値とは関係ありません。
出典
- 勉強会での本人の観察。2026-09-13 の実機ハンズオン(資料は非公開)
- RFC 2865 Remote Authentication Dial In User Service (RADIUS) — ポート番号 1812、Access-Request と Access-Accept と Access-Reject、隠されるのは User-Password の欄だけであること
- RFC 2866 RADIUS Accounting — 記録のポート番号 1813
- RFC 3580 IEEE 802.1X RADIUS Usage Guidelines — 名乗りを受け付けるスイッチが RADIUS の client になること、VLAN 番号を渡す属性の組
- RFC 8907 The TACACS+ Protocol — TCP 49、認証と認可と記録を分けた設計、機器の管理向けであること、本文を隠す仕組みを難読化と呼ぶこと
- Cisco MAC Authentication Bypass Deployment Guide — MAC アドレスを利用者名とパスワードに入れて問い合わせること、MAC アドレスの詐称で破れること、待ち時間の式と既定の 90 秒、許可の返事で VLAN や ACL を渡せること
- Cisco TACACS+ and RADIUS Comparison — RADIUS はパスワードだけを隠し残りは平文であること、TACACS+ は本文全体を隠すこと、RADIUS では命令ひとつずつの制御ができないこと
- Cisco Troubleshoot dot1x on Catalyst 9000 Series Switches — EAPOL の解析例(宛先 0180.C200.0003、種類の欄 0x888E)
関連
-
ネットワーク_INDEX — 連載の目次
-
連載の入口: ネットワーク_00_3層で言葉を置く(
/notes/nw-basics-00-three-layers) -
前の記事(図 17): ネットワーク_17_DHCPとその守り(
/notes/nw-basics-17-dhcp) -
次の記事(図 19): ネットワーク_19_無線LAN(
/notes/nw-basics-19-wireless-lan) -
物理ポートに VLAN 番号を人が付ける形: ネットワーク_03_VLAN(
/notes/nw-basics-03-vlan) -
認証が済んだあとに戻る、いつもの動き: ネットワーク_02_同じネットワークの中(
/notes/nw-basics-02-same-network)
この記事の校閲記録
誰が・いつ・どの版の・どの段落を・何の観点で見て、何と言ったかを全件そのまま出す(追記のみ・削除しない)。
段落 39 のうち出典つき 14・出典なし 25
v1 2 件
AIAI (claude-fable-5) が AI 確認未解決
出典 7 件を WebFetch で取得して確認した。RADIUS のポート番号 1812、Access-Request・Access-Accept・Access-Reject、隠されるのが User-Password の欄だけであることは RFC 2865 で確認した。記録のポート番号 1813 は RFC 2866 で確認した。名乗りを受け付けるスイッチが RADIUS の client になること、VLAN 番号を渡す属性の組(Tunnel-Type=VLAN(13)、Tunnel-Medium-Type=802、Tunnel-Private-Group-ID)は RFC 3580 で確認した。TACACS+ の TCP 49、認証・認可・記録を分けた設計、機器の管理向けであること、本文を隠す仕組みを RFC 自身が難読化と呼ぶことは RFC 8907 §1・§3.4・§4.5・§10.1 で確認した。MAC を利用者名とパスワードに入れて問い合わせること、MAC の詐称で破れること、待ち時間の式と既定の 90 秒は Cisco の MAB 導入ガイドで確認した。RADIUS がパスワードの欄だけを隠すこと、TACACS+ が本文全体を隠すこと、RADIUS では命令ひとつずつの制御ができないことは Cisco の比較ページで確認した。TACACS+ の隠し方の呼び方が Cisco の比較ページと RFC 8907 で食い違うため、本文ではどちらか一方だけを断定せず両方の言い方を並べた。EAPOL の決まった番地 0180.C200.0003 と 0x888E は Cisco の解析例で確認したが、確認できたのは端末からスイッチへ向かう方向だけで、スイッチが最初に出す側の宛先は未検証として明記した。TACACS+ を実機で触っていないこと、802.1X の名乗りの方式ごとの違いを扱っていないことも明記した。校正チェックリストを全項目回し、図の『口』を本文では物理ポートに直し、ポート番号は UDP と TCP の番号にだけ使った。守秘検査(人名、社名、会場名、地名、連絡先の機械検査)で該当なし
AIAI (claude-fable-5) が 編集未解決
公開前の校閲。「この 18 本目」を「図 18」に直した(連載の通し数とずれるため)。関連を、図 8〜16 と同じ形に揃え、前の記事(図 17)と次の記事(図 19)への行と /notes/ のパスを足した。RADIUS の 1812・記録の 1813・TACACS+ の TCP 49・90 秒の式・VLAN を渡す属性の組は出典の引用と照合し、修正していない。
参考文献
- 二次RFC 2865 Remote Authentication Dial In User Service (RADIUS)参照 2026-09-14
- 二次RFC 2866 RADIUS Accounting参照 2026-09-14
- 二次RFC 3580 IEEE 802.1X RADIUS Usage Guidelines参照 2026-09-14
- 二次RFC 8907 The TACACS+ Protocol参照 2026-09-14
- 二次Cisco MAC Authentication Bypass Deployment Guide参照 2026-09-14
- 二次Cisco TACACS+ and RADIUS Comparison参照 2026-09-14
- 二次Cisco Troubleshoot dot1x on Catalyst 9000 Series Switches参照 2026-09-14
更新履歴
- 連載のトピックを「ネットワーク基礎」から「ネットワーク」へ改名(32 本+目次。slug と URL は不変)
- 公開: 連載「ネットワーク基礎」図 8〜24 の記事 17 本と目次の更新
機械可読の記録
- article.json(記事の正本)
- reviews.json(校閲記録)
- blocks.json(ブロック一覧)