專利名稱:一種路由器上網(wǎng)方式檢測方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)上網(wǎng)方式的檢測方法,特別涉及在路由器接入到互聯(lián)網(wǎng)后,如何識別wan端是屬于哪種上網(wǎng)方式的方法。
背景技術(shù):
目前,常用的互聯(lián)網(wǎng)上網(wǎng)方式有pppoe、dhcp和靜態(tài)static ip三種方式。用戶要上網(wǎng),首先需要知道上網(wǎng)方式也就是SAP提供的上網(wǎng)方式是上面三種方式中的那一種, 然后根據(jù)不同的上網(wǎng)方式對主機上的網(wǎng)絡(luò)通信進行設(shè)置。比如,如果是PPPoe連接類型的話,用戶的下一步就是需要在主機相應的界面上填寫正確的用戶名和密碼,如果是dhcp連接類型的話,用戶在主機上就什么都不用做,就以直接上網(wǎng),如果是static ip連接類型,就需要填寫IP地址,掩碼,網(wǎng)關(guān)等信息才能上網(wǎng)?,F(xiàn)在的路由器是需要用戶自己去選擇自己的wan端是屬于哪種上網(wǎng)方式,如果上網(wǎng)方式選擇不對,路由器將不能連接到internet。
發(fā)明內(nèi)容
本發(fā)明的發(fā)明目的是提供一種路由器上網(wǎng)方式檢測方法,路由器接入互聯(lián)網(wǎng)后, 自動檢測上網(wǎng)方式,指導主機用戶完成網(wǎng)絡(luò)通信設(shè)置。本發(fā)明為了實現(xiàn)其發(fā)明目的所采用的技術(shù)方案是一種路由器上網(wǎng)方式檢測方法,當路由器拉入互聯(lián)網(wǎng)后,對互聯(lián)網(wǎng)的上網(wǎng)方式進行自動檢測,包括以下步驟
A、進行pppoediscovery過程,確認internet連接類型是否是pppoe,如果是,結(jié)束檢測,指導主機用戶填寫正確的用戶名和密碼,進入PPP會話階段,否則進入步驟B;
B、進行dhcpdiscovery過程,確認internet連接類型是否是dhcp,如果是,結(jié)束檢測, 通知主機用戶進入dhcp會話階段,否則,進入步驟C ;
C、確認internet連接類型是staticIP,并指導主機用戶正確填寫IP地址,掩碼,網(wǎng)關(guān) fn息,結(jié)束ο進一步的,上述的一種路由器上網(wǎng)方式檢測方法中所述的步驟A中,按下列步驟完成 pppoe discovery 過程
A01、路由器以廣播方式發(fā)送初始化報文(PADI),并累計發(fā)送初始化報文(PADI)的次數(shù),如果此時發(fā)送初始化報文(PADI)的次數(shù)超過設(shè)定超過設(shè)定次數(shù),則確定不是PPPOE上網(wǎng)方式,結(jié)束檢測;
A02、路由器接收所有PPPOE服務器以單播的方式回復有效發(fā)現(xiàn)提供報文(PAD0),如果在第一設(shè)定時間內(nèi)沒有收到則返回步驟AOl ;
A03、路由器選定服務器端,并以單播發(fā)送方式發(fā)送有效發(fā)現(xiàn)請求報文(PADR)給所述選定的服務端,并累計發(fā)送有效發(fā)現(xiàn)請求報文(PADR)的次數(shù),如果發(fā)送有效發(fā)現(xiàn)請求報文 (PADR)的次數(shù)超過設(shè)定次數(shù),則轉(zhuǎn)入步驟AOl ;
A04、路由器接收所述選定的服務端發(fā)送的單播確認報文PADS,如果在第二設(shè)定的時間內(nèi)沒有收到,則轉(zhuǎn)入步驟A03;
A05、路由器發(fā)送有效終止包(PADT ),確定為PPOE上網(wǎng)方式,結(jié)束檢測。更進一步的,上述的一種路由器上網(wǎng)方式檢測方法中所述的步驟AOl中發(fā)送初始化報文(PADI)的次數(shù)的設(shè)定值為3次;所述的步驟A02中,第一次發(fā)送初始化報文 (PADI)時,第一設(shè)定時間為5秒,第二次發(fā)送初始化報文(PADI)時,第一設(shè)定時間為10秒, 第三次發(fā)送初始化報文(PADI)時,第一設(shè)定時間為20秒。更進一步的,上述的一種路由器上網(wǎng)方式檢測方法中所述的步驟AOl中所述的步驟A03中發(fā)送有效發(fā)現(xiàn)請求報文(PADR)的次數(shù)的設(shè)定值為3次;所述的步驟A04中,第一次發(fā)送有效發(fā)現(xiàn)請求報文(PADR)時,第二設(shè)定時間為5秒,第二次發(fā)送有效發(fā)現(xiàn)請求報文(PADR)時,第二設(shè)定時間為10秒,第三次發(fā)送發(fā)送有效發(fā)現(xiàn)請求報文(PADR)時,第二設(shè)定時間為20秒。進一步的,上述的一種路由器上網(wǎng)方式檢測方法中所述的步驟B中是按如下的步驟完成dhcp discovery過程
B01、路由器以廣播的方式發(fā)送dhcp discover封包;
B02、路由器接收dhcp服務器發(fā)回的dhcp offer封包,如果等待2秒沒有收到dhcp offer封包,則路由器以廣播的方式再發(fā)送dhcp discover封包,再等待4秒,如果等待4秒還沒有收到dhcp offer封包,路由器以廣播的方式發(fā)送dhcp discover封包,再等待6秒, 如果等待6秒還沒有收到dhcp offer封包,就不再發(fā)包,判斷不是dhcp連接類型,結(jié)束;
B03、路由器選定dhcp服務器,并廣播dhcp request封包,告訴所有的dhcp服務器將選定服務器提供的IP地址;
B04、路由器接收由選定dhcp服務器發(fā)回的租約確認dhcp ack封包如果等待2秒沒有收到dhcp ack封包,則路由器再廣播dhcp request封包,如果等待4秒沒有收到dhcp ack封包,則路由器再廣播dhcp request封包,如果等待6秒還沒有收到dhcp ack封包,則轉(zhuǎn)入步驟BOl ;
B05、路由器向服務器發(fā)送release報文,告知dhcp服務器終止dhcp服務,確認連接類型為dhcp類型。本發(fā)明的路由器檢測上網(wǎng)方式過程簡單時間短。下面結(jié)合附圖對本發(fā)明進行詳細描述。
附圖1為本發(fā)明流程圖。
具體實施例方式如圖1所示,本實施例是一種路由器上網(wǎng)方式檢測方法,當路由器拉入互聯(lián)網(wǎng)后, 對互聯(lián)網(wǎng)的上網(wǎng)方式進行自動檢測,包括以下步驟
A、進行pppoe discovery過程,確認internet連接類型是否為pppoe,如果是,結(jié)束檢測,指導主機用戶填寫正確的用戶名和密碼,進入PPP會話階段,否則進入步驟B;
建立PPPOE通道(ADSL撥號)分兩個階段發(fā)現(xiàn)(Discovery)階段和PPP會話階段 Discovery階段的目的是確認目前的上網(wǎng)方式是不是ΡΡΡ0Ε,在Discovery過程中用戶主機以廣播方式尋找可以連接的所有接入設(shè)備,獲得其以太網(wǎng)MAC地址。然后選擇需要連接的用戶主機并最后獲得所要建立的PPP會話的SESSI0N_ID。在Discovery過程中節(jié)點間是客戶端一服務器關(guān)系,一個用戶主機(客戶端,路由器)最終要發(fā)現(xiàn)一個接入設(shè)備(服務器)。在網(wǎng)絡(luò)拓樸中,一般有不止一個的接入設(shè)備可以通信,Discovery階段允許用戶主機發(fā)現(xiàn)所有的接入設(shè)備,并從中選擇一個。當Discovery階段結(jié)束時,用戶主機和接入設(shè)備之間都獲得了可供以太網(wǎng)上建立PPP連接的全部信息。Discovery階段保持無連接狀態(tài)直到一個PPP會話的建立。一旦PPP連接建立,則用戶主機和接入設(shè)備都必須為PPP虛擬端口分配資源。Discovery階段包括以下步驟
1、用戶主機發(fā)出PPPOE 有效發(fā)現(xiàn)初始(PADI :PPPoE active discovery initial)包。 以太網(wǎng)目的地址為廣播地址Oxffffffff,CODE字段為0x09,SESSI0N_ID為0x0000。PADI 包必須至少包含一個服務名稱類型(Service-Name)的標簽(標簽類型字段為0x0101),向接入設(shè)備提出所要求提供的服務。一個完整的PADI (包括PPPOE頭)不能超過1484字節(jié), 以留下充足的預留給agent設(shè)備增加Relay- Session-Id標識;
2、接入設(shè)備收到在服務范圍內(nèi)的PADI包后,發(fā)送PPPOE有效發(fā)現(xiàn)提供(PAD0:PPPoE Active Discovery oder)包以響應請求。其 CODE 字段為 0x07,SESSI0N_ID 仍為 0x0000。 PADO包必須包含一個接入設(shè)備名稱類型(AC-Name)的標簽(標簽類型字段為0x0102)以及一個或多個服務名稱類型標簽,表明可向用戶主機提供的服務種類;
3、用戶主機在可能收到的多個PADO包中選擇一個合適的接入設(shè)備,選擇的原則是根據(jù)PADO中接入設(shè)備名稱類型標簽和服務名稱類型標簽的內(nèi)容。然后向所選擇的接入設(shè)備發(fā)送 PPPOE 有效發(fā)現(xiàn)請求(PADR PPPoE active discovery request)包。其 CODE 字段為 0xl9,SESSI0N_ID仍為0x0000。PADR包必須包一個服務名稱類型標簽,確定向接入設(shè)備請求的服務種類。當一個用戶主機在確定時間沒有收到PAD0,他會重發(fā)一個PADI,同時等待兩倍的時間。這種過程可以根據(jù)需要重復多次;
4、接入設(shè)備收到PADR包后準備開始PPP會話,它發(fā)送一個PPPOE有效發(fā)現(xiàn)會話確認(PADS PPPoE active discovery session confirmation)包。其 CODE 字段為 0x65 ,SESSI0N_ID為接入設(shè)備所產(chǎn)生的一個唯一的PPPOE會話標識號碼。Oxffff作為預留資源,目前不能被使用作SESSI0N_ID。PADS包也必須包含一個服務名稱類型的標簽確認向用戶主機提供的服務。當用戶主機收到PADS包確認后,雙方就進入PPP會話階段。如果接入設(shè)備不能識別PADR中的服務名稱類型的標簽,則會回一個包含服務名稱錯誤( Service-Name-Error )標簽的PADS,其SESSI0N_ID仍然是0x0000。如果用戶主機在確定時間沒收到PADS包,與沒收到PADO作同樣處理。還有一種 PPPOE 有效發(fā)現(xiàn)終止(PADTPPPoE active discovery terminate)包, 在一個PPP會話建立后它隨時可由用戶主機或接入設(shè)備中任何一方發(fā)送,指示PPP會話已終止。PADT包不需要任何標簽,其CODE字段為0xa7,SESSI0N_ID為需要終止的PPP會話的會話標識號碼。本實施例中pppoe連接類型的判斷是這樣的,pppoe discover有五個報文的交互過程
1. PADI 路由器發(fā)送初始化報文,是以廣播的發(fā)送出去,作用是想知道是否有PPPOE服務端;
2.PADO 如果有PPPOE服務端存在,在收到PADI報文后,會以單播的方式回復該報文, 表明可以為其提供PPPOE服務器端連接;
3.PADR 該報文以單播的方式發(fā)送給自己選定的服務端,該報文用于請求服務器端能夠提供服務;
4.PADS 服務器收到PADR請求報文后,發(fā)送一個單播報文進行確認;
5.PADT 終止pppoe會話,在確認網(wǎng)內(nèi)有服務器能提供pppoe服務后,終止對話,確認連接類型為PPPoe類型的。本實施例中pppoe過程中的時間問題。路由器發(fā)送PADI數(shù)據(jù)包,等待5秒,如果沒有收到PADO包,繼續(xù)發(fā)送PADI包,等待10秒,如果還沒有回,繼續(xù)發(fā)送PADI包,等待20秒,如果還沒有回,判斷類型不是pppoe 類型。如果在上面的等待時間中有收到pado包,路由器就發(fā)送PADR包,等待5秒,如果沒有收到PADS包,繼續(xù)發(fā)送PADR包,然后等待10秒,如果沒有收到PADS包,繼續(xù)發(fā)送PADR 包,等待20秒,如果沒有收到PADS包,判斷類型不是PPPOE類型。如果在上面的步驟中的等待時間中收到PADS包,就發(fā)送PADT包,終止pppoe對話,判斷類型為PPPoe連接類型。B、進行dhcp discovery過程,確認internet連接類型是否是dhcp,如果是,結(jié)束檢測,通知主機用戶進入dhcp會話階段,否則,進入步驟C。本實施例中Dhcp discover有五個報文的交互過程
1.dhcp discover 尋找 server, 向網(wǎng)絡(luò)廣播一個dhcp discover封包;
2.dhcp offer 提供一個IP租用地址,收到dhcp discover廣播包后,選擇一個空置的IP以及租約時間提供給客戶端;
3.dhcp request 接受IP租約,接收到offer包后,廣播一個dhcp request包,告訴所有的服務器它將接受哪臺服務器提供的IP地址;
4.dhcp ack 租約確認,確認IP租約生效,說明dhcp服務器可以提供一個完整的dhcp 服務給客戶端;
5.dhcp release 客戶端主動向服務器發(fā)送release報文,告知dhcp服務器終止dhcp 服務,確認連接類型為dhcp類型。對于路由器收到報文時間有如下規(guī)定發(fā)送了 discover包后,等待2秒,如果沒有收到回包,再等待4秒,如果沒有收到回包,再等待6秒,如果沒有收到,就不再發(fā)包,判斷不是dhcp連接類型。如果在等待的過程中有收到offer包,路由器就回request包,與上面的等待時間相同,如果沒有收到服務器回包,又重新發(fā)送discover包。如果在等待時間中收到了 ack包,就發(fā)送dhcp release包終止dhcp服務,表明連接類型為dhcp連接類型。C、確認internet連接類型是static IP,并指導主機用戶正確填寫IP地址,掩碼, 網(wǎng)關(guān)信息,結(jié)束。
權(quán)利要求
1.一種路由器上網(wǎng)方式檢測方法,當路由器拉入互聯(lián)網(wǎng)后,對互聯(lián)網(wǎng)的上網(wǎng)方式進行自動檢測,其特征在于包括以下步驟A、進行pppoediscovery過程,確認internet連接類型是否是pppoe,如果是,結(jié)束檢測,指導主機用戶填寫正確的用戶名和密碼,進入PPP會話階段,否則進入步驟B;B、進行dhcpdiscovery過程,確認internet連接類型是否是dhcp,如果是,結(jié)束檢測, 通知主機用戶進入dhcp會話階段,否則,進入步驟C ;C、確認internet連接類型是staticIP,并指導主機用戶正確填寫IP地址,掩碼,網(wǎng)關(guān) fn息,結(jié)束ο
2.根據(jù)權(quán)利要求1所述的一種路由器上網(wǎng)方式檢測方法,其特征在于所述的步驟A 中,按下列步驟完成PPPoe discovery過程A01、路由器以廣播方式發(fā)送初始化報文(PADI),并累計發(fā)送初始化報文(PADI)的次數(shù),如果此時發(fā)送初始化報文(PADI)的次數(shù)超過設(shè)定的次數(shù),則確定不是PPPOE上網(wǎng)方式, 結(jié)束檢測;A02、路由器接收所有PPPOE服務器以單播方式回復的有效發(fā)現(xiàn)提供報文(PAD0),如果在第一設(shè)定時間內(nèi)沒有收到則返回步驟AOl ;A03、路由器選定服務器端,并以單播發(fā)送方式發(fā)送有效發(fā)現(xiàn)請求報文(PADR)給所述選定的服務端,并累計發(fā)送有效發(fā)現(xiàn)請求報文(PADR)的次數(shù),如果發(fā)送有效發(fā)現(xiàn)請求報文 (PADR)的次數(shù)超過設(shè)定次數(shù),則轉(zhuǎn)入步驟AOl ;A04、路由器接收所述選定的服務端發(fā)送的單播確認報文PADS,如果在第二設(shè)定的時間內(nèi)沒有收到,則轉(zhuǎn)入步驟A03;A05、路由器發(fā)送有效終止包(PADT ),確定為PPOE上網(wǎng)方式,結(jié)束檢測。
3.根據(jù)權(quán)利要求2所述的一種路由器上網(wǎng)方式檢測方法,其特征在于所述的步驟AOl 中發(fā)送初始化報文(PADI)的次數(shù)的設(shè)定值為3次;所述的步驟A02中,第一次發(fā)送初始化報文(PADI)時,第一設(shè)定時間為5秒,第二次發(fā)送初始化報文(PADI)時,第一設(shè)定時間為 10秒,第三次發(fā)送初始化報文(PADI)時,第一設(shè)定時間為20秒。
4.根據(jù)權(quán)利要求2所述的一種路由器上網(wǎng)方式檢測方法,其特征在于所述的步驟AOl 中所述的步驟A03中發(fā)送有效發(fā)現(xiàn)請求報文(PADR)的次數(shù)的設(shè)定值為3次;所述的步驟 A04中,第一次發(fā)送有效發(fā)現(xiàn)請求報文(PADR)時,第二設(shè)定時間為5秒,第二次發(fā)送有效發(fā)現(xiàn)請求報文(PADR)時,第二設(shè)定時間為10秒,第三次發(fā)送有效發(fā)現(xiàn)請求報文(PADR)時,第二設(shè)定時間為20秒。
5.根據(jù)權(quán)利要求1所述的一種路由器上網(wǎng)方式檢測方法,其特征在于所述的步驟B 中是按如下的步驟完成dhcp discovery過程B01、路由器以廣播的方式發(fā)送dhcp discover封包;B02、路由器接收dhcp服務器發(fā)回的dhcp offer封包,如果等待2秒沒有收到dhcp offer封包,則路由器以廣播的方式再發(fā)送dhcp discover封包,再等待4秒,如果等待4秒還沒有收到dhcp offer封包,路由器以廣播的方式發(fā)送dhcp discover封包,再等待6秒, 如果等待6秒還沒有收到dhcp offer封包,就不再發(fā)包,判斷不是dhcp連接類型,結(jié)束;B03、路由器選定dhcp服務器,并廣播dhcp request封包,告訴所有的dhcp服務器將選定服務器提供的IP地址;B04、路由器接收由選定dhcp服務器發(fā)回的租約確認dhcp ack封包如果等待2秒沒有收到dhcp ack封包,則路由器再廣播dhcp request封包,如果等待4秒沒有收到dhcp ack封包,則路由器再廣播dhcp request封包,如果等待6秒還沒有收到dhcp ack封包,則轉(zhuǎn)入步驟BOl ;B05、路由器向服務器發(fā)送release報文,告知dhcp服務器終止dhcp服務,結(jié)束檢測并確認連接類型為dhcp類型。
全文摘要
一種路由器上網(wǎng)方式檢測方法,當路由器拉入互聯(lián)網(wǎng)后,對互聯(lián)網(wǎng)的上網(wǎng)方式進行自動檢測,包括以下步驟進行pppoediscovery過程,確認internet連接類型是否是pppoe,如果是,指導主機用戶填寫正確的用戶名和密碼,進入PPP會話階段,否則進行dhcpdiscovery過程,確認internet連接類型是否是dhcp,如果是通知主機用戶進入dhcp會話階段,否則,確認internet連接類型是staticIP,并指導主機用戶正確填寫IP地址,掩碼,網(wǎng)關(guān)信息等。本發(fā)明的路由器檢測上網(wǎng)方式過程簡單時間短。
文檔編號H04L12/56GK102223270SQ201110196988
公開日2011年10月19日 申請日期2011年7月14日 優(yōu)先權(quán)日2011年7月14日
發(fā)明者曾佐燕, 汪瀾, 王志波 申請人:深圳市共進電子有限公司