PPPoEとは何かと基本的な理解と設定例について解説します。
PPPoE(Point-to-Point Protocol over Ethernet)は、インターネット接続のためのプロトコルの一つで、特にDSL接続でよく使用されます。PPPoEは、ユーザーの認証、アドレスの割り当て、接続の管理を行うために、複数の要素が絡み合っています。この記事では、PPPoEの基本的な概念、関連するプロトコル(AAA、PAP、CHAP)、そして実際の設定例を紹介します。
PPPoEの基本概念
PPPoEは、端末(PCなど)がインターネットに接続する際に、認証を行い、アドレスを割り当てるためのプロトコルです。PPPoE接続が確立されると、端末はBAS(Broadband Access Server)に接続し、BASは認証情報をRADIUSサーバーに送信します。RADIUSサーバーは、ユーザーの認証を行い、承認された場合にはIPアドレスをBASを介して端末に割り当てます。
このプロセスは一見シンプルに思えますが、実際には複雑な設定が必要です。特に、サーバーの設定やRADIUSとの連携が重要なポイントとなります。
RADIUSとは?
RADIUS(Remote Authentication Dial In User Service)は、ユーザーの認証、認可、アカウンティングを行うためのプロトコルです。RADIUSは、ネットワークに接続するユーザーを認証するために広く使用されています。
AAAの概念
AAAは、次の三つの要素から成り立っています。
- Authentication(認証):ユーザーIDとパスワードを確認し、ネットワークへのアクセスを許可します。
- Authorization(認可):ユーザーが利用できるネットワークサービスを制限します。
- Accounting(アカウンティング):ユーザーの接続時間や実行したコマンドを記録します。
これらの要素は、RADIUSやTACACS+などのプロトコルと組み合わせて使用されます。
PPPoEにおけるPAPとCHAP
PPPoEでは、認証のためにPAP(Password Authentication Protocol)とCHAP(Challenge Handshake Authentication Protocol)が使用されます。
PAP(パスワード認証プロトコル)
PAPは、ユーザーIDとパスワードを平文で送信するため、セキュリティ上のリスクがあります。認証は初回のみ行われ、以降は再認証が行われません。平文での送信は、第三者に盗聴される危険性がありますが、電話線を介しているため、インターネットよりは安全とされています。
CHAP(チャレンジハンドシェイク認証プロトコル)
CHAPは、より安全な認証方法です。クライアントがIDとパスワードを送信すると、サーバーは乱数鍵を生成し、クライアントに送信します。クライアントは、この乱数鍵を用いてパスワードをハッシュ化し、サーバーに送信します。このプロセスは定期的に行われ、なりすましや盗聴のリスクを低減します。
PPPoEの設定例
ここでは、Ciscoルータを使用したPPPoEの基本的な設定手順を紹介します。
1. インターフェースの設定
まず、PPPoEを使用するインターフェースを設定します。
Router(config)# interface Ethernet0/0
Router(config-if)# pppoe enable
Router(config-if)# pppoe-client dial-pool-number 1
2. PPPoE接続の設定
次に、PPPoE接続の設定を行います。
Router(config)# bba-group pppoe global
Router(config-bba)# virtual-template 1
Router(config-bba)# exit
Router(config)# interface Virtual Access 1
Router(config-if)# mtu 1492
Router(config-if)# ip address negotiated
Router(config-if)# ppp chap hostname your_username
Router(config-if)# ppp chap password your_password
Router(config-if)# ppp pap sent-username your_username password your_password
3. ルーティングの設定
最後に、ルーティングを設定します。
Router(config)# ip route 0.0.0.0 0.0.0.0 Dialer1
動作確認
設定が完了したら、接続が正常に行われているか確認します。
Router# show ip interface brief
出力結果には、PPPoE接続が確立されていることが表示されるはずです。
まとめ
PPPoEは、インターネット接続において重要な役割を果たすプロトコルですが、その設定は複雑です。特に、RADIUSとの連携や認証方式の選択が重要です。ここで紹介した設定例を参考に、自身の環境でPPPoEを構築してみてください。実際に手を動かすことで、理解が深まるでしょう。
PPPoEの設定やRADIUSサーバーの構築についてさらに詳しく知りたい方は、以下のリンクも参考にしてください。
- CiscoASR1000シリーズでPPPoE(IPv6)の設定手順
- Junose pppoe デュアルスタック(IPv4/IPv6)設定
- FreeRadius構築。初心者に優しい5つの手順まとめ
- FreeRadiusインストールするがradtestがうまくいかないメモ(CentOS)
これからの構築作業がスムーズに進むことを願っています。頑張ってください!

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメント