5-AT命令交互之-APN

APN指一種網(wǎng)絡(luò)接入技術(shù),是通過手機(jī)上網(wǎng)時(shí)必須配置的一個(gè)參數(shù),它決定了手機(jī)通過哪種接入方式來訪問網(wǎng)絡(luò)。

對(duì)于APN在運(yùn)營商上面的具體使用過程可能要查專門的信息。

百科對(duì)APN的使用過程有以下實(shí)例:

GPRS專網(wǎng)系統(tǒng)終端上網(wǎng)登錄服務(wù)器平臺(tái)的流程為:
1)用戶發(fā)出GPRS登錄請(qǐng)求,請(qǐng)求中包括由運(yùn)營商為GPRS專網(wǎng)系統(tǒng)專門分配的專網(wǎng)APN;
2)根據(jù)請(qǐng)求中的APN,SGSN向DNS服務(wù)器發(fā)出查詢請(qǐng)求,找到與企業(yè)服務(wù)器平臺(tái)連接的GGSN,并將用戶請(qǐng)求通過GTP隧道封裝送給GGSN;
3)GGSN將用戶認(rèn)證信息(包括手機(jī)號(hào)碼、用戶賬號(hào)、密碼等)通過專線送至Radius進(jìn)行認(rèn)證;
4)Radius認(rèn)證服務(wù)器看到手機(jī)號(hào)等認(rèn)證信息,確認(rèn)是合法用戶發(fā)來的請(qǐng)求,向DHCP服務(wù)器請(qǐng)求分配用戶地址;
5)Radius認(rèn)證通過后,由Radius向GGSN發(fā)送攜帶用戶地址的確認(rèn)信息;
6)用戶得到了IP地址,就可以攜帶數(shù)據(jù)包,對(duì)GPRS專網(wǎng)系統(tǒng)信息查詢和業(yè)務(wù)處理平臺(tái)進(jìn)行訪問。

在我們使用模塊上網(wǎng)時(shí),一般在查詢到IMSI之后就要設(shè)置APN了,對(duì)于APN的設(shè)置有很多AT接口可以設(shè)置,下面以移遠(yuǎn)的和SimCom的模塊進(jìn)行舉例

移遠(yuǎn)模塊


1.AT+CGDCONT 定義 PDP 上下文

AT+CGDCONT=1,"IP","apn"
<cid>  1~3  數(shù)值型參數(shù);用于指定 PDP 上下文標(biāo)識(shí)。該參數(shù)對(duì) TE-MT 接口而言是本地參數(shù),
并且可用于其他 PDP 上下文相關(guān)命令
<PDP_type> “IP”  (分組數(shù)據(jù)協(xié)議類型)字符型參數(shù);用于指定分組數(shù)據(jù)協(xié)議的類型。僅支持”IP”,
互聯(lián)網(wǎng)協(xié)議 IP(Internet Protocol)(IETF STD5)
<APN>  接入點(diǎn)名稱;表示一個(gè)字符串參數(shù),用于選擇 GGSN 或外部分組數(shù)據(jù)網(wǎng)絡(luò)的邏輯名稱。若
該參數(shù)取值為空或省略,則需要請(qǐng)求簽約值
<PDP_addr> 字符型參數(shù);用于表示對(duì)于特定 PDP 上下文,MT 分配的地址空間。若該參數(shù)取值為空或
省略,則 TE 在 PDP 啟動(dòng)過程中提供其他取值;若不能提供其他取值,則需要請(qǐng)求動(dòng)態(tài)地
址。即便在 PDP 啟動(dòng)過程中已分配地址,該命令的讀出形式仍繼續(xù)返回為空。使用
AT+CGPADDR 命令,可讀出該分配地址
<d_comp> 關(guān)閉(若取值省略,則該參數(shù)為缺省值);數(shù)值型參數(shù);用于控制 PDP 數(shù)據(jù)壓縮
<h_comp>  關(guān)閉(若取值省略,則該參數(shù)為缺省值);數(shù)值型參數(shù);用于控制 PDP 頭

2.AT+QICSGP 設(shè)置 CSD 或 或 GPRS

AT+QICSGP=1,"apn","username","passward"
<mode> 數(shù)字參數(shù);表明無線連接模式
0  CSD 連接
1  GPRS 連接

GPRS 連接配置的參數(shù)說明:
<apn> 字符串參數(shù);表明接入點(diǎn)名稱
<user name>  字符串參數(shù);表明用戶名
<password> 字符串參數(shù);表明用戶密碼

<dial number> 字符串參數(shù);表明 CSD 號(hào)碼
<user name>  字符串參數(shù);表明 CSD 連接用戶名
<password> 字符串參數(shù);表明 CSD 連接用戶密碼
<rate> 數(shù)字參數(shù);表明 CSD 連接速率
0  2400
1  4800
2  9600(缺省值)
3  14400

3.AT+QIREGAPP 啟動(dòng)任務(wù)并設(shè)置接入點(diǎn) APN 、用戶名和密碼

AT+QIREGAPP="apn","username","passward"
<apn> 字符串參數(shù);表明 GPRS/CSD 接入點(diǎn)名稱
<user name>  字符串參數(shù);表明 GPRS/CSD 接入點(diǎn)用戶名
<password> 字符串參數(shù);表明 GPRS/CSD 接入點(diǎn)用戶密碼
<rate> 表明 CSD 數(shù)據(jù)傳輸速率```

SimCom模塊


AT+CGDCONT 定義 PDP 上下文

AT+CGDCONT=1,"IP","apn"
<cid>  1~3  數(shù)值型參數(shù);用于指定 PDP 上下文標(biāo)識(shí)。該參數(shù)對(duì) TE-MT 接口而言是本地參數(shù),
并且可用于其他 PDP 上下文相關(guān)命令
<PDP_type> “IP”  (分組數(shù)據(jù)協(xié)議類型)字符型參數(shù);用于指定分組數(shù)據(jù)協(xié)議的類型。僅支持”IP”,
互聯(lián)網(wǎng)協(xié)議 IP(Internet Protocol)(IETF STD5)
<APN>  接入點(diǎn)名稱;表示一個(gè)字符串參數(shù),用于選擇 GGSN 或外部分組數(shù)據(jù)網(wǎng)絡(luò)的邏輯名稱。若
該參數(shù)取值為空或省略,則需要請(qǐng)求簽約值
<PDP_addr> 字符型參數(shù);用于表示對(duì)于特定 PDP 上下文,MT 分配的地址空間。若該參數(shù)取值為空或
省略,則 TE 在 PDP 啟動(dòng)過程中提供其他取值;若不能提供其他取值,則需要請(qǐng)求動(dòng)態(tài)地
址。即便在 PDP 啟動(dòng)過程中已分配地址,該命令的讀出形式仍繼續(xù)返回為空。使用
AT+CGPADDR 命令,可讀出該分配地址
<d_comp> 關(guān)閉(若取值省略,則該參數(shù)為缺省值);數(shù)值型參數(shù);用于控制 PDP 數(shù)據(jù)壓縮
<h_comp>  關(guān)閉(若取值省略,則該參數(shù)為缺省值);數(shù)值型參數(shù);用于控制 PDP 頭

AT+CIPCSGP 設(shè)置 CSD 或 或 GPRS

AT+CIPCSGP=1,"apn","username","passward"
<mode> 數(shù)字參數(shù);表明無線連接模式
0  CSD 連接
1  GPRS 連接

GPRS 連接配置的參數(shù)說明:
<apn> 字符串參數(shù);表明接入點(diǎn)名稱
<user name>  字符串參數(shù);表明用戶名
<password> 字符串參數(shù);表明用戶密碼

<dial number> 字符串參數(shù);表明 CSD 號(hào)碼
<user name>  字符串參數(shù);表明 CSD 連接用戶名
<password> 字符串參數(shù);表明 CSD 連接用戶密碼
<rate> 數(shù)字參數(shù);表明 CSD 連接速率
0  2400
1  4800
2  9600(缺省值)
3  14400

AT+CSTT 啟動(dòng)任務(wù)并設(shè)置接入點(diǎn) APN 、用戶名和密碼

AT+QIREGAPP="apn","username","passward"
<apn> 字符串參數(shù);表明 GPRS 接入點(diǎn)名稱
<user name>  字符串參數(shù);表明 GPRS 接入點(diǎn)用戶名
<password> 字符串參數(shù);表明 GPRS 接入點(diǎn)用戶密碼

Android系統(tǒng)


對(duì)于Android系統(tǒng)APN的設(shè)置必須要有接入點(diǎn)號(hào)碼MCC+MNC,接入點(diǎn)名稱APN,調(diào)用接口設(shè)置完是存在apn的數(shù)據(jù)庫里面。

當(dāng)前使用的apn,adb pull /data/data/com.android.providers.telephony/shared_prefs/preferred-apn.xml

默認(rèn)的apn,adb pull /system/etc/apns-conf.xml

全部apn數(shù)據(jù)庫,adb pull /data/data/com.android.providers.telephony/databases/telephony.db

用SQLiteSpy.exe查看db文件
file -> open database -> carriers

在/system/etc/apns-conf.xml 中添加 對(duì)應(yīng)302720 這條apn 記錄,然后push 進(jìn)去, 刪除 telephony.db 這個(gè)數(shù)據(jù)庫,重啟測(cè)一下

https://blog.csdn.net/Anmmei/article/details/77461530

45412:cmhk
46000,46002:cmnet
46001:3gnet
46003:ctlte
46011:ctnet
46004:cmiot
45407:3gnet
23410:giffgaff.com
52505:sct
45403:mb

APN     用戶名 密碼  IMSI前位
Internet    空   空   52003
cmhk        空   空   45412
m-wap       mms mms 45201
celcom3g    空   空   50219
indosatgprs 空   空   51001
Telkomsel   空   空   51010
MCC
202, "Greece",   "GR", "希臘" 
204, "Netherlands, The", "NL", "荷蘭" 
206, "Belgium",  "BE", "比利時(shí)" 
208, "France",  "FR", "法國" 
213, "Andorra",  "AD", "安道爾共和國" 
214, "Spain",  "ES", "西班牙" 
216, "Hungary",  "HU", "匈牙利" 
218, "Bosnia and Herzegovina", "BA", "" 
219, "Croatia",  "HR", "克羅地亞" 
220, "Serbia and Montenegro", "CS", "塞爾維亞和黑山" 
222, "Italy",  "IT", "意大利" 
226, "Romania",  "RO", "羅馬尼亞" 
228, "Switzerland", "CH", "瑞士" 
230, "Czech Republic", "CZ", "捷克" 
231, "Slovakia", "SK", "斯洛伐克" 
232, "Austria",  "AT", "奧地利" 
234, "United Kingdom", "GB", "英國" 
238, "Denmark",  "DK", "丹麥" 
240, "Sweden",  "SE", "瑞典" 
242, "Norway",  "NO", "挪威" 
244, "Finland",  "FI", "芬蘭" 
246, "Lithuania", "LT", "立陶宛" 
247, "Latvia",  "LV", "拉脫維亞" 
248, "Estonia",  "EE", "愛沙尼亞" 
250, "Russia",  "RU", "俄羅斯" 
255, "Ukraine",  "UA", "烏克蘭" 
257, "Belarus",  "BY", "" 
259, "Moldova",  "MD", "" 
260, "Poland",  "PL", "波蘭" 
262, "Germany",  "DE", "德國" 
266, "Gibraltar", "GI", "直布羅陀" 
268, "Portugal", "PT", "葡萄牙" 
270, "Luxembourg", "LU", "盧森堡" 
272, "Ireland",  "IE", "愛爾蘭" 
274, "Iceland",  "IS", "冰島" 
276, "Albania",  "AL", "阿爾巴尼亞" 
278, "Malta",  "MT", "馬耳他" 
280, "Cyprus",  "CY", "塞浦路斯" 
282, "Georgia",  "GE", "喬治亞州" 
283, "Armenia",  "AM", "亞美尼亞" 
284, "Bulgaria", "BG", "保加利亞" 
286, "Turkey",  "TR", "土耳其" 
288, "Faroe Islands", "FO", "" 
290, "Greenland", "GL", "格陵蘭島" 
293, "Slovenia", "SI", "斯洛文尼亞" 
294, "Macedonia, Former Yugoslav Republic of","MK", "" 
295, "Liechtenstein", "LI", "" 
302, "Canada",  "CA", "加拿大" 
310, "United States", "US", "美國" 
334, "Mexico",  "MX", "墨西哥" 
338, "Jamaica",  "JM", "牙買加" 
340, "French West Indies", "FW", "" 
342, "Barbados", "BB", "" 
344, "Antigua and Barbuda", "AG", "" 
346, "Cayman Islands", "KY", "" 
350, "Bermuda",  "BM", "百慕大" 
352, "Grenada",  "GD", "" 
362, "Netherlands Antillies", "AN", "" 
363, "Aruba",  "AW", "" 
368, "Cuba",  "CU", "古巴" 
370, "Dominican Republic", "DO", "" 
374, "Trinidad and Tobago", "TT", "" 
400, "Azerbaijan", "AZ", "" 
401, "Kazakhstan", "KZ", "哈薩克" 
402, "Bhutan",  "BT", "不丹" 
404, "India",  "IN", "印度" 
410, "Pakistan", "PK", "巴基斯坦" 
412, "Afghanistan", "AF", "阿富汗" 
413, "Sri Lanka", "LK", "" 
414, "Myanmar",  "MM", "緬甸" 
415, "Lebanon",  "LB", "黎巴嫩" 
416, "Jordan",  "JO", "約旦" 
417, "Syria",  "SY", "敘利亞" 
418, "Iraq",  "IQ", "伊拉克" 
419, "Kuwait",  "KW", "科威特" 
420, "Saudi Arabia", "SA", "" 
421, "Yemen",  "YE", "也門" 
422, "Oman",  "OM", "阿曼" 
424, "United Arab Emirates","UAE", "阿拉伯聯(lián)合酋長國" 
425, "Israel",  "IL", "以色列" 
426, "Bahrain",  "BH", "巴林島" 
427, "Qatar",  "QA", "卡塔爾" 
428, "Mongolia", "MN", "蒙古" 
429, "Nepal",  "NP", "尼泊爾" 
432, "Iran",  "IR", "伊朗" 
434, "Uzbekistan", "UZ", "烏茲別克斯坦" 
437, "Kyrgyzstan", "KG", "" 
438, "Turkmenistan","TM", "土庫曼斯坦" 
440, "Japan","JP",日本
452, "Vietnam",  "VN", "越南" 
454, "Hong Kong", "HK", "香港" 
456, "Cambodia", "KH", "柬埔寨" 
457, "Laos",  "LA", "老撾" 
460, "China",  "CN", "中國" 
466, "Taiwan",  "TW", "臺(tái)灣" 
467, "North Korea", "KP", "南韓" 
470, "Bangladesh", "BD", "孟加拉國" 
472, "Maldives", "MV", "馬爾代夫" 
502, "Malaysia", "MY", "馬來西亞" 
505, "Australia", "AU", "澳大利亞" 
510, "Indonesia", "ID", "印尼" 
515, "Philippines", "PH", "菲律賓" 
520, "Thailand", "TH", "泰國" 
525, "Singapore", "SG", "新加坡" 
528, "Brunei",  "BN", "汶萊" 
530, "New Zealand", "NZ", "" 
539, "Tonga",  "TO", "東加" 
541, "Vanuatu",  "VU", "" 
542, "Fiji Islands","FJ", "" 
544, "American Samoa", "AS", "薩摩亞"  
546, "New Caledonia","NC", "" 
547, "French Polynesia","PF", "波利尼西亞"  
550, "Micronesia", "FM", "" 
602, "Egypt",  "EG", "埃及" 
603, "Algeria",  "DZ", "阿爾及利亞" 
604, "Morocco",  "MA", "摩洛哥" 
605, "Tunisia",  "TN", "突尼斯" 
607, "Gambia, The", "GM", "岡比亞" 
608, "Senegal",  "SN", "塞內(nèi)加爾" 
609, "Mauritania", "MR", "" 
610, "Mali",  "ML", "馬里" 
611, "Guinea",  "GN", "幾內(nèi)亞" 
612, "C?te d’Ivoire", "CI", "" 
613, "Burkina Faso", "BF", "" 
614, "Niger",  "NE", "" 
615, "Togo",  "TG", "多哥" 
616, "Benin",  "BJ", "貝南" 
617, "Mauritius", "MU", "毛里求斯" 
618, "Liberia",  "LR", "利比里亞" 
620, "Ghana",  "GH", "加納" 
621, "Nigeria",  "NG", "尼日利亞" 
622, "Chad",  "TD", "乍得" 
623, "Central African Republic","CF", "中非" 
624, "Cameroon", "CM", "喀麥隆" 
625, "Cape Verde", "CV", "" 
626, "S?o Tomé and Príncipe", "ST", "" 
627, "Equatorial Guinea", "GQ", "" 
628, "Gabon",  "GA", "加蓬" 
629, "Congo",  "CG", "剛果" 
630, "Congo (DRC)", "CD", "剛果" 
631, "Angola",  "AO", "安哥拉" 
633, "Seychelles", "SC", "" 
634, "Mozambique", "MZ", "莫桑比克" 
634, "Sudan",  "SD", "蘇丹" 
635, "Rwanda",  "RW", "盧安達(dá)" 
636, "Ethiopia", "ET", "埃塞俄比亞" 
637, "Somalia",  "SO", "索馬里" 
639, "Kenya",  "KE", "肯尼亞" 
640, "Tanzania", "TZ", "坦桑尼亞" 
641, "Uganda",  "UG", "烏干達(dá)" 
642, "Burundi",  "BI", "布隆迪" 
646, "Madagascar", "MG", "馬達(dá)加斯加" 
647, "Reunion",  "RE", "" 
648, "Zimbabwe", "ZW", "津巴布韋" 
649, "Namibia",  "NA", "納米比亞" 
650, "Malawi",  "MW", "馬拉維" 
651, "Lesotho",  "LS", "" 
652, "Botswana", "BW", "" 
653, "Swaziland", "SZ", "" 
654, "Zambia",  "ZM", "贊比亞" 
655, "South Africa","ZA", "南非" 
702, "Belize",  "BZ", "" 
706, "El Salvador", "SV", "" 
710, "Nicaragua", "NI", "尼加拉瓜" 
712, "Costa Rica", "CR", "" 
716, "Peru",  "PE", "秘魯" 
722, "Argentina", "AR", "阿根廷" 
724, "Brazil",  "BR", "巴西" 
730, "Chile",  "CL", "智利" 
734, "Venezuela", "VE", "委內(nèi)瑞拉" 
736, "Bolivia",  "BO", "玻利維亞" 
744, "Paraguay", "PY", "巴拉圭" 
746, "Suriname", "SR", ""
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,272評(píng)論 25 708
  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 14,072評(píng)論 2 59
  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom閱讀 3,219評(píng)論 0 3
  • 春節(jié)假期不覺中已過,這十天多數(shù)時(shí)候我呆在家中。母親因?yàn)槟赀~,膝腿部有痛疾,且剛做完手術(shù)不久,常常靜守家中,不像以往...
    書生亦百用閱讀 364評(píng)論 0 0
  • 盤火炕 每年四、五月間,艷陽開始高照,生產(chǎn)隊(duì)的春耕基本結(jié)束,麥苗還沒抽穗,地里的事兒只剩下修修補(bǔ)補(bǔ),或者再給僅剩無...
    敏也閱讀 1,553評(píng)論 4 24

友情鏈接更多精彩內(nèi)容