① Virtual-Template インターフェース(PPP 設定)(詳細版)


Virtual-Template とは?

Virtual-Template(VT)は、仮想インターフェースの“テンプレート”です。
PPPoE クライアントが接続してくるたびに、このテンプレートをコピーして

Virtual-Access1
Virtual-Access2
Virtual-Access3

のように、クライアントごとに新しいインターフェースが自動生成されます。

Virtual-Template を使う理由

PPPoE サーバーでは、次の要件があります:

  • クライアントごとに独立した PPP セッションを作る
  • 認証(CHAP/PAP)を行う
  • IP アドレスを割り当てる
  • MTU(1492)に調整する
  • ルータとしてルーティングができるようにする

これらをクライアントごとに個別に行う必要があるため、
Virtual-Template が “ひな型”として機能するわけです。

Virtual-Template の基本構成

interface Virtual-Template1
 mtu 1492
 ip unnumbered GigabitEthernet0/0
 peer default ip address pool PPPoE-POOL
 ppp authentication chap pap

これをひとつひとつ詳しく説明します。

① mtu 1492

PPPoE は 8 バイトの PPPoE ヘッダを追加するため、
通常の 1500 ではフラグメントされてしまうため 1492 が標準。

mtu 1492

② ip unnumbered GigabitEthernet0/0

Virtual-Access(PPP セッション)は IP を持たせますが、
Virtual-Template 自体に IP を直接付与しないのが一般的。

代わりに「別のインターフェースの IP を借用」します。

これが ip unnumbered

ip unnumbered GigabitEthernet0/0

💡 どのインターフェースを借りるべき?

  • 通常は 上位(WAN 側)のインターフェース
  • PPPoE ユーザーが接続してくると「借りている IP」と同じネットにルーティングされる

③ peer default ip address pool PPPoE-POOL

これは非常に重要です。

PPPoE 接続してきたクライアントに割り当てる IP プールを指定します:

peer default ip address pool PPPoE-POOL

プールは以下のように定義します:

ip local pool PPPoE-POOL 192.168.10.1 192.168.10.254

④ ppp authentication chap pap

PPPoE セッションでの認証方式を指定。

ppp authentication chap pap

順序は
CHAP → PAP
の順で試されます。

ユーザー名・パスワードは AAA と連動:

aaa new-model
aaa authentication ppp default local
username user1 password 0 pass1

Virtual-Template を使った PPPoE セッションの流れ

  1. PC(PPPoE クライアント)が「PPPoE Discovery」送信
  2. Cisco ルータが「AC(PPPoE サーバー)」として応答
  3. PPP ネゴシエーション開始
  4. Virtual-Template をコピー
     → Virtual-Access1 が生成される
  5. 認証(CHAP/PAP)
  6. IP 割り当て(local pool)
  7. PPP セッション確立

この Virtual-Access1 は、1ユーザー専用の仮想IFであり
ルーティングテーブルにも独立して出てきます。

よく使う追加設定

●1. ダウンロード方向 QoS(帯域制御)

ppp ipcp route default

●2. RADIUS 認証を使う

aaa authentication ppp default group radius

●3. クリティカル(Ping failure)で自動切断

ppp timeout idle 180

●4. 最大セッション数(物理ポート側)

interface Gi0/1
 pppoe enable group global
 pppoe-max-sessions 100

まとめ:Virtual-Template の役割

機能目的
PPP 設定の雛形PPPoE の PPP レイヤ設定をまとめる
IP 配布管理IP プールからユーザーへ割当
認証管理CHAP/PAP/RADIUS による認証
自動インターフェース作成Virtual-Access をユーザーごとに生成