3.1.0 広域ネットワーク (概要、PPP、PAP、CHAP、PPPOE)
視聴前のヒント:
比較的長めの章ですが、主に次の要点が含まれており、目次と右側のナビゲーションから参照できます。
(1) WANの基本概念
(2) PPP 契約の概要
(3) PAP および CHAP 認証
(4) PPPOE の導入と構成
序章
WANネットワーキング
-
初期の WAN ネットワークは
X.25
64Kbit/s の帯域幅しか提供できません -
その後、提供される
DDN(Digital Data Network)
データ ネットワークとFR(Frame Relay)帧中继
帯域幅が 2Mbit/s に増加します。 -
SDH(Synchronous Digital Hierachy)同步数字结构
そしてATM(Asynnchronous Transfer Mode)异步传输模式
、さらに10Gbit/sにアップグレード -
最終的には、現在の 10Gbit/s 以上の帯域幅の IP ベースの広域ネットワークに発展します。
WAN におけるルーティングの役割 (PE/CE/P) の概念
- CE(CustomerEdge) : ユーザーのエッジデバイス、サービスプロバイダーによって接続されるユーザーのエンドルーター。
- CE ルーターは、1 つ以上の PE ルーターを接続することにより、ユーザーにマルチポイント サービス アクセスを提供します。
- CE ルーターは通常 IP ルーターであり、接続された PE ルーターと隣接関係を確立します。
- PE (ProviderEdge) : 事業者のエッジ装置、事業者のエッジ装置、サービス事業者のバックボーンネットワークのエッジルータであり、Label Edge Router (LER) に相当します。
- PE ルーターは CE ルーターと P ルーターを接続し、最も重要なネットワーク ノードです。
- ユーザー トラフィックは、 PE ルーターを介してユーザー ネットワークに流入するか、PE ルーターを介してネットワークバックボーン ネットワークに流入します。
- P (プロバイダー) : 事業者の内部コア層装置、プロバイダールーター、およびサービスプロバイダーは、どの CE ルーターにも接続されていないバックボーンネットワークルーティングデバイスであり、ラベルスイッチングルーター (LSR) に相当します。
PPP協定
pppエンドツーエンド/ポイントツーポイントプロトコル (ピアツーピア プロトコル)
pppって何に使うの?それはなんのためですか?
回答: PPP はポイントツーポイントのリンク層プロトコルで、主に全二重の同期および非同期リンク[Serial串行接口]
でのポイントツーポイントのデータ送信に使用されます。
PPP契約のメリット
1. LCP ネゴシエーションのサポート: リンク層パラメータのネゴシエーション
2. NCP ネゴシエーションのサポート: ネットワーク層パラメーターのネゴシエーション
3. ユーザー認証のサポート: PAP、CHAP
4. 拡張機能のサポート: ppp を拡張して、低レベルのリンクをサポートできます。
- イーサネット ネットワーク、PPP は PPPOE に拡張可能
- ATM ネットワーク、PPP は PPPOA に拡張可能
PPPプロトコルのユーザー認証
PAP認証
-
PAP パスワード認証プロトコル (パスワード認証プロトコル)
-
PAP は平文の相互認証です
-
PAP の簡単な認証プロセス
-
1. 認証する側(サーバー)で認証用のアカウントパスワードを作成し、認証される側(クライアント)で認証用のアカウントパスワードを設定します。
-
2. 被認証者は認証情報(アカウントパスワード)を認証者に送信し、認証者はアカウントパスワードを確認し、一致すれば認証成功、一致しなければ認証失敗となります。
-
【クライアント】》アクティブ認証》【サーバー】
-
CHAP認証
-
CHAP チャレンジ ハンドシェイク認証プロトコル (チャレンジ ハンドシェイク認証プロトコル)
-
CHAPは暗号文相互認証です
-
CHAP の簡単な認証プロセス:
-
1. 認証する側(サーバー)で認証用のアカウントパスワードを作成し、認証される側(クライアント)で認証用のアカウントパスワードを設定します。
-
2. 認証者は、認証された当事者にチャレンジ メッセージを積極的に送信します。
-
内容: (インターフェース認証アカウント、認証シリアル番号 A、認証子の乱数)
-
一方向 CHAP 認証では、オーセンティケータのインターフェイス認証アカウントはオプションです。
-
-
3. 認証された側はチャレンジ メッセージを受信し、インターフェイスに Chap アカウントのパスワードがあるかどうかを確認します。
- 存在する場合は、応答メッセージを返信します:メッセージ シーケンス番号 A、インターフェイス認証アカウント、HASH 値
- HASH値(認証シリアル番号A、認証子乱数、インターフェース認証パスワード、3つをMD5で暗号化してHASH値を取得します)
- パケット シーケンス番号は常に、認証者によって送信されたパケットのシーケンス番号です。
- 存在しない場合、メッセージは応答されず、デフォルトで認証は失敗します。
- 存在する場合は、応答メッセージを返信します:メッセージ シーケンス番号 A、インターフェイス認証アカウント、HASH 値
-
4. 認証者は応答メッセージを受信します。
- (1) 受信したアカウントの「パスワード」をアカウントデータベースから取得します
- (2) メッセージシーケンス番号を元に、前に生成した「乱数」を取り出す
- (3) (メッセージシリアル番号 A + 認証子乱数 + アカウント対応パスワード) を実行してMD5 暗号化を実行し、HASH 値を取得します
-
5. 2 つの HASH 値を比較し、同じであれば認証は成功し、それ以外の場合は失敗します。
-
PPPプロトコルのアドレス配布
PPP プロトコルでは、指定されたアドレスをもう一方の端に配信するために一方の端でのみアドレスを設定できます。
[AR1]int s4/0/0
[AR1-Serial4/0/0]ip add 192.168.1.1 24
[AR1-Serial4/0/0]remote address 192.168.1.2 # 指定对端使用的地址
[AR2]int s4/0/0
[AR2-Serial4/0/0]ip add ppp-negotiate # 通过邻居获取地址
Dec 19 2022 18:28:38-08:00 Huawei %%01IFNET/4/LINK_STATE(l)[63]:The line protoco
l PPP IPCP on the interface Serial1/0/0 has entered the UP state.
# 出现该提示说明成功获取到地址
PPP契約の詳細な成立プロセス
1.LCPネゴシエーション
-
リクエスト パケットを AR2 にアクティブに送信して、リンク層パラメータをネゴシエートします。
-
リクエストメッセージの内容:
MRU
、认证协议
、MP-Group
、魔术字
- MRU 最大送信単位: 双方向データ送信プロセスで MRU の違いによるパケット損失が発生しないようにします。
- 認証プロトコル: 認証が必要かどうかを示し、次の段階への道を開きます。
- MP-Group : リンクアグリゲーションが存在するかどうかを示します。
- マジックワード:ループ防止のためランダムに生成、自身が送信したマジックワードがインターフェース上で受信された場合は直接破棄されます。
-
ピアエンドは送信されたリクエストメッセージを受信し、メッセージ内のパラメータをネゴシエートします。
-
1. ネゴシエートされたパラメータの内容が正常であれば、相手は応答し
ACK报文
、ネゴシエーションは成功します。 -
2. ネゴシエートされたパラメータの内容は認識されているが、認識されていないパラメータがある場合、応答し
NAK报文
、NAK は自身が認識したパラメータを伝送します。- NAK を受信した後、送信元はリクエスト メッセージを再度送信し、NAK メッセージ内のパラメータを記入します。
-
3. ネゴシエートされたパラメータに認識できないコンテンツがある場合は、ソースに再ネゴシエーションを要求する応答が返され
Reject报文
、ソースはターゲットの認識できないコンテンツを削除してから、リクエストを送信します。
-
-
LCP ネゴシエーションが完了した後、リンク ステータスを定期的に送信し
Echo-Request
て維持します。Echo-Replay
2. Pap/chap 認証ネゴシエーション
-
ppp 認証モードが設定されていない場合、つまり認証が設定されていない場合は、この段階を直接スキップしてください。
-
pap認証ネゴシエーション
-
認証されたユーザーは、パラメータネゴシエーションのために認証者に「アクティブに送信」します
Request报文
: (認証アカウント番号と平文パスワードを運ぶ) -
認証者はそれを受信し、
Request报文
メッセージ内の認証アカウント + パスワードを独自のデータベース内の認証アカウント + パスワードと比較します。- ①比較結果が同じなので を返信し
ACK报文
、認証を通過する - ②比較結果が異なり、返信
NAK报文
、認証失敗
- ①比較結果が同じなので を返信し
-
-
CHAP認証ネゴシエーション
- オーセンティケータは、認証された相手に「アクティブに送信」します
Chalenge信息
(インターフェース認証アカウント <不要>、認証シリアル番号 ID、オーセンティケータ乱数) - 認証された側については、インターフェイスに Chap アカウントのパスワードがあるかどうかを確認します。
- 存在する場合は、メッセージ シーケンス番号 A、インターフェイス認証アカウント、HASH 値
response报文
を返信します。- HASH値(認証シリアル番号A、認証子乱数、インターフェース認証パスワード、3つをMD5で暗号化してHASH値を取得します)
- パケット シーケンス番号は常に、認証者によって送信されたパケットのシーケンス番号です。
- 存在しない場合、メッセージは応答されず、デフォルトで認証は失敗します。
- 存在する場合は、メッセージ シーケンス番号 A、インターフェイス認証アカウント、HASH 値
- 応答を受け取った認証者
response报文
:- (1)受け取った認証アカウントに対して、アカウントデータベースから「パスワード」を取得します。
- (2) メッセージのシーケンス番号を元に、前に生成した「認証者乱数」を取り出す
- (3) (メッセージシリアル番号A+乱数+アカウント対応パスワード)の3つをMD5暗号化してHASH値を取得する
- オーセンティケーターの 2 つの HASH 値を比較し、同じであれば認証は成功し
Success
、そうでなければ認証は失敗しますFailure
。
- オーセンティケータは、認証された相手に「アクティブに送信」します
3. NCP ネゴシエーション
- 最も一般的な NCP プロトコルは IPCP で、IP パラメータのネゴシエーションに使用されます。
- この段階でネゴシエーションが成功しなかった場合
display ip interface brief
、インターフェースのステータスを表示すると、「プロトコル」フィールドがダウン状態になっていることがわかります。
- 認証側は、ローカル インターフェイスの IP アドレスを伝えて、認証された側に「積極的に送信」します。
Request信息
- 認証された側は次のものを受け取ります
Request报文
。- パラメータに問題がない場合(アドレスが競合しておらず、正当である場合)に返信します。
ACK报文
- パラメータに問題がある場合(アドレスの競合または準拠していない場合)に返信します。
NAK报文
- NCP ネゴシエーションは、アドレスが同じネットワーク セグメント上にあるかどうかではなく、アドレス情報が間違っているかどうかに依存します。
- パラメータに問題がない場合(アドレスが競合しておらず、正当である場合)に返信します。
- 認証側が ACK メッセージを受信すると、ネゴシエーションが成功したことを意味し、両者は直接ルートを確立します。これは、ppp リンク内の異なるセグメントのアドレスが相互に通信できる理由でもあります。
4.確立完了後、Echo Request、Echo Replayによりキープアライブします。
5. CHAP 認証モードを確立するプロセス全体で情報をキャプチャします。
Chap認証確立セッションキャプチャ情報ダウンロード(Wireshark 3.6.6)
PPPプロトコルによって確立されたステートマシン
- 1. 通信する 2 つの当事者が PPP リンクの確立を開始するとき、最初に に入ります
Establish阶段
。 - 2. で
Establish阶段
、LCP ネゴシエーションを実行します。通信当事者間でMRU(Maximum Receive Unit,最大接收单元)
、、、、などのオプションをネゴシエートします。认证方式
魔术字(Magic Number)
- ネゴシエーションが成功した後に入力し
Opened状态
、基礎となるリンクが確立されたことを示します。
- ネゴシエーションが成功した後に入力し
- 3.認証が設定されている場合は、 と入力します
Authenticate阶段
。それ以外の場合は、まっすぐ進んでくださいNetwork阶段
。 - 4. ここで、
Authenticate阶段
接続確立フェーズ中にネゴシエートされた認証方法に従ってリンク認証が実行されます 。- 認証方法には、PAP と CHAP の 2 つがあります。
- 認証が成功した場合は を入力し
Network阶段
、そうでない場合は を入力してTerminate阶段
リンクを切断すると、LCP 状態が に変わりますDown
。
- 5. ここで
Network阶段
、PPP リンクは NCP ネゴシエーションを実行します。- ネットワーク層プロトコルを選択して構成し、NCP ネゴシエーションを通じてネットワーク層パラメータをネゴシエートします。(ネットワーク層パラメータネゴシエーション用のIPアドレスを選択します)
- 最も一般的な NCP プロトコルは IPCP で、IP パラメータのネゴシエーションに使用されます。
- 6. で
Terminate阶段
、すべてのリソースが解放されると、通信当事者は を返しますDead阶段
。
PPPOE
PPPOE の概要
PPPOE ( PPP Over Ethernet ) PPP プロトコルを搭載したイーサネット
1. PPPOE はイーサネット上でポイントツーポイント接続を実装し、PPPOE クライアントと PPPOE サーバーの間に PPP を確立してデータを送信します。
2. PPP データのカプセル化を使用しながら、イーサネット上のホストにアクセス サービスを提供し、ユーザーの接続制御と課金を実現し、企業ネットワークやオペレーター ネットワークで広く使用されています。
PPPフレーム構造
HCIA の現段階では、ちょっとだけ見てください。
PPPOE セッション確立の一般的なプロセス
Huawei HCIA-Datacom V1.0 Training Materials.pdf (116.68MB) を参照してください。【第 17 章 広域ネットワーク】
ダウンロードアドレス: https://e.huawei.com/cn/talent/#/resources 検索してダウンロード: hcia-datacom v1.0
1. PPPOE セッションの検出
事前にワクチン接種を行ってください。実際、これは DHCP メッセージのやり取りによく似ています...
1-PPPOE PADI ルックアップの開始
-
1. PPPoE クライアントは、ローカル イーサネットでPADIメッセージをブロードキャストします
PPPOED PADI报文
。この PADI メッセージには、クライアントが必要とするサービス情報が含まれています。[类似于DHCP的Discover报文]
「
PADI报文
宛先MAC アドレスはブロードキャスト アドレス、コード フィールドは 0x09、セッション ID フィールドは 0x0000 です。》 PADI メッセージを受信した後、すべての PPPoE サーバーは、メッセージで要求されたサービスと提供できるサービスを比較します。
2-PPPOE PADOが提供する情報
-
2. サーバーがクライアントから要求されたサービスを提供できる場合、サーバーは 1 を返します
PADO报文
。[类似于DHCP的Offer报文]
》 PADO メッセージの宛先アドレスはPADI メッセージを送信するクライアントの MAC アドレスで、Code フィールドは 0x07、Session ID フィールドは 0x0000 です。
3-PPPOE PADR 要求情報
-
3. クライアントは複数の を受信する場合がありますが、このとき、最初に受信した PADO メッセージに対応する PPPoE サーバーを
PADO报文[就像DHCP可以收到多个Offer报文]
選択し、そのサーバーに 1 つを送信します。PADR报文
》 PADR メッセージの宛先アドレスは選択したサーバーの MAC アドレス、Code フィールドは 0x19、Session ID フィールドは 0x0000 です。
4-PPPOE PADS セッションの確認
-
4.
PADR报文
PPPoE サーバーは、それを受信すると、PPPoE クライアントとのセッションを識別するための一意のセッション ID を生成しPADS报文
、送信します。》 PADS メッセージの宛先アドレスはPPPoE クライアントの MAC アドレス、Code フィールドは 0x65、Session ID フィールドはこの PPPoE セッションに対して PPPoE サーバーによって生成されたセッション ID です。
5- Huawei の PPPOE セッション検出ロジック図
2. PPPOE セッションフェーズ
PPPoE セッション フェーズでは、 LCP ネゴシエーション、認証ネゴシエーション、NCP ネゴシエーションの3 つの段階に分かれた PPP ネゴシエーションが実行されます。
HuaweiのPPPOEセッションフェーズの論理図
3. PPPOE セッションの終了
PPPoE クライアントが接続を閉じたい場合、PPPoE サーバーにメッセージを送信して接続PADT报文
を閉じます。
同様に、PPPoE サーバーが接続を閉じたい場合は、PPPoE クライアントにも接続を送信しますPADT报文
。
在客户端上进行会话断开:
<Client>reset pppoe-client all
<Client>
Dec 19 2022 23:23:27-08:00 Client %%01PPP/4/PHYSICALDOWN(l)[0]:On the interface
Dialer1:0, PPP link was closed because the status of the physical layer was Down
.
<Client>
Dec 19 2022 23:23:27-08:00 Client %%01IFNET/4/LINK_STATE(l)[1]:The line protocol
PPP on the interface Dialer1:0 has entered the DOWN state.
<Client>
Dec 19 2022 23:23:27-08:00 Client %%01IFNET/4/LINK_STATE(l)[2]:The line protocol
PPP IPCP on the interface Dialer1:0 has entered the DOWN state.
Huawei の PPPOE セッション終了ロジック図
PPPOE 構成
環境の紹介:
-
PPPOE サーバーのダイヤルアップ アドレスは 192.168.1.254、アドレス プールは 192.168.1.0/24、ダイヤルアップ仮想テンプレートのシリアル番号は 1、chap 認証が使用され、アカウント パスワードは pppoe です。
-
PPPOE クライアントは、ダイヤル番号 10 を使用して PPPOE サーバーとのセッションを確立します。
服务器:
# 1、创建DHCP地址池,给PPPOE拨号用户下发地址
[Server]dhcp enable
[Server]ip pool ppp
[Server-ip-pool-ppp]network 192.168.1.0 mask 24
[Server-ip-pool-ppp]gateway-list 192.168.1.254
[Server-ip-pool-ppp]q
# 2、配置PPPOE服务端使用chap认证,利用PPP的NCP协商给客户端下发地址
[Server]interface Virtual-Template 1
[Server-Virtual-Template1]ppp authen chap
[Server-Virtual-Template1]ip add 192.168.1.254 24
[Server-Virtual-Template1]remote add pool ppp
[Server-Virtual-Template1]q
# 3、配置chap认证的账号密码(命令有所缩写)
[Server]aaa
[Server-aaa]local pppoe pa cip pppoe
[Server-aaa]local pppoe ser ppp
[Server-aaa]q
# 4、接口应用PPPOE拨号模板
[Server]int g0/0/0
[Server-GigabitEthernet0/0/0]pppoe-server bind virtual-template 1
# 你可能会有的疑惑:
# 1、接口不需要配置地址的吗?
# 【拨号模板中已经设置有了,应用模板也相当于应用了地址】
# 2、客户端不需地址吗?
# 【客户端会通过发送PADI、PADO、PADR、PADS等报文协助PPPOE的建立】
# 上面的PPPOE会话建立过程有所提到
客户端:
[Client]interface Dialer 1
[Client-Dialer1]lin ppp
[Client-Dialer1]ppp chap user pppoe
[Client-Dialer1]ppp chap password ci pppoe
[Client-Dialer1]ip add ppp-negotiate
[Client-Dialer1]dialer user client1
[Client-Dialer1]dialer bundle 10
[Client-Dialer1]q
[Client]int g0/0/0
[Client-GigabitEthernet0/0/0]pppoe-client dial-bundle-number 10
# PPPOE自动拨号成功提示
[Client]
Dec 19 2022 22:14:50-08:00 Client %%01IFNET/4/LINK_STATE(l)[1]:The line protocol
PPP on the interface Dialer1:0 has entered the UP state.
[Client]
Dec 19 2022 22:14:50-08:00 Client %%01IFNET/4/LINK_STATE(l)[2]:The line protocol
PPP IPCP on the interface Dialer1:0 has entered the UP state.
[Client]