




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、 TIME yyyy-M-d 2022-1-1第頁BRAS配置及其維護本手冊分三個部分,第一部分是業(yè)務(wù)介紹,主要介紹的是設(shè)備支持哪些功能。第二部分是常見配置,有VLAN自動獲取IP地址配置(即DHCP),VLAN靜態(tài)用戶配置,強制WEB認(rèn)證配置,PPPOE配置等。第三部分是常見故障處理,主要是radius問題,對接設(shè)備問題等案例。BRAS業(yè)務(wù)功能 VLAN透傳VLAN用戶接入 PPPOE用戶接入 強制PORTAL組播多網(wǎng)段功能多域控制源地址路由功能Trunk 功能 ACL控制Intergroup組UCL控制QOS NAT 計費本地計費 radius計費 計費方案認(rèn)證 認(rèn)證方式 WEB認(rèn)證、pp
2、poe認(rèn)證、綁定認(rèn)證;R009還有802.1X認(rèn)證(支持EAP-SIM和EAP-MD5)。 認(rèn)證方案地址管理 本地地址池外置DHCP Server 內(nèi)置DHCP ServerRadius Server 路由 靜態(tài)路由動態(tài)路由RIP OSPF ISIS BGP等安全性 用戶安全 1、每個用戶一個VLAN,在二層實現(xiàn)隔離。2、設(shè)置UCL規(guī)則,在三層實現(xiàn)隔離。3、帳號和端口綁定,杜絕地址欺騙。4、對于VLAN用戶數(shù)據(jù)報文,對其IP地址、MAC地址,VLAN ID、端口進行綁定驗證,拋棄非法報文。 設(shè)備安全網(wǎng)絡(luò)側(cè)通過IP報文攻擊BRAS;通過配置可信任IP地址和配置網(wǎng)絡(luò)側(cè)接入訪問限制來解決。用戶側(cè)的攻
3、擊,系統(tǒng)可以自動識別出有異常的用戶(VLAN和MAC),并自動關(guān)閉這些用戶的業(yè)務(wù),但是只能夠手動恢復(fù)。設(shè)置當(dāng)系統(tǒng)受到某個MAC的攻擊,自動關(guān)閉此MAC。設(shè)置當(dāng)系統(tǒng)受到某個VLAN的攻擊,自動關(guān)閉此VLAN。BRAS常見配置3.1 維護終端的連接和配置BRAS的控制臺提供本地維護和遠程維護兩種方式。本地維護采用串口或Telnet方式,遠程維護可以采用Telnet方式。3.1.1 串口終端1、連接方式:將配置主機串口通過標(biāo)準(zhǔn)的RS232串口線與主控板上的維護串口COM連接:2、超級終端參數(shù)設(shè)置:波特率9600BRASbps,其他參數(shù)都采用默認(rèn)參數(shù)即可。3.1.2 Telnet終端系統(tǒng)默認(rèn)的維護網(wǎng)口
4、IP地址為*,子網(wǎng)掩碼為*。1、本地連接:將配置主機的以太網(wǎng)口和BRAS主控板的維護網(wǎng)口通過局域網(wǎng)連接,此時BRAS使用標(biāo)準(zhǔn)網(wǎng)線與局域網(wǎng)相連,圖3-3 注意:也可以將配置主機網(wǎng)口與BRAS主控板的維護網(wǎng)口ETH直接連接,但此時要使用交叉網(wǎng)線。2、遠程連接:將配置主機和BRAS的維護網(wǎng)口通過廣域網(wǎng)連接,圖3-4 說明:遠程管理不一定都連接在的ETH端口上。3-4只是遠程Telnet的一種方法。還可通過帶內(nèi)方式(使用業(yè)務(wù)板的業(yè)務(wù)通道)進行遠程維護。對于Telnet遠程維護,必須保證有相應(yīng)的路由可達BRAS,從維護終端上可以Ping通維護網(wǎng)口地址。3、登錄BRAS設(shè)備:運行Telnet程序,如圖3-
5、5所示,在連接窗口中鍵入BRAS的接口IP地址,建立連接。輸入正確的用戶名和口令,然后出現(xiàn)命令行提示符。圖3-5也可以使用超級終端:選擇“TCP/IP“協(xié)議,在“主機地址”處輸入BRAS的登錄IP地址,如圖3-6所示:圖3-63.1.3 操作用戶管理BRAS系統(tǒng)控制臺的登錄驗證主要對操作用戶進行身份校驗,通過對操作用戶的用戶名和密碼的匹配識別,來允許或拒絕操作用戶的登錄。對于一個操作用戶,有帳號(即用戶名)、權(quán)限、密碼、重復(fù)登錄數(shù)(即該帳號可同時登錄的個數(shù))等屬性。增加操作用戶: 刪除操作用戶:設(shè)置用戶權(quán)限:更改用戶密碼:更改用戶登錄次數(shù):顯示所有操作用戶信息:顯示登錄的Telnet終端用戶信
6、息:3.1.4 Telnet客戶端管理對通過Telnet登錄的操作用戶,BRAS系統(tǒng)通過對客戶端Telnet的IP地址的管理防止非法操作用戶登錄設(shè)備。BRAS系統(tǒng)建立一個Telnet客戶端控制列表,通過對Telnet客戶端IP地址的增加、刪除、激活、去激活來管理Telnet操作用戶。Telnet操作用戶連接主機后也需要進行身份校驗。 說明帶內(nèi):inband 是指通過業(yè)務(wù)板的接口地址與BRAS互通。帶外:outband 是指通過主控板的維護網(wǎng)口與BRAS互通。3.2 網(wǎng)管工作站配置在通過網(wǎng)管管理BRAS前,必須先在該BRAS中增加該網(wǎng)管工作站的參數(shù),否則系統(tǒng)將不會處理網(wǎng)管的請求報文,用戶將無法通
7、過網(wǎng)管維護該BRAS寬帶智能接入服務(wù)器3.2.1 增加網(wǎng)管工作站:1、新加網(wǎng)管:需要設(shè)置網(wǎng)管ip、掩碼,網(wǎng)管名稱,網(wǎng)管GET/SET團體名,網(wǎng)管維護方式。2、激活網(wǎng)管工作站: 注意:在配置網(wǎng)管工作站時應(yīng)注意以下問題:增加網(wǎng)管工作站時必須保證同一維護方式下網(wǎng)管IP地址及網(wǎng)管名稱唯一。網(wǎng)管工作站參數(shù)增加后必須激活才能生效。團體名字符串是區(qū)別大小寫的,即相同字符串但大小寫不一致也會認(rèn)為是兩個不同的團體名字符串。3.3 業(yè)務(wù)配置 BRAS業(yè)務(wù)安照接入方式可以分為VLAN、PPPOE等,常用的業(yè)務(wù)配置還有:L2TP、NAT和專線業(yè)務(wù)。3.3.1 路由接入3.3.2靜態(tài)VLAN用戶業(yè)務(wù)1、系統(tǒng)組網(wǎng)說明:(
8、1)PC1接LS的端口3,VLAN ID為3; PC2接LS的端口8,VLAN ID為8;(2)PC1、PC2 通過LS連到業(yè)務(wù)接入板上的任意一個網(wǎng)口,比如網(wǎng)口0上;(3)業(yè)務(wù)接入板的網(wǎng)口0必須設(shè)為 tagged 方式,槽位號為3;(4)業(yè)務(wù)接入板的網(wǎng)口7接VOD Server 服務(wù)器,槽位號為1;(這里的vod server端口可以代表上行口的設(shè)置)(5)PC1、PC2 以VLAN ID認(rèn)證的方式通過BRAS內(nèi)虛模板的代理從BRAS內(nèi)獲取預(yù)先綁定的IP地址,從而實現(xiàn)上網(wǎng)、VOD點播等業(yè)務(wù),系統(tǒng)基于VLAN ID對各用戶實現(xiàn)管理功能,如認(rèn)證、開通、計費等;(6)PC1、PC2為靜態(tài)VLAN用戶
9、,在BRAS內(nèi)實現(xiàn)基于VLAN ID、IP地址二者的綁定,在系統(tǒng)掛有DHCP服務(wù)器的時候,所有靜態(tài)VLAN用戶的IP 地址必須是DHCP服務(wù)器地址池中的IP地址,而且這些地址必須從DHCP服務(wù)器地址池中排除,以免DHCP服務(wù)器再次分配這些IP地址。3、系統(tǒng)IP地址規(guī)劃業(yè)務(wù)接入板網(wǎng)口7:/24;虛模板: 2/24;4、PC設(shè)置(靜態(tài)VLAN用戶,必須設(shè)置)PC1: IP地址:/24, 網(wǎng)關(guān): 2;PC2: IP地址:2/24,網(wǎng)關(guān): 2;5、LS的設(shè)置(1)端口3的VLAN ID為3;(2)端口8的VLAN ID為8;(3)端口25作上行,透傳所有用戶VLAN。6、服務(wù)器的設(shè)置VOD Serve
10、r: IP地址:/24,網(wǎng)關(guān): ;系統(tǒng)數(shù)據(jù)配置配置虛模板配置虛模板的IP地址這里綁定用戶vlan,可以分別綁定單個vlan,也可以連續(xù)綁定一段vlan,其中包含用戶vlan即可)說明:1、由于VLAN端口在每個槽位下唯一,為唯一標(biāo)識一個VLAN端口,必須具有slot槽位信息。每個VLAN端口一次只能綁定一個虛模板,即一次只能屬于一個網(wǎng)段。2、當(dāng)想要改變VLAN端口綁定的虛模板時,必須先解除以前的綁定關(guān)系。3、解綁定操作只有在此VLAN端口下沒有任何類型的VLAN用戶存在時才能執(zhí)行成功,即不能有任何獲取了合法IP地址的用戶(無論上線與否)存在。(可以通過block 該vlan端口的狀態(tài)實現(xiàn))VL
11、AN端口激活配置VLAN端口認(rèn)證配置如果不輸入系統(tǒng)默認(rèn)口令為VLAN 說明:系統(tǒng)默認(rèn)的VLAN端口屬性如下:端口狀態(tài)為激活;認(rèn)證方式是Web認(rèn)證方式,系統(tǒng)默認(rèn)密碼是“vlan”,快速和綁定認(rèn)證下上線的用戶不使用VLAN端口CAR的標(biāo)記;端口下用戶數(shù)不受控,每端口最多帶2048個可獲得合法IP地址的用戶。進入VLAN域激活VLAN域此處口令與VLAN端口配置一致激活帳號配置靜態(tài)VLAN用戶此處MAC地址可以不輸入,如果錄入則靜態(tài)用戶只允許帶有此MAC地址網(wǎng)卡的PC機使用配置靜態(tài)VLAN用戶8、驗證(1)在PC1、PC2上分別 Ping 虛模板、業(yè)務(wù)接入板上的各上行口、VOD Server 服務(wù)器
12、 的IP地址,應(yīng)均能Ping通;(2)從服務(wù)器回Ping PC1、PC2,應(yīng)均能Ping通;3.3.3 內(nèi)置DHCP業(yè)務(wù)1、組網(wǎng)圖內(nèi)置dhcp server接入2、系統(tǒng)組網(wǎng)說明:(1)PC1接LS的端口3,VLAN ID為3; PC2接LS的端口8,VLAN ID為8;(2)PC1、PC2 通過LS連到業(yè)務(wù)接入板上的任意一個網(wǎng)口,比如網(wǎng)口0上;(3)業(yè)務(wù)接入板的網(wǎng)口0必須設(shè)為 tagged 方式;(4)業(yè)務(wù)接入板的網(wǎng)口7接VOD Server 服務(wù)器;(5)PC1、PC2 以VLAN ID認(rèn)證的方式通過BRAS內(nèi)虛模板代理的DHCP Server 動態(tài)地獲取IP地址,從而實現(xiàn)上網(wǎng)、VOD點播等
13、業(yè)務(wù),系統(tǒng)基于VLAN ID對 各用戶實現(xiàn)管理等功能,如認(rèn)證、開通、計費等;3、系統(tǒng)IP地址規(guī)劃業(yè)務(wù)接入板網(wǎng)口7:/24;虛模板: /24;4、PC設(shè)置PC1:自動獲取 IP 地址;PC2:自動獲取 IP 地址。5、LS的設(shè)置(1)端口3的VLAN ID為3;(2)端口8的VLAN ID為8;(3)端口25的端口類型為tagged,透傳所有業(yè)務(wù)VLAN;6、服務(wù)器的設(shè)置 VOD Server: IP地址:/24,網(wǎng)關(guān): ;7、系統(tǒng)數(shù)據(jù)配置配置VOD服務(wù)器接口的IP地址配置虛模板的IP地址配置內(nèi)置DHCP服務(wù)器的IP地址)綁定vlanbind vlan (這里綁定用戶vlan,可以分別綁定單個v
14、lan,也可以連續(xù)綁定一段vlan,其中包含用戶vlan即可)配置內(nèi)置DHCP服務(wù)器的IP地址池配置地址池網(wǎng)關(guān)地址及掩碼 注意: 網(wǎng)關(guān)ip地址和掩碼用于檢查地址段的地址是否和網(wǎng)關(guān)在一個子網(wǎng)內(nèi); 如果一個地址池中存有地址,就不能夠修改這個參數(shù); 網(wǎng)關(guān)地址應(yīng)該和相應(yīng)的虛模板的地址相同,如果不一樣,在使用中會出現(xiàn)問題配置地址池的IP地址段配置DNS服務(wù)器的IP地址激活VLAN端口VLAN端口認(rèn)證配置設(shè)置域及生成并激活用戶的帳號進入VLAN域激活VLAN域8、PC驗證(1)在PC1、PC2上分別可以獲取IP地址;(2)在PC1、PC2上分別 Ping 虛模板、業(yè)務(wù)接入板上的各上行口、各服務(wù)器的IP地址
15、,應(yīng)均能Ping通;(3)從各服務(wù)器回Ping PC1、PC2,應(yīng)均能Ping通;(4)從BRAS上Ping PC1、PC2,應(yīng)均能Ping通;3.3.4 WEB認(rèn)證業(yè)務(wù)1、系統(tǒng)組網(wǎng)說明:(1)PC1接LS的端口3,VLAN ID為3; PC2接LS的端口8,VLAN ID為8;(2)PC1、PC2 通過LS連到業(yè)務(wù)接入板上的任意一個網(wǎng)口,比如網(wǎng)口0上;(3)業(yè)務(wù)接入板的網(wǎng)口0必須設(shè)為 tagged 方式;(4)業(yè)務(wù)接入板的網(wǎng)口7接WEB Server 服務(wù)器;(5)PC1、PC2 以VLAN ID認(rèn)證的方式通過BRAS內(nèi)虛模板的代理從DHCP Server 動態(tài)地獲取IP地址。2、系統(tǒng)IP地
16、址規(guī)劃業(yè)務(wù)接入板網(wǎng)口7:/24;虛模板: /24;3、PC設(shè)置PC1:自動獲取 IP 地址;PC2:自動獲取 IP 地址。4、LS的設(shè)置(1)端口3的VLAN ID為3;(2)端口8的VLAN ID為8;(3)端口25的5、服務(wù)器的設(shè)置 WEB Server: IP地址:/24,網(wǎng)關(guān): ;6、數(shù)據(jù)配置配置WEB服務(wù)器接口的IP地址配置默認(rèn)路由配置虛模板的IP地址配置內(nèi)置DHCP服務(wù)器的IP地址綁定用戶vlanbind vlan 3綁定用戶vlan,可以分別綁定單個vlan,也可以連續(xù)綁定一段vlan,其中包含用戶vlan即可配置強制web服務(wù)器地址配置內(nèi)置DHCP服務(wù)器的IP地址池配置地址池網(wǎng)
17、關(guān)地址及掩碼配置地址池的IP地址段(配置DNS服務(wù)器的IP地址激活VLAN端口這里配置dns地址 定義用戶認(rèn)證前可以訪問web服務(wù)器和DNS服務(wù)器配置認(rèn)證方案,采用本地認(rèn)證配置計費方案,不計費進入域配置,假設(shè)域名為beier綁定認(rèn)證方案綁定計費方案激活域添加用戶如果采用radius認(rèn)證計費需要作如下修改:新建或進入一個RADIUS策略設(shè)置RADIUS服務(wù)器的主IP設(shè)置RADIUS服務(wù)器的備用IP 設(shè)置RADIUS服務(wù)器的密鑰綁定域和radius服務(wù)器Radius認(rèn)證時需要在radius服務(wù)器上設(shè)置用戶的帳號、密碼。7、驗證(1)在PC1、PC2上分別可以獲取IP地址;(2)在PC1、PC2上分
18、別 Ping 虛模板、業(yè)務(wù)接入板上的各上行口, 應(yīng)均能Ping通。此時上行口如果接到其它設(shè)備上(如三層交換機,路由器),從PC機上應(yīng)PING不通其它設(shè)備的IP地址,原因是在沒有進行認(rèn)證。(3)打開IE瀏覽器,彈出WEB服務(wù)器IP地址,輸入帳號、密碼,認(rèn)證通過后可以上網(wǎng),也可以ping通其他上層設(shè)備地址。3.3.5 PPPOE業(yè)務(wù)1、系統(tǒng)組網(wǎng)說明(1)LS此時當(dāng)作HUB使用;(2)PC1接LS的任意端口如3,PC2接LS的任意端口如8;(3)PC1、PC2 通過LS連到業(yè)務(wù)接入板上的任意一個網(wǎng)口,比如網(wǎng)口0上;(4)業(yè)務(wù)接入板的網(wǎng)口0此時設(shè)為 untagged 方式;(5)業(yè)務(wù)接入板的網(wǎng)口4接R
19、adius Server 服務(wù)器; 業(yè)務(wù)接入板的網(wǎng)口7接VOD Server 服務(wù)器;2、系統(tǒng)IP地址規(guī)劃業(yè)務(wù)接入板網(wǎng)口4: /24;業(yè)務(wù)接入板網(wǎng)口7: /24;PC1、PC2所在的IP地址池的網(wǎng)段: 3、PC設(shè)置PC1:自動獲取 IP 地址;PC2:自動獲取 IP 地址。4、LS的設(shè)置(1)LS當(dāng)HUB使用時,下帶業(yè)務(wù)報文不帶任何VLAN,則業(yè)務(wù)接入端口應(yīng)為untagged方式。(2)如果LS下帶業(yè)務(wù)有VLAN時,則3、8端口分別配置各自的VLAN,上行口25口透傳所有用戶VLAN。業(yè)務(wù)接入板的端口設(shè)為tagged方式;其他配置與untagged相同5、服務(wù)器的設(shè)置Radius Server
20、: IP地址:/24,網(wǎng)關(guān): ;VOD Server: IP地址:/24, 網(wǎng)關(guān): ;6、系統(tǒng)數(shù)據(jù)配置配置Radius服務(wù)器的接口IP地址配置VOD服務(wù)器的接口IP地址配置業(yè)務(wù)接入板的接口屬性配置虛模板的IP地址)配置VPDN組1配置內(nèi)置DHCP服務(wù)器的IP地址池配置地址池網(wǎng)關(guān)地址及掩碼配置地址池的IP地址段)配置DNS服務(wù)器的IP地址配置RAIDUS服務(wù)器要與RAIDUS側(cè)設(shè)成一樣的密鑰)配置認(rèn)證方案配置計費方案配置一個域配置該域的地址池7、驗證:(1)在PC1、PC2上分別運行pppoe程序可以撥號上網(wǎng),獲取相應(yīng)的IP地址;(2)在PC1、PC2上分別 Ping 虛模板、業(yè)務(wù)接入板上的各上
21、行口、各服務(wù)器的IP地址,應(yīng)均能Ping通;BRAS常見FAQ為什么修改了BRAS的主機名后VLAN綁定用戶不能上網(wǎng)?VLAN綁定用戶的帳號格式為:主機名-vlan-槽位號-vlan號 vlan。因為修改BRAS主機名的時候不能同時更新VLAN用戶帳號中相應(yīng)的主機名,當(dāng)用戶上線的時候攜帶過來的帳號中的主機名就成了修改以后的主機名了,與原先配置的VLAN用戶賬號不相同,所以無法通過認(rèn)證上網(wǎng)。解決方式有:恢復(fù)原來的主機名,或者刪除并重新添加相應(yīng)的VLAN帳號。告警PAYLOAD OF PPP OVERFLOW的意思?某些撥號用戶發(fā)送的報文長度超出了1492字節(jié)而被BRAS丟棄(正常PPP報文小于1
22、492),對正常業(yè)務(wù)沒有影響。地址池中還有剩余地址可以分配,但經(jīng)常有告警無空余地址可分配。由于域中設(shè)置了多個地址池,在上網(wǎng)高峰期的時候,如果某個地址池的地址分配完了過后,就會有此告警。因為BRAS并不知道這個地址池被PPPOE用戶還是VLAN用戶在使用,也不知道這個地址池分配完后會不會有第二個地址池供分配,所以一旦地池分配完后就會打印這個告警!是否可以查看pppoe撥號用戶上網(wǎng)時間?對于在線用戶,可以參考使用命令行*查看具體xxx用戶的上線時間及時長;對于RADIUS認(rèn)證計費用戶,還可以在RADIUS服務(wù)器上進行相關(guān)查詢。BRAS下帶交換機是否可以配置成VLAN 1的靜態(tài)用戶?可以。將VLAN
23、 1的數(shù)據(jù)包透傳送到BRAS處理即可。VLAN用戶強制PORTAL認(rèn)證需要做哪些配置?指定portal服務(wù)器地址:設(shè)置portal協(xié)議的共享密鑰:不刪除數(shù)據(jù),如何禁止某些VLAN用戶上網(wǎng)?方法很多,比如block相應(yīng)的VLAN端口、VLAN用戶的賬號,刪除虛模板中綁定的VLAN等。如果block相應(yīng)的VLAN域,則所有的VLAN bind或fast用戶就都不能上網(wǎng)了什么是ARP探測機制?BRAS中對于VLAN用戶有一個ARP探測機制。當(dāng)用戶在線時,每隔1520秒向VLAN用戶發(fā)送一個ARP探測(ARP請求),如果收到用戶的響應(yīng),則表明用戶在線;如果BRAS沒有收到ARP的響應(yīng),則每隔5秒向用戶
24、發(fā)送一個ARP探測報文,如果在經(jīng)過一組探測的后(此次數(shù)可設(shè)),仍沒有回應(yīng),則BRAS將斷開用戶的連接。如果配置中的ARP探測次數(shù)設(shè)置為20,當(dāng)用戶異常下線后(拔網(wǎng)線或關(guān)機),將至少要經(jīng)過5*20=100秒后,BRAS才切斷用戶的連接。如果是RADIUS認(rèn)證計費,此時才向radius-server發(fā)送計費結(jié)束請求報文(code=4)。在這100秒的時間內(nèi)用戶仍然在線。如何禁用地址池中的某個地址?使用命令:*如何限制用戶的接入數(shù)?VLAN用戶可以通過限制VLAN的接入數(shù)和限制VLAN帳號的接入數(shù)來確定,取交集為實際允許用戶的接入數(shù);PPPOE撥號用戶只在賬號中進行限制。如果不同L2交換機送到同一B
25、RAS的VLAN相同的話,是否會有問題?沒有問題,因為VLAN與BRAS上具體的物理端口沒有關(guān)系。如果是VLAN用戶,只是將VLAN綁定到某個虛模板上;如果用戶端采用PPPOE撥號上網(wǎng),則BRAS根本不處理VLAN信息。局域網(wǎng)內(nèi)用戶能否通過代理服務(wù)器進行WEB認(rèn)證上網(wǎng)?不可以。代理服務(wù)器可以實現(xiàn)WEB認(rèn)證上網(wǎng),但局域網(wǎng)內(nèi)的用戶不能實現(xiàn)。局域網(wǎng)內(nèi)用戶能否通過代理服務(wù)器進行WEB認(rèn)證上網(wǎng)?不可以。代理服務(wù)器可以實現(xiàn)WEB認(rèn)證上網(wǎng),但局域網(wǎng)內(nèi)的用戶不能實現(xiàn)。能否用HUB代替Lanswitch開VLAN業(yè)務(wù)?不可以,因為HUB不能處理VLAN標(biāo)記。虛模板能否配置第二個IP地址?不能,只能配置一個IP地
26、址!如何通過BRAS管理下帶的設(shè)備?將下帶的設(shè)備當(dāng)作一個VLAN靜態(tài)用戶即可,BRAS上只需要做VLAN靜態(tài)用戶的相關(guān)數(shù)據(jù)。BRAS雙上行組網(wǎng)問題?BRAS可以使用雙上行的組網(wǎng)方式。在BRAS上可以做一條默認(rèn)路由,在相應(yīng)的域中也可以設(shè)置源地址路由,這樣可以實現(xiàn)不同域的用戶使用不同的出口訪問網(wǎng)絡(luò)。上行的主備用路由如何實現(xiàn)?使用雙上行的組網(wǎng)方式,做兩條默認(rèn)路由,并指定不同的preference即可實現(xiàn)路由備份。如何修改RADIUS-SERVER的IP地址?首先切斷所有使用該RADIUS-SERVER進行認(rèn)證計費的所有用戶,確認(rèn)無任何和該RADIUS-SERVER進行交換的RADIUS報文,然后即可
27、以修改其IP地址。如何修改地址池router-ip的IP地址?首先切斷用戶的連接,收回該地址池中的所有IP地址,然后即可以直接修改IP地址。如何修改虛模板的IP地址?首先切斷所有與此虛模板有關(guān)的用戶連接,刪除所有VLAN靜態(tài)用戶數(shù)據(jù),然后即可修改此虛模板的IP地址。當(dāng)域中配置多個地址池后,能否通過radius屬性讓用戶從指定地址池中獲取IP地址?在RADIUS協(xié)議中,可以通過88號屬性(frame pool)讓用戶從指定的地址池中獲取IP地址,是否可以通過WEB頁面修改用戶的口令?通常Portal(WEB)認(rèn)證的用戶可以通過portal頁面修改其密碼,但普通的VLAN用戶、撥號用戶不能在web
28、頁面修改口令。用戶之間如何實現(xiàn)互通?假設(shè)BRAS上沒有設(shè)置ACL等訪問控制。有如下幾種可能:用戶采用PPPOE撥號上網(wǎng)。此時兩個用戶只要通過認(rèn)證上網(wǎng),那么他們就可以互訪;VLAN用戶,屬于不同VLAN,不同網(wǎng)段。只要用戶的PC上網(wǎng)關(guān)設(shè)置正確即可互通;VLAN用戶,屬于不同VLAN,相同網(wǎng)段。在BRAS上打開ARP代理: (config)#proxy-arp enable即可。VLAN用戶,屬于相同VLAN,相同網(wǎng)段。用戶通過二層交換機即可互訪。BRAS下的用戶如果出現(xiàn)打不開某些網(wǎng)站或某些業(yè)務(wù)不正常的時候如何處理?A:出現(xiàn)這類問題一般有兩類情況:1)NAT用戶 2)VPN(L2tp)用戶 對于出
29、現(xiàn)只有個別網(wǎng)站打不開或是某些業(yè)務(wù)不正常時,一般都是由于報文分片造成的,由于NATPOSL2TP都不支持分片,如果報務(wù)器送回來的報文超過一定的長度,在網(wǎng)絡(luò)上傳輸時被分片了,這些報文在經(jīng)過BRAS時就會被丟棄,從而導(dǎo)致業(yè)務(wù)不正常。出現(xiàn)這類問題時,可以通過修改客戶端的MSS值使得傳輸?shù)膱笪拈L度減小達到不分片的效果。(相應(yīng)的軟件可以到互聯(lián)網(wǎng)上搜索如irad.exe等)BRAS的用戶分別通過什么樣的流程分配IP? Answer:對VLAN用戶:VLAN用戶發(fā)起DHCP會帶上用戶的VLAN信息,BRAS首先根據(jù)此VLAN在哪個虛模板下綁定來找到對應(yīng)的虛模板,再查看虛模板下的DHCP服務(wù)器的地址,如果是非B
30、RAS接口地址或環(huán)回地址則把DHCP 報文轉(zhuǎn)發(fā)到所配置的DHCP服務(wù)器。如果是BRAS的接口地址或環(huán)回地址則查找哪一個地址池的網(wǎng)關(guān)地址和此虛模板相同,找到后便從找到的地址也里分配IP。對PPPOE用戶:用戶發(fā)起PADI報文會進入PPP DISOVERY階段,收到PADS報文后進行驗證和LCP協(xié)商,如果認(rèn)證通過,BRAS根據(jù)用戶認(rèn)證的域查找此域下的地址池,并從地址池中分配地址,如果是R006/R007/R009的版本則域下地址池可能多個,則依次從地址池中分配直到分配到第一個空閑可用的IP地址。BRAS的radius狀態(tài)不停的up、down,但用戶無法上線,而本地認(rèn)證用戶正常這是為什么? ANSW
31、ER:這應(yīng)該是radius對BRAS發(fā)出的認(rèn)證或者計費報文沒有響應(yīng)導(dǎo)致。BRAS的radius狀態(tài)是靠radius報文來觸發(fā)改變的,如果連續(xù)幾個報文不響應(yīng),radius狀態(tài)變?yōu)閐own,如果接下來的報文radius響應(yīng)了,radius狀態(tài)變?yōu)閡p。上述不斷up、down的情況就是用戶不斷請求,認(rèn)證報文或者計費報文不響應(yīng)導(dǎo)致。BRAS的用戶認(rèn)證通過后是否可以強推頁面?Answer:能實現(xiàn)用戶認(rèn)證通過后的強推功能。強推分為兩種:ppp用戶的強推和VLAN用戶的強推。這兩種方式的區(qū)別:PPPoE用戶上線時會通過PADM報文獲取BRAS上配置的URL屬性,并根據(jù)該屬性的內(nèi)容進行自動強推;vlan方式是
32、對用戶報文的重定向(就是用戶打開第一個網(wǎng)頁的時候,網(wǎng)頁出現(xiàn)的是強推的頁面)。BRAS是否在RADIUS報中帶用戶的MAC地址?Answer: 可以。BRAS的VLAN和PPPOE用戶是否可以共用一個地址池?Answer:可以。二者根據(jù)不同的策略找到對應(yīng)的地址池,可以從相同的地址池中分配IP地址,BRAS的地址池有IP地址管理策略可以保證二者分配的地址不會沖突。怎樣使用戶上網(wǎng)帳號不帶域名?將用戶所在的域設(shè)置成默認(rèn)域,這樣用戶上網(wǎng)時如果賬號中不帶域名,系統(tǒng)就會自動添加上默認(rèn)域名。BRAS撥號用戶RADIUS認(rèn)證時能否不向RADIUS服務(wù)器傳送域名?可以如何控制用戶的上網(wǎng)帶寬?如何查看在線的用戶?P
33、PPOE用戶能否實現(xiàn)隨意輸入用戶名、密碼就能上網(wǎng)?不可以,至少用戶名正確。如果使用簡單認(rèn)證(simple),即建立一個simple的authen方案,在指定的域里綁定,則只需要用戶名正確,不驗證密碼;否則用戶名和密碼必須都正確才能夠認(rèn)證通過。為什么不同用戶登錄到BRAS看到的可執(zhí)行命令數(shù)不一樣?BRAS用戶的級別分為多種:普通用戶、操作者級用戶、管理級用戶。如果這兩個用戶的級別不一致,那么能夠看到的命令行數(shù)將是不一樣的。如何修改用戶的口令?使用user password然后根據(jù)提示輸入用戶名和口令。注意:只有高級別的用戶才可以修改其本身及低級別用戶的口令。root用戶的口令需要使用root用戶
34、登錄后修改。如何刪除/保存配置數(shù)據(jù)?如何查看BRAS系統(tǒng)的CPU占用率。如何查詢BRAS端口流量?如何查詢BRAS端口的MAC地址和端口模式?如何設(shè)置外網(wǎng)口(ETH)的IP地址?怎樣消除LOG日志滿告警?系統(tǒng)支持的用戶數(shù)是多少?BRAS常見故障處理BRAS PPPoE & vlan用戶無法訪問個別網(wǎng)站 現(xiàn)象描述 BRAS 下用戶個別網(wǎng)站無法訪問,比如sohu,sina等。原因分析1、DNS服務(wù)器問題2、MTU值問題3、該網(wǎng)站對此公網(wǎng)地址段做限制處理過程1??梢越馕鲈摼W(wǎng)站域名,排除DNS服務(wù)器問題2。查看LS、BRAS、LS協(xié)商后的mtu值為1500,先后改為1502、1508,并改小用戶端的m
35、tu值,問題依舊,排除mtu值問題。3。將PC直接接在BRAS上測試,問題依舊,排除LS問題。4。BRAS上行口抓包,沒有發(fā)現(xiàn)該網(wǎng)站回報文,檢查BRAS以及上層設(shè)備的路由,配置無誤。5。將另外一局點的部分網(wǎng)段地址在本局點測試,可以訪問該網(wǎng)站,故斷定是該網(wǎng)站對一些公網(wǎng)地址段做了限制。BRAS下DHCP用戶可以獲取IP地址但是無法打開網(wǎng)頁現(xiàn)象描述 組網(wǎng)為:RouterRouterBRASLSPC故障現(xiàn)象:用戶開機可以正常的獲取IP地址,但是無法打開網(wǎng)頁。原因分析可能的原因:1、配置錯誤2、用戶端pc的問題,DNS問題。3、路由問題處理過程登錄設(shè)備檢查用戶的配置沒有問題,排除BRAS配置問題。2、同
36、一個終端,用戶改用PPPOE撥號方式,可以正常上網(wǎng),排除用戶端PC的問題。3、用戶采用DHCP獲取IP地址后,PING網(wǎng)關(guān)可以PING通,PINGBRAS和ROUTER的互聯(lián)地址也沒有問題,但是PING外網(wǎng)地址卻無法PING通。同時采用DHCP上網(wǎng)的用戶,有時可以打開網(wǎng)頁,有時不能打開網(wǎng)頁。于是初步判定問題在上層設(shè)備。4、經(jīng)過在ROUTER的進行仔細的檢查,發(fā)現(xiàn)ROUTER下接的2臺BRAS設(shè)備同時使用了一個IP網(wǎng)段作地址池,從而ROUTER在進行路由轉(zhuǎn)發(fā)時,造成了路由混亂。小結(jié):由于2臺BRAS使用了同一個網(wǎng)段的IP地址,所以在ROUTER上作回程路由時,有兩條路由可以選擇,并且是等值的。當(dāng)
37、路由選擇正確時,用戶可以打開網(wǎng)頁,否則雖然可以獲取IP地址還是無法打開網(wǎng)頁。BRAS 與RADIUS之間UP 、DOWN告警?,F(xiàn)象描述BRAS與RADIUS之間UP、DOWN告警原因分析1、BRAS與RADIUS之間物理鏈路UP、DOWN,丟包、時延較大。2、RADIUS處理能力有限,某一時刻比較繁忙,沒有及時響應(yīng)。3、由于某種原因,RADIUS沒有發(fā)送回應(yīng)報文。處理過程1、查看BRAS和RADIUS之間物理鏈路不丟包,時延正常,物理端口沒有UP、DOWN。2、查看debugradius報文,可以看到某個用戶的CODE=1的報文沒有回應(yīng),重發(fā)幾次也沒有回應(yīng)。查看該用戶報文沒有3、RADIUS報
38、文2號屬性User-Password用戶密碼。參照RFC定義。僅對PAP認(rèn)證才有此屬性,最小長度為16,最大長度為128。若用戶輸入密碼為空,由于加密后長度為0,此時不向服務(wù)器傳遞此屬性。4、至此問題定位:BRASVPDN組設(shè)置的接收PPP的認(rèn)證方式為PAP。當(dāng)用戶撥號密碼為空時,在發(fā)送CODE=1的報文時,就不帶2Password的屬性,由于這臺RADIUS服務(wù)器對這類報文認(rèn)為是非法報文,所以當(dāng)RADIUS收到這個報文時,丟棄掉,不予回應(yīng)。BRAS 由于CAR值峰值速率與平均速率的比例配置不正確導(dǎo)致用戶上網(wǎng)慢現(xiàn)象描述BRAS下PPPOE用戶為RADIUS認(rèn)證,上網(wǎng)非常慢,無論打開網(wǎng)頁或下載時
39、都較慢,測試時6M的用戶在本地下載時只有200K左右。原因分析:可能原因1、病毒攻擊2、鏈路不正常3、二層網(wǎng)絡(luò)廣播包較大4、car值定義不正確,峰值速率與平均速率比例不對處理過程登錄設(shè)備查看告警,無任何異常告警,可以排除病毒攻擊的原因2、查看端口狀態(tài),正常,無校驗錯誤包及廣播包3、查看在線用戶的car值,發(fā)現(xiàn)RADIUS下發(fā)的car值的上下行的峰值速率與平均速率相同4、建議用戶將峰值速率更改為平均速率的五倍后問題解決小結(jié):BRAS,各個版本無論RADIUS下發(fā)car值屬性還是本地定義car值,都需要保證峰值速率為平均速率或者基本速率的5倍,否則用戶上網(wǎng)的速率可能會不理想。對端設(shè)備故障導(dǎo)致BRA
40、S下VLAN接入及路由方式接入用戶不能打開網(wǎng)頁現(xiàn)象描述BRAS上行通過GE口和具有二層功能的三層交換機C相連,對端接口為二層接口,從而實現(xiàn)寬帶上網(wǎng)業(yè)務(wù)。BRAS下帶有VLAN、PPPOE、路由接入三種用戶,發(fā)生故障時VLAN用戶和路由方式用戶telnet、ftp、QQ、foxmail等業(yè)務(wù)都正常,但是無法打開http網(wǎng)頁,而PPPOE用戶業(yè)務(wù)都正常。原因分析1、由于BRAS的PPPOE業(yè)務(wù)是正常的,所以GE口沒問題;2、VLAN和路由方式用戶均能認(rèn)證通過,且對上行接口PING大包均能通,說明不是板的原因;3、VLAN和路由方式用戶的telnet、ftp、QQ、foxmail等業(yè)務(wù)應(yīng)用是正常的,
41、但打不開HTTP報文,問題出在兩設(shè)備對接或?qū)Χ嗽O(shè)備對HTTP這類報文處理上;4、PPPOE用戶正常,而VLAN用戶不正常,兩種用戶從PC機出來的報文分片大小不一致,懷疑對接MTU值不一致;5、懷疑對端C交換機故障導(dǎo)致對大報文處理有問題。處理過程1、從PPPOE方式用戶上對BRAS對端的C交換機二層接口進行PING大包操作,一切正常;2、從路由方式用戶上對BRAS對端做同樣的ping大包操作,發(fā)現(xiàn)PING包包長達到1469就不能PING通,顯示超時;3、在C交換機上對對接BRAS的GE口進行鏡像抓包,并且從BRAS上進行PING大包測試,發(fā)現(xiàn)BRAS的上行口沒有收到超過1469以上包長回來的包;
42、4、確認(rèn)雙方MTU值都是1500;5、對C交換機二層端口進行更換,總共更換了6個GE口中的4個,發(fā)現(xiàn)問題依舊;6、更換C交換機的二層接口為三層接口上,發(fā)現(xiàn)業(yè)務(wù)恢復(fù)正常,PING大包正常,所有應(yīng)用均正常了,定位為對端設(shè)備二層接口問題。由于網(wǎng)絡(luò)中存在多個PPPoE server導(dǎo)致PPPoE用戶不能上線現(xiàn)象描述BRAS設(shè)備,采用本地認(rèn)證方式,配置好數(shù)據(jù)后用戶撥號不能上線。原因分析1、物理線路問題,導(dǎo)致?lián)芴栃畔⒉荒軅魉偷紹RAS。 2、數(shù)據(jù)配置錯誤,導(dǎo)致認(rèn)證失敗 3、網(wǎng)絡(luò)結(jié)構(gòu)問題,導(dǎo)致?lián)芴栃畔⒉荒軅魉偷紹RAS。處理過程1、檢查PC、lanswitch和BRAS業(yè)務(wù)接入網(wǎng)口指示燈閃爍正常。2、檢查B
43、RAS的配置數(shù)據(jù),發(fā)現(xiàn)該設(shè)備的域名及認(rèn)證數(shù)據(jù)完備,數(shù)據(jù)配置沒有問題。 3、打開BRAS的debug aaa開關(guān),沒有發(fā)現(xiàn)該帳號的認(rèn)證信息,說明用戶沒有把認(rèn)證信息送給BRAS。4、打開debug ppp和debug pppoe,看不到用戶ppp發(fā)現(xiàn)階段的報文,這種情況一般都是由于PC在撥號時沒有正確的發(fā)現(xiàn)pppoe的server引起的。而不能發(fā)現(xiàn)server可能是由于通路有問題引起。因此檢查pc到lanswitch到BRAS間的數(shù)據(jù)傳送通路。5、檢查lanswitch數(shù)據(jù)配置,其lanswitch配置為access端口,不存在vlan劃分錯誤的問題,因此pppoe的撥號信息應(yīng)該能夠正確的送到BR
44、AS上。到底是不是發(fā)現(xiàn)了pppoe的server,在撥號軟件上也有指示。6、請用戶查看enternet300在屬性菜單中提供的信息。發(fā)現(xiàn)該軟件指示了多個pppoe的服務(wù)器,當(dāng)前選擇的并不是BRAS,在選擇BRAS后,可以正常認(rèn)證通過。原來該用戶是購買BRAS作測試用,在沒有安裝BRAS之前,使用的是pppoeserver的仿真軟件,因此在網(wǎng)絡(luò)中存在多個pppoe的server。建議與總結(jié)如果網(wǎng)絡(luò)中有多個pppoe的server,在pppoe的發(fā)現(xiàn)階段,PC可能是根據(jù)報文響應(yīng)的到達的早晚來選擇哪一個作為server,因此當(dāng)網(wǎng)絡(luò)中有多個server的時候可能會選擇錯誤。本案例發(fā)生的測試環(huán)境中,在運
45、營的沒有進行VLAN隔離的以太網(wǎng)中,如果某用戶非法安裝此類軟件,也可能造成其它用戶不能正常的撥號。因此建議:1、在發(fā)生用戶不能正常撥號時,除了利用BRAS的診斷信息外,還可以多利用撥號軟件本身的提供的信息來判斷解決問題。2、從網(wǎng)絡(luò)安全的角度出發(fā),對pppoe用戶劃分vlan進行隔離。路由問題導(dǎo)致BRAS下掛用戶訪問省外站點速度慢現(xiàn)象描述某電信組網(wǎng):internet路由器LSBRASDSLAMusers。從BRAS開通業(yè)務(wù)以來一直存在問題:BRAS下掛用戶訪問省內(nèi)網(wǎng)站正常,但在打開省外網(wǎng)頁時速度比窄帶撥號還要慢得多。原因分析訪問省內(nèi)網(wǎng)站正常說明BRAS接口配置、路由配置正常(BRAS只配置一條指
46、到LS的缺省路由),懷疑訪問省外網(wǎng)站時所經(jīng)路徑有問題處理過程使用BRAS網(wǎng)段的用戶Tracert省外站點A多次,每次所經(jīng)路由相同(路由穩(wěn)定),跳數(shù)為x;使用LS下其他網(wǎng)段(訪問省外站點速度正常的網(wǎng)段)用戶Tracert站點A多次,每次所經(jīng)路由也相同,跳數(shù)為y,發(fā)現(xiàn)xy,且開始幾跳路徑相同,但從路由器R開始分開,說明路由器R配置了源地址路由,通過修改路由器R的配置,BRAS下掛用戶訪問速度正常。建議與總結(jié)由于internet的連通性,訪問某站點時不經(jīng)最佳路由可能也可打開,但速度肯定要慢,這時一定要注意路由的配置,保證業(yè)務(wù)流走最佳路徑。由于對端千兆口發(fā)光功率過大導(dǎo)致和BRAS千兆對接不通現(xiàn)象描述p
47、ppoe用戶-BRAS-某設(shè)備-INTERNET節(jié)點;故障現(xiàn)象:BRASNAT千兆和某設(shè)備對接,BRASNAT板設(shè)置成千兆全雙工,對端也配置成千兆全雙工,BRAS配置IP地址:xx.xx.xx.2/52,對端配置IP地址;xx.xx.xx.1/52,兩邊的端口都UP,但是無法PING通對方。原因分析BRAS和對端配置的IP地址在同一個網(wǎng)段,互相PING不通說明二者在三層網(wǎng)絡(luò)層沒有互通,需要做的工作就是從物理層查到鏈路層然后到網(wǎng)絡(luò)層,看故障出在什么地方,然后定位解決。處理過程1、懷疑對端和BRAS二者千兆口模式設(shè)置不對,把對端接BRAS的千兆端口改為自適應(yīng)模式,BRAS設(shè)置成千兆全雙工模式,查看
48、BRAS千兆端口狀態(tài)為UP,查看對端千兆端口狀態(tài)為down,二者無法PING通;把對端千兆端口改為自適應(yīng)模式,BRAS千兆端口也配置成自適應(yīng)模式,BRAS的千兆端口狀態(tài)為UP,對端千兆端口狀態(tài)為DOWN,二者無法PING通;把對端千兆端口改為千兆全雙工模式,BRAS千兆端口改為自適應(yīng)模式,BRAS千兆端口狀態(tài)為DOWN,對端千兆端口狀態(tài)為DOWN,二者沒法PING通;只有把BRAS和對端千兆對接的時候二者的千兆口必須都設(shè)置成千兆全雙工模式,物理層才能互通,二者的千兆端口狀態(tài)才能都UP。2、對端和BRAS的千兆口的物理狀態(tài)都是UP,但沒法PING通,懷疑對端數(shù)據(jù)配置有誤(BRAS只需要配置一個I
49、P地址,沒有什么數(shù)據(jù)而言,所以不用懷疑BRAS數(shù)據(jù)問題)。對端屬于一個三層交換機,所有的IP接入都是通過VLAN接入的,也就是說xx.xx.xx.1是配置在某個VLAN下的,而每個千兆口默認(rèn)的是tagged模式,BRAS千兆口只支持untagged模式,把對端的千兆端口模式改成untagge 的,互相還是PING不同;BRAS千兆口默認(rèn)的是沒有流控的,查看對端配置數(shù)據(jù),千兆口也沒有作流控,不存在因為二者流控配置不一致而導(dǎo)致不通的可能;3、數(shù)據(jù)仔細核查沒有問題,故障的焦點還是轉(zhuǎn)移到物理連接上,經(jīng)過確認(rèn),BRAS千兆口能夠接受的光的光功率范圍是-20db-9db,用光功率計測試對端發(fā)過來的光,發(fā)現(xiàn)
50、光功率是 -7db。問題終于定位是對端光功率過大導(dǎo)致不通,在對端和BRAS之間加個光衰器,讓對端送過來的光的功率為-10db,問題立刻解決。建議與總結(jié)BRAS千兆口和別的廠家對接的時候涉及的方面很多,如果對接不成功,可以分層考慮,定位是哪一層不通,然后解決。而且要排除物理端口UP就一定能PING通的誤區(qū)。附錄資料:從 XML 生成可與 Ajax 共同使用的 JSON時下,非常流行使用 JavaScript 代碼為數(shù)據(jù)驅(qū)動的 Web 應(yīng)用程序添加互動性。若能將數(shù)據(jù)編碼成 JavaScript Object Notation(JSON)的格式,您就可以更輕松地通過 JavaScript 語言使用它
51、。通過本文,發(fā)掘使用 XSLT V2 從 XML 數(shù)據(jù)生成 JSON 的幾種不同方法。幾年前,許多開發(fā)人員很看好 XML、XSLT、Extensible HTML (XHTML)和其他一些基于標(biāo)記的語言?,F(xiàn)在,Asynchronous JavaScript and XML(AJAX)成了新的熱點,人們又將目光轉(zhuǎn)向了使用 JavaScript 代碼的數(shù)據(jù)驅(qū)動的富 Internet 應(yīng)用程序。但是開發(fā)人員是否已經(jīng)消除了 XML 和這一新技術(shù)之間的鴻溝呢?當(dāng)然,您可以在 Web 客戶機中使用 XML 解析器來讀取數(shù)據(jù),但這種做法會帶來兩個問題。第一,出于安全方面的原因,XML 數(shù)據(jù)只能從與此頁面相同
52、的那個域中讀取。這雖然不是什么大的限制因素,但它的確會引起部署方面的問題,還會阻礙 DHTML 小部件的創(chuàng)建。第二,讀取和解析 XML 會非常慢。另一種做法是讓服務(wù)器執(zhí)行 XML 的解析工作,方法是設(shè)置服務(wù)器,使之向瀏覽器發(fā)送以 JavaScript 代碼或時下流行的 JavaScript Object Notation(JSON)編碼的數(shù)據(jù)。本文將展示如下三種使用 XSLT V2 語言和 Saxon XSLT V2 處理器從 XML 數(shù)據(jù)生成 JSON 的技巧: 簡單編碼 通過函數(shù)調(diào)用加載數(shù)據(jù) 編碼對象 JSON 簡介要學(xué)習(xí)如何將數(shù)據(jù)編碼成 JSON(它只是 JavaScript 的一個子集
53、),最好的方法是從數(shù)據(jù)開始。清單 1 顯示了書籍列表的一個示例 XML 數(shù)據(jù)集。清單 1. 基本的圖形化圖書館 Code Generation in Action JackHerrington Manning PHP Hacks JackHerrington OReilly Podcasting Hacks JackHerrington OReilly 這個數(shù)據(jù)集很簡單,只包含三本書,每本書都具有惟一的 ID、書名、作者姓名及出版商的名字。(沒錯,我只選擇了我自己的書作為數(shù)據(jù)集,但能怨我嗎?這些書實在是不可多得的節(jié)日和生日禮物。)清單 2 顯示了這些數(shù)據(jù)在 JSON 中的效果。清單 2. JS
54、ON 中的示例數(shù)據(jù)集 id: 1, title: Code Generation in Action, first: Jack, last: Herrington, publisher: Manning , . 方括號 () 表明這是一個數(shù)組。大括號 () 則表明這是一個散列表,該散列表由一組名稱和值對組成。在本例中,我創(chuàng)建了一個散列表的數(shù)組 用來存儲這類結(jié)構(gòu)式數(shù)據(jù)的一種常見方法。另外一點值得注意的是字符串是通過單引號或雙引號被編碼的。所以,如果我想用單引號編碼 OReilly,我就必須使用反斜杠對它進行轉(zhuǎn)義:OReilly。 這讓我編寫的這個 XSLT 樣式表更為有趣了一些。我并未在本例中放
55、上任何日期,但您也可以通過如下兩種方法來編碼日期。第一種方法是將日期作為字符串,該字符串必須在后面被解析。第二種方法是將日期作為一個對象,比如:publishdate: new Date( 2006, 6, 16, 17, 45, 0 )這段代碼將 publishdate 的值設(shè)置為6/16/2006 5:45:00 p.m.。簡單編碼接下來我將陸續(xù)介紹 JSON 編碼的幾種技巧。第一種也是其中最簡單的一種,此樣式表如 清單 3 所示。清單 3. simple.xsl 樣式表 var g_books = 1, id: ,name: ,first: ,last: ,publisher: ;要理解
56、此樣式表,不妨先來看一下 清單 4 所示的輸出。清單 4. simple.xsl 的輸出var g_books = id: 1,name: Code Generation in Action,first: Jack,last: Herrington,publisher: Manning, id: 2,name: PHP Hacks,first: Jack,last: Herrington,publisher: OReilly, id: 3,name: Podcasting Hacks,first: Jack,last: Herrington,publisher: OReilly;這里,我將名為
57、 g_books 的變量設(shè)置為一個包含三個散列表的數(shù)組,每個散列表包含關(guān)于該書的信息。再回過頭來看看 清單 3,您會發(fā)現(xiàn)第一個模板匹配 / 路徑,它也是首先應(yīng)用到輸入數(shù)據(jù)集的模板,該模板使用 for-each 循環(huán)來遍歷每本書。之后,它使用 標(biāo)記來將文本從該數(shù)據(jù)輸出到 JavaScript 輸出代碼。對于字符串,我使用名為 js:escape() 的定制函數(shù),它在模板之前定義。該函數(shù)使用一個正則表達式將一個單引號標(biāo)記更改為帶有反斜杠的單引號標(biāo)記。最后一個重要的元素是 標(biāo)記,它告知處理器要輸出的是文本而不是 XML。要檢驗此過程是否可以正常工作,我加入了一個 simple .html 文件,該文
58、件引用我在 simple.js 保存的 XSL 樣式表的輸出。這個 HTML 文件如 清單 5 所示。清單 5. simple.html 文件Simple JS loaderdocument.write( Found +g_books.length+ books );.html 文件使用 標(biāo)記簡單地加載已編碼了的 JavaScript 代碼。之后,第二個 標(biāo)記將數(shù)組的長度寫出到瀏覽器頁面,如 圖 1 所示。圖 1. simple.html 的輸出好了!數(shù)據(jù)文件包含三本書,相應(yīng)的 JavaScript 文件也包含三本書。它真的可以工作!通過函數(shù)加載上述第一個示例很簡單,而且在大多數(shù)情況下可以發(fā)揮
59、其作用,但它存在一些問題。第一個問題是對于數(shù)據(jù)何時被加載沒有任何提示。如果數(shù)據(jù)是像頁面那樣被靜態(tài)加載的,這不成問題。但是如果頁面動態(tài)創(chuàng)建了一個 標(biāo)記來按需加載數(shù)據(jù),那么就很有必要知道 標(biāo)記是何時完成的。實現(xiàn)此功能的最好的方法是讓編碼了的數(shù)據(jù)調(diào)用一個 JavaScript 函數(shù),而不是只設(shè)置數(shù)據(jù)。這個概念很重要,所以我將花一些時間來介紹一下為什么您必須要通過動態(tài)生成的 標(biāo)記來加載數(shù)據(jù)。頁面加載后,從服務(wù)器獲得數(shù)據(jù)是 Web 2.0 的核心功能。一種方法是使用 AJAX 機制通過到服務(wù)器的調(diào)用來加載 XML。然而,出于安全性的原因,AJAX 機制只限于從單一域獲取數(shù)據(jù)。這在大多數(shù)情況下都沒有問題,
60、但有時,您可能需要 JavaScript 代碼運行在他人的頁面上(例如,Google Maps)。在這種情況下從服務(wù)器獲得數(shù)據(jù)的惟一方法是通過動態(tài)加載 標(biāo)記。獲悉 標(biāo)記何時加載的最好的方法是讓 標(biāo)記返回的腳本調(diào)用函數(shù)而不是簡單地加載數(shù)據(jù)。清單 6 顯示了在函數(shù)調(diào)用中編碼的數(shù)據(jù)。清單 6. Function1.jsAddBooks( id: 1,name: Code Generation in Action,first: Jack,last: Herrington,publisher: Manning, id: 2,name: PHP Hacks,first: Jack,last: Herrin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國家用廚房用品行業(yè)市場全景分析及前景機遇研判報告
- 設(shè)備設(shè)施缺陷管理制度
- 設(shè)計勘查安全管理制度
- 2025年中國雞冠提取物行業(yè)市場全景分析及前景機遇研判報告
- 診室醫(yī)護日常管理制度
- 診所消毒衛(wèi)生管理制度
- 診療質(zhì)量監(jiān)督管理制度
- 財務(wù)賬本憑證管理制度
- 財富公司風(fēng)險管理制度
- 貨代公司工位管理制度
- 公開招聘社區(qū)居委專職工作人員考試筆試、面試題集及相關(guān)知識(11套試題含答案)
- 《植物生理學(xué)》課件第三章+植物的光合作用
- 游泳館網(wǎng)架翻新施工組織方案設(shè)計
- 有機化學(xué)所有的命名--超全.
- 中職數(shù)學(xué)基礎(chǔ)模塊下冊《等差數(shù)列》ppt說課稿
- 引水罐的設(shè)計計算
- 三年級譯林版英語下學(xué)期按要求寫句子專項強化練習(xí)題
- 電纜接線工藝設(shè)計規(guī)范流程
- 中醫(yī)經(jīng)絡(luò)減肥課件
- 5WHY分析法培訓(xùn)
- 巧克力糖自動包裝機 課程設(shè)計
評論
0/150
提交評論