linux无线设置

如何在Linux下建立GPRS无线MODEM拨号

在Linux下建立GPRS无线MODEM拨号,需要进行以下几个步骤:

1、安装Modem驱动

linux无线设置

首先需要在Linux系统中安装GSM/GPRS模块的驱动,通常情况下,可以通过包管理器来安装,在Debian和Ubuntu系统中,可以使用apt-get命令来安装:

sudo apt-get update
sudo apt-get install gsmmodem-3gpp.git

2、配置环境变量

接下来需要配置环境变量,以便系统能够找到Modem驱动,在/etc/profile文件中添加以下内容:

export PATH=$PATH:/usr/local/lib/modem/gsm-modem/bin

然后执行以下命令使配置生效:

linux无线设置

source /etc/profile

3、连接GPRS网络

使用AT指令连接GPRS网络,通过串口线连接MODEM和计算机,打开终端,输入以下命令:

echo "ATD    运营商名称    APN    用户名    密码" > /var/log/syslog

将其中的运营商名称、APN、用户名和密码替换为实际的值。

echo "ATD    46000101    internet    user    password" > /var/log/syslog

接着,输入以下命令激活GPRS连接:

linux无线设置

at+cgsascii="APN" //<-replace "APN" with your APN value from step 3 above
at+creg? //<-query for registration status (should return "+CREG: 0,1")
at+cgatt? //<-query for general attributes (should return "+CGATT: 1")
at+cgscep? //<-query for service context parameters (should return "+CGCSDP: [IP address of the GPRS server]")
at+cgdcon? //<-query for data connection parameters (should return "+CGDCONT: IP address of the GPRS server port number")
at+cgap? //<-query for access point information (should return "+Cgap: version=2, type=1, period=32")
at+csq? //<-query for signal quality (should return "+CSQ: level=50, reg=75, noise=25")
at+cii? //<-query for interface information (should return "+CII: [interface name],[UP/DOWN]")
at+cif? //<-query for interface frequency (should return "+CIF: [interface name],[frequency]")
at+cin? //<-query for network interface status (should return "+CIN: [interface name],[status]")
at+cipa? //<-query for IP address configuration parameters (should return "+CIPA: [IP address of the GPRS server]")
at+cnet? //<-query for network settings (should return "+CNET: [network type],[address type],[IP address],[gateway address],[DNS server address]")
at+cregstart //<-start registration process (should return OK)
at+cgattstart //<-start general attributes process (should return OK)
at//<-exit AT command mode and enter data transfer mode (should return OK)

4、发送和接收数据

现在已经成功连接到GPRS网络,可以使用AT指令发送和接收数据,要发送一条短信,可以输入以下命令:

echo "<短信内容>">smsto:<收件人号码>@cmnet.example.com;exit;

要接收短信,可以使用以下命令:

set pdu=1000;for i in seq $pdu;do echo;echo;cat;sleep 1;done | at +CMTI <短信中心号码>;set;exit;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;echo;exit;read < smsbox://<短信存储路径>/<短信文件名>.pdu > sms.txt;cat sms.txt | tr '\r' ' ' > sms.txt.formatted;rm sms.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.ctl > smsctl.txt;cat smsctl.txt | tr '\r' ' ' > smsctl.txt.formatted;rm smsctl.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.dat > smsdat.txt;cat smsdat.txt | tr 'r' ' ' > smsdat.txt.formatted;rm smsdat.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.up > smsup.txt;cat smsup.txt | tr '\r' ' ' > smsup.txt.formatted;rm smsup.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.dn > smsdn.txt;cat smsdn.txt | tr '\r' ' ' > smsdn.txt.formatted;rm smsdn.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.mdn > smsmdn.txt;cat smsmdn.txt | tr 'r' ' ' > smsmdn.txt.formatted;rm smsmdn.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.lcd > smslcd.txt;cat smslcd.txt | tr '\r' ' ' > smslcd.txt.formatted;rm smslcd.txt > /dev/null 2>&1;exit;read < smsbox://<短信存储路径>/<短信文件名>.mlc > mmlcd.txt;cat mmlcd.txt | tr '\r' ' ' > mmlcd.txt.formatted;rm mmlcd.txt > /dev/null 2>&1;exit" & sleep 1000 & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGFILE & wait $! & read < $LOGFILE & cat $LOGIDX >> logfile_idx_$(date +%Y%m%d).log && killall at && killall gsmmodem-3gpp || true && exit && echo "GPRS Modem拨号成功" || false && exit && echo "GPRS Modem拨号失败" || true && exit && echo "GPRS Modem拨号已断开" || true && exit && echo "GPRS Modem拨号正在断开" || true && exit && echo "GPRS Modem拨号已断开并重新连接" || true && exit && echo "

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/210540.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-01-11 04:14
Next 2024-01-11 04:23

相关推荐

  • Linux服务器如何改网关和dns

    在Linux服务器上,我们可以通过修改网络配置文件来更改网关和DNS,以下是详细的步骤:1、查看当前网络配置我们需要查看当前的网络配置,在终端中输入以下命令:ifconfig这个命令会显示你的网络接口信息,包括IP地址、子网掩码、广播地址等。“inet addr”后面的就是你的IP地址,“Bcast”后面的是广播地址,“Mask”后面……

    2024-01-22
    0132
  • linux如何判断文件内容是否是一样的

    在Linux中,我们可以使用`diff`命令来判断两个文件的内容是否一样,`diff`命令是Linux系统中一个非常实用的工具,它可以逐行比较两个文本文件,并输出它们之间的差异,通过这种方法,我们可以轻松地判断两个文件的内容是否相同。我们需要了解`diff`命令的基本用法,`diff`命令的基本格式如下:diff [选项] 文件1 文……

    2023-11-30
    0268
  • Linux基础命令whereis的用法

    什么是whereis命令whereis命令是Linux系统中用于查找二进制、源代码和man手册页文件位置的命令,它可以在指定目录下搜索文件,并返回文件名、大小、权限、所有者、所属组等信息,whereis命令通常与find命令结合使用,以便在大型文件系统中快速找到所需的文件。whereis命令的基本语法whereis [选项] 模式模式……

    2023-12-18
    0153
  • linux中fork子进程数如何算

    在Linux系统中,fork()系统调用是创建新进程的一种方法,这个调用会产生一个与当前进程(称为父进程)几乎完全相同的新进程(称为子进程),理解fork子进程的数量计算对于系统性能监控和资源管理至关重要。fork()系统调用的工作原理当一个进程执行fork()调用时,操作系统会创建一个新的进程上下文,包括新的内存空间、寄存器值等,新……

    2024-02-07
    0186
  • Linux Deepin 12.06 试用体验是怎么样的「deepin linux 20.2.2」

    Linux Deepin 12.06试用体验Linux Deepin 12.06是一款基于Ubuntu的桌面操作系统,它致力于提供用户友好的界面和丰富的功能,在试用了Linux Deepin 12.06之后,我发现它具有以下几个特点:1. 美观的用户界面:Linux Deepin 12.06采用了现代化的设计语言,拥有简洁、直观的用户……

    2023-11-13
    0154
  • Linux通用的跨发行版软件包管理器有哪些「linux跨平台」

    Linux通用的跨发行版软件包管理器有以下几种:1. **APT(Advanced Package Tool)**:APT是Debian及其衍生发行版(如Ubuntu)的默认软件包管理器,它使用.deb软件包格式,并提供了一个强大的命令行界面和图形界面工具(如Synaptic),APT通过解析软件包的元数据来自动处理依赖关系,并提供方……

    2023-11-13
    0167

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入