內(nèi)核ppp編制和錯(cuò)誤分析
在不少設(shè)置中,我們都需要進(jìn)行一下PPP的內(nèi)核編制。那么對(duì)于PPP協(xié)議的一些基本內(nèi)容就不再進(jìn)行贅述了。這次我們則主要講解一下編譯內(nèi)核使支持ppp的內(nèi)容。希望對(duì)大家有用。
編譯內(nèi)核使支持ppp
- make menuconfig
- network device support
- ppp support
- ppp multilink support
- ppp support for async serial ports
- ppp support for sync tty ports
- ppp deflate compression
- ppp BSD_compress compression
- ppp over Ethernet
- SLIP(serial line )support
- CSLIP compressed headers
3:編譯撥號(hào)工具pppd chat,選擇:
- network application
- pppd
- rp-pppoe
- miscellanenous application
- chat
4: 建立設(shè)備節(jié)點(diǎn)
- ppp,c,108,0
5: 創(chuàng)建resolv.conf文件,配置dns(可以不設(shè),在/etc/ppp/options 選項(xiàng)中使用 usepeerdns )
- /etc/ppp/resolv.conf
- nameserver 211.136.20.203
- nameserver 211.136.17.107
6:創(chuàng)建撥號(hào)腳本(腳本在redhat9下成功撥號(hào)移植到開(kāi)發(fā)板上去的)
- /bin : ppp-on
- ppp-off
- /etc/ppp:
- pap-secrets
- chap-secrets
- options
如果想要在開(kāi)發(fā)板察看調(diào)試信息,那么將syslogd 編譯進(jìn)內(nèi)核。進(jìn)入uclinux后,可以在/var/log/messages處察看調(diào)試信息。
另外,以下是我總結(jié)出的一些容易出錯(cuò)的LOG信息。
“Lcp : timeout sending config-requests”
這種情況一般是沒(méi)有連接上server,所以出錯(cuò)的情況有很多種,比如撥的號(hào)碼填寫(xiě)錯(cuò)誤,串口,波特率是否正確 等
“authentication 相關(guān)的”
在rh9的下,默認(rèn)是“auth”,所以,認(rèn)證用戶名,密碼都不能為空
(貌似cdma采用的是chap認(rèn)證方式,gprs采用的是pap認(rèn)證方式 )
“lcp terminated by peer”
一般情況下是認(rèn)證失敗導(dǎo)致的,檢查options ,pap-secrets,chap-secrets等文件
“connect scripts failed”
這樣的錯(cuò)誤,一般是由connect 選項(xiàng)引起的,檢查你的腳本路徑,串口,波特率是否正確。
還有一種錯(cuò)誤信息是在chat 會(huì)話中出現(xiàn)的 比如
- sending( )
- expected ()
- alarm
這樣的情況得檢查chat 會(huì)話。
***一種情況 : “Serial line is looped back.“
如果你遇到這種情況,那就證明你運(yùn)氣實(shí)在太好了 - -! ,要解決這個(gè)問(wèn)題,可以檢查串口驅(qū)動(dòng),串口的連接.另外,在chat會(huì)話后加上"~",也許是你解決問(wèn)題的辦法.
-mn no magic
或者改波特率,有的moden對(duì)波特率有特別的限制。
總之,撥號(hào)前一定要明白ppp實(shí)現(xiàn)原理,所以,ppp-howto,FAQ是必須得看得,我想,如果你真的看懂了howto,FAQ,那么,撥號(hào)就是一件很簡(jiǎn)單的事了.