聯系我們 - 廣告服務 - 聯系電話:
您的當前位置: > 關注 > > 正文

【聚看點】linux上支持的3G上網卡怎么用?3G上網卡使用方法

來源:CSDN 時間:2023-04-17 09:55:16

使用3G上網卡(或稱為3G modem) 1.選型:選擇linux上支持的3G上網卡 更多型號可參考: usb_modeswitch的device_reference.txt 2 使用步驟(以windows為例)a. 接上發現移動硬盤,ZTEMODEM里面有安裝程序AutoRun.exe和驅動程序

b. 安裝完后,移動硬盤消失; c. 發現新硬件,自動安裝好驅動程序后,發現2個串口(一個用于發AT命令,可通過COM 8發短信,另一個是診斷端口,通過COM6診斷3G上網卡)和一個modem


(資料圖片僅供參考)

d. 運行程序即可撥號上網 zeroCD: 3G上網卡自帶程序,接到PC后先作為移動硬盤使用,安裝程序后切換為modem 對于Linux使用過程:a. 接上后切換mode: usb_modeswitch b. 安裝驅動程序: linux內核自帶, 會出現3個ttyUSB0,1,2(其中一個用于mode,另外兩個其中一個用于收發AT命令,另外一個用于診斷) c. 撥號上網:pppd 3 交叉編譯應用程序并測試 (1)配置內核(內核目錄下鍵入make menuconfig)-> Device Drivers(把PPP相關驅動選上編譯進內核)   -> Network device support       <*>   PPP (point-to-point protocol) support                                      <*>     PPP BSD-Compress compression                                                 <*>     PPP Deflate compression                                                              [*]     PPP filtering                                                                    <*>     PPP MPPE compression (encryption) (EXPERIMENTAL)                                 [*]     PPP multilink support (EXPERIMENTAL)                                             <*>     PPP over Ethernet (EXPERIMENTAL)                                                 <*>     PPP support for async serial ports                                               <*>     PPP support for sync tty ports    -> Device Drivers(由于我們出現的是ttyUSB0,1,2,所以要配置USB,輸入M配置稱模塊)   -> USB supportUSB Serial Converter supportUSB driver for GSM and CDMA modems(在網上搜索3G上網卡要用到的文件是option.c,對應的配置項是CONFIG_USB_SERIAL_OPTION,需要在內核中搜索并配置編譯成模塊,看提示信息prompt部分)

如果比較難看出來的話,可以先去看源代碼

打開Makefile,搜索里面的usbserial,需要配置項CONFIG_USB_SERIAL

如果知道某個文件,如usb-serial.c,需要使用它,可以把同目錄下的Makefile打開,查看usb-serial.o對應哪一個配置項。在make menuconfig搜索這個配置項

make uImage && make modules//編譯內核并編譯所有的模塊驅動 應用程序源碼:(usb_modeswitch) http://www.draisberghof.de/usb_modeswitch/ http://www.libusb.org/ ftp://ftp.samba.org/pub/ppp/ (2)交叉編譯:libusb:   usb_modeswitch:(依賴于libusb庫) ./configure --host=arm-linux --prefix=$PWD/tmp//--host=arm-linux 運行環境 --prefix=$(pwd)/_install 安裝目錄,$PWD表示當前目錄

make  make install 把頭文件和庫復制進交叉工具鏈里(在temp目錄下) sudo  cp libusb.h /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include sudo cp * -rfd /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib(*表示所有文件,d表示原來是鏈接文件吧它作為鏈接文件拷貝進去)

...-f:為強制 (force) 的意思,若有重復或其它疑問...-r:遞歸持續復制,用于目錄的復制行為 把庫復制到根文件系統的lib目錄下 sudo cp *so* -d /work/nfs_root/fs_mini_mdev_new/lib/ usb_modeswitch:(依賴于libusb庫) 修改Makefile CC          = arm-linux-gcc  //修改編譯器 LIBS        = -lusb-1.0 //-l用于指定依賴的庫,這里是usb-1.0 make DESTDIR=$PWD/tmp //指定安裝路徑 make DESTDIR=$PWD/tmp  install ./configure是用來檢測你的安裝平臺的目標特征的。比如它會檢測你是不是有CC或GCC,并不是需要CC或GCC,它是個shell腳本。 make是用來編譯的,它從Makefile中讀取指令,然后編譯。 make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。 cd tmp sudo cp * -rfd /work/nfs_root/fs_mini_mdev_new usb-modeswitch-data-20131113:(3G上網相關的配置文件 usr/share/usb_modeswitch) make DESTDIR=$PWD/tmp install cd tmp sudo cp * -rfd /work/nfs_root/fs_mini_mdev_new pppd:(ppp-2.4.5.tar.gz) 修改這6個文件, "$(INSTALL) -s"改為"$(INSTALL) "(也就是去掉-s) chat/Makefile.linux pppd/plugins/radius/Makefile.linux pppd/plugins/rp-pppoe/Makefile.linux pppd/Makefile.linux pppdump/Makefile.linux pppstats/Makefile.linux ./configure --host=arm-linux --prefix=$PWD/tmp //配置運行環境和當前安裝目錄 make CC=arm-linux-gcc  //指定編譯器(默認使用是PC機里面的編譯器) make CC=arm-linux-gcc install cd tmp sudo cp * -rfd /work/nfs_root/fs_mini_mdev_new 使用: A. 以mf637為例 參考 HI3515海思開發板移植3G模塊筆記 - 倔強的曉奇 - 博客頻道 - CSDN.NET.htm http://blog.csdn.net/alangdangjia/article/details/9413009 a. 用新內核啟動開發板復制驅動: sudo cp drivers/usb/serial/*.ko /work/nfs_root/fs_mini_mdev_new//*.ko代表全部的驅動程序 b. 接上3G上網卡,用lsusb查看VID/PID

(VID(Vendor ID,供應商識別碼)和PID(Product ID,產品識別碼)) lsusb Bus 001 Device 002: ID 19d2:2000 c. 使用usb_modeswitch切換工作模式   它需要一個配置文件,使用上面得到的VIP/PID在device_reference.txt里找到一段配置值, 寫入一個文件mf637.cfg(這里cfg是配置文件后綴) 把它放到開發板的/etc目錄 usb_modeswitch -c /etc/mf637.cfg

執行后查看,發現PID發生變化,因為之前那個是默認的PID, 而現在切換后的PID d. 安裝驅動程序insmod usbserial.ko  // insmod usb_wwan.ko  insmod option.ko

查看設備節點 e. 用pppd撥號對于mf637: 修改/etc/ppp/peers/wcdma-dailer配置文件(拷貝到文件系統), 使用/dev/ttyUSB2(如果第0個串口不行,改成第1或第2個串口,共3個串口) pppd call wcdma-dailer & //調用聯通3G的模塊的命令,&表示在后臺運行

cp /etc/ppp/resolv.conf /etc/resolv.conf  //DNS寫在/etc/ppp/resolv.conf里面 ping news.qq.com //ping網址 B. 以EW65為例在device_refeence.txt里選取一段存為ew65.cfg

板上接入EW65后執行:usb_modeswitch -c /etc/ew65.cfg 修改/etc/ppp/peers/wcdma-dailer, 使用/dev/ttyUSB0 pppd call wcdma-dailer & cp /etc/ppp/resolv.conf /etc/resolv.conf ping news.qq.com 注意:

#pppd call wcdma-dailer  這個是調用聯通3G的模塊的命令  #pppd call evdo-dailer  這個是調用電信3G的模塊的命令  #pppd call td-dailer  這個是調用移動3G的模塊的命令   /etc/resolv.conf是DNS客戶機配置文件,用于設置DNS服務器的IP地址及DNS域名,還包含了主機的域名搜索順序。該文件是由域名解析器(resolver,一個根據主機名解析IP地址的庫)使用的配置文件。它的格式很簡單,每行以一個關鍵字開頭,后接一個或多個由空格隔開的參數。 resolv.conf的關鍵字主要有四個,分別是: nameserver    //定義DNS服務器的IP地址 domain       //定義本地域名 search        //定義域名的搜索列表 sortlist        //對返回的域名進行排序 下面我們給出一個/etc/resolv.conf的示例: domain  51osos.com search  www.51osos.com  51osos.com nameserver 202.102.192.68 nameserver 202.102.192.69 最主要是nameserver關鍵字,如果沒指定nameserver就找不到DNS服務器,其它關鍵字是可選的。 nameserver表示解析域名時使用該地址指定的主機為域名服務器。其中域名服務器是按照文件中出現的順序來查詢的,且只有當第一個nameserver沒有反應時才查詢下面的nameserver。 domain

聲明主機的域名。很多程序用到它,如郵件系統;當為沒有域名的主機進行DNS查詢時,也要用到。如果沒有域名,主機名將被使用,刪除所有在第一個點( .)前面的內容。 search

它的多個參數指明域名查詢順序。當要查詢沒有域名的主機,主機將在由search聲明的域中分別查找。 domain和search不能共存;如果同時存在,后面出現的將會被使用。 sortlist

允許將得到域名結果進行特定的排序。它的參數為網絡/掩碼對,允許任意的排列順序。

、dns 代理原理:如以下網絡拓撲圖:

2.1 給PC輸入域名,如給PC瀏覽器輸入域名,產生DNS請求。

2.2 如果PC的DNS 服務器IP是ROUTER 的IP,并且ROUTER支持DNS 代理并開啟,那么PC產生的DNS請求會發送給ROUTER.ROUTER的處理進程會該請求。

2.3 ROUTER的處理進程首先查詢自身的緩存/etc/hosts文件是否有該域名的IP,如果有則回復DNS。如果沒有根據/etc/resolv.conf的配置把該DNS請求轉發到上一級DNS SERVER ,由上一級DNS SERVER 處理。

DNS:是做域名解析的。我們平時所輸入的網址,都是某臺服務器的主機名,比如www.BAIDU.COM,主機之間通訊是通過IP地址訪問的,這個是有需要某個機制,把地址解析成名字,因為IP地址是一串數字,難以記憶,而名字卻很好記,這個就是DNS所要完成的,就好像,身份證上面的號碼是IP,而名字就是主機名一樣。比如,你要訪問www.BAIDU.COM,從你輸入網址開始,到網頁打開,整個的過程如下:(一切所需的IP地址都是正確的)1. 你的請求通過你設置的網關地址(網關地址就是路由器內網IP地址)發到公網的DNS服務器(這個DNS服務器是在你網卡設置中設置的)。2. DNS服務器收到請求之后,查找自己的數據庫,尋找你所輸入的www.BAIDU.COM這臺服務器的地址是什么,找到之后,再把找到的IP地址告訴你這個客戶端。3. 客戶端收到了DNS服務器的回應,獲得了www.BAIDU.COM這臺主機的IP地址,然后再向這個IP地址發出請求,當然,也是通過網關出去,最終,你將打開www.BAIDU.COM這個網頁。這所以出現你的這個提示,應該是你的網卡設置上沒有設置DNS造成的,或者DNS設置失敗。你最好先電話咨詢一下你們當地的運營商,問問DNS的IP地址是多少,然后再在網卡里設置一下。在你的主機上,右鍵點擊網上鄰居--屬性,再右鍵點擊他的網卡(一般都是一個叫本地連接的圖標),再選屬性,出現一個窗口,在“此連接使用下列項目”的下面選擇“internet協議(TCP/IP),雙擊這個選項,你會看到一個設置IP地址的對話框。里面有“使用下列DNS服務器”,在這里填寫你被告知的DNS地址就可以了

責任編輯:

標簽:

相關推薦:

精彩放送:

新聞聚焦
Top 岛国精品在线