剖析PPPoE會話的過程
在ADSL撥號的過程中,PPPoE協議有非常大的作用。那么具體的撥號過程,以及PPPoE的工作過程,就讓我們從下文來了解一下吧。看看具體的會話過程是如何完成的。
主機網卡設置
以太網適配器 本地連接:
連接特定的 DNS 后綴 . . . . . . . :
描述. . . . . . . . . . . . . . . : Realtek RTL8101 Family PCI-E Fast Ethernet NIC (NDIS 6.0)
物理地址. . . . . . . . . . . . . : 00-03-25-4A-84-F0
DHCP 已啟用 . . . . . . . . . . . : 是
自動配置已啟用. . . . . . . . . . : 是
自動配置 IPv4 地址 . . . . . . . : 169.254.7.223(首選)
子網掩碼 . . . . . . . . . . . . : 255.255.0.0
默認網關. . . . . . . . . . . . . :
TCPIP 上的 NetBIOS . . . . . . . : 已啟用
1. 主機發出PPPoED廣播,進行PPPoE Active Discovery Initiation(PADI),向接入設備提出所要求的服務.以太網目的地址為廣播地址0xffffffff, CODE 字段為0x09, SESSION_ID為0x0000.PADI包必須至少包含一個服務名稱類型(Service-Name)的標簽(標簽類型字段為0x0101).
2. 接入設備收到在服務范圍內的PADI包后,發送PPPoE有效發現提供(PPPoE Active Discovery Offer, PADO) 包以響應請求.其CODE字段為0x07 ,SESSION_ID仍為0x0000.PADO包必須包含一個接入設備名稱類型(AC-Name)的標簽(標簽類型字段為0x0102)以及一個或多個服務名稱類型標簽,表明可向用戶主機提供的服務種類.
3. 用戶主機在可能收到的多個PADO包中選擇一個合適的接入設備,選擇的原則是根據PADO 中接入設備名稱類型標簽和服務名稱類型標簽的內容.然后向所選擇的接入設備發送PPPoE有效發現請求(PPPoE Active Discovery Request, PADR)包.其CODE 字段為0x19,SESSION_ID仍為0x0000.PADR包必須包一個服務名稱類型標簽,確定向接入設備請求的服務種類.當一個用戶主機在確定時間沒有收到PADO,他會重發一個PADI,同時等待兩倍的時間.這種過程可以根據需要重復多次.
4. 接入設備收到PADR包后準備開始PPP會話,它發送一個PPPoE 有效發現會話確認(PPPoE Active Discovery Session-confirmation, PADS)包.其CODE 字段為0x65 , SESSION_ID為接入設備所產生的一個唯一的PPPoE會話標識號碼.0xffff作為預留資源,目前不能被使用作SESSION_ID.PADS 包也必須包含一個服務名稱類型的標簽確認向用戶主機提供的服務.當用戶主機收到PADS包確認后,雙方就進入PPP會話階段.如果接入設備不能識別 PADR中的服務名稱類型的標簽,則會回一個包含服務名稱錯誤( Service-Name-Error ) 標簽的PADS ,其SESSION_ID仍然是0x0000.如果用戶主機在確定時間沒收到PADS包,與沒收到PADO作同樣處理.
5. 用戶主機——>接入設備發送PPP LC configuration request,接入設備返回PPP LC configuration ACK或者PPP LC configuration reject.
6. 接入設備發送PPP——>用戶主機發送PPP LC configuration request,主機回復PPP LC configuration ACK和PPP LC Identification.
7. 用戶主機——>接入設備發送PPP PAP認證信息,包括用戶名、密碼,都是明文傳送.接入設備進行認證確定.
8. 用戶主機與接入設備進行其他協商.
網卡IP本來是自動獲取的,我給他指定了固定IP:192.168.1.100,撥號撥不通,錯誤代碼735,后恢復dhcp,仍然撥不通.將原寬帶連接刪除,新建寬帶連接,重新撥號撥通.