我想在连接 USB 调制解调器时运行ppp连接,因此我使用以下udev
规则:
ACTION=="add", SUBSYSTEM=="tty", ATTRS{idVendor}=="16d8",\
RUN+="/usr/local/bin/newPPP.sh $env{DEVNAME}"
Run Code Online (Sandbox Code Playgroud)
(我的调制解调器显示/dev
为ttyACM0
)
新建PPP.sh:
#!/bin/bash
/usr/bin/pon prov $1 >/dev/null 2>&1 &
Run Code Online (Sandbox Code Playgroud)
该udev
事件触发,并newPPP.sh正在运行,但newPPP.sh
过程后〜4-5s杀害。ppp
没有时间连接(拨号超时为 10 秒)。
我怎样才能运行很长时间的进程,不会被杀死?
我尝试使用nohup
,但它也不起作用。
系统:Arch Linux
更新
感谢maxschlepzig,我在这里找到了解决方案。
我at now
用来运行与 udev 进程分离的作业。
但有一个问题仍未得到解答:为什么有效nohup
而&
无效?
我有一个 Mini2440 ARM 板,我已经使用multistrap
.
我曾经tmux
在不同的窗口中运行多个进程/etc/rc.local
。我使用它的串行端口和一个getty
在该端口上运行的 inittab 条目连接到板。我picocom
用作串行通讯器。
root 登录后,~/.bashrc
将他附加到已经运行的 tmux 服务器,并且可以轻松监控进程。实际命令是exec tmux attach-session -t "main"
. tmux 使用默认配置运行。
一切正常,除了一个进程(周围的 shell 脚本pppd
)没有Ctrlc从终端接收,而其他进程接收。也Ctrl\有效。也 kill -INT <pppd_pid>
有效,但kill -INT <shellscript_pid>
无效。
我真的需要Ctrlc工作。这个设置有什么问题?
编辑:这里是stty -a
shell 脚本中的输出,就在之前pppd
:
speed 38400 baud; rows 23; columns 80; line = 0;
intr = ^C; quit = ^\; erase = …
Run Code Online (Sandbox Code Playgroud) 可能这是一个简单的问题,但我找不到答案......
我有一个运行 OpenWrt Backfire 10.03.1 的 ADSL 路由器(Dlink DSL-524T)。它使用 PPPoA 连接到互联网:这是我的/etc/config/network
文件:
config 'interface' 'loopback'
option 'ifname' 'lo'
option 'proto' 'static'
option 'ipaddr' '127.0.0.1'
option 'netmask' '255.0.0.0'
config 'interface' 'lan'
option 'type' 'bridge'
option 'ifname' 'eth0 eth1'
option 'proto' 'static'
option 'netmask' '255.255.255.0'
option 'nat' '1'
option 'ipaddr' '192.168.1.6'
config 'atm-bridge'
option 'unit' '0'
option 'encaps' '11c'
option 'vpi' '8'
option 'vci' '35'
config 'interface' 'wan'
option '_orig_ifname' 'nas0'
option '_orig_bridge' 'false'
option 'proto' 'pppoa'
option 'encaps' 'vc'
option …
Run Code Online (Sandbox Code Playgroud) 我在带有两个以太网适配器的(虚拟)机器上运行 CentOS 6.3。我将 eth0 连接到 TCP/IP LAN,将 eth1 连接到 DSL 调制解调器。该系统旨在用作专用路由器/防火墙,并设置了 iptables 以执行 SNAT、DNAT 和所需的过滤。
这很好用,但我更换了 DSL 调制解调器,不幸的是,新的(更快)调制解调器是白痴的,因此会自动执行 NAT,并且不允许我将我的公共 IP 传递给 eth1。我不能容忍双重 NAT,所以我做了一些研究,并了解到可以通过在计算机上执行 PPPoE 来“欺骗”该调制解调器为我的计算机提供公共 IP。
因此,我将 pppd 设置为使用 eth1,创建 ppp0 连接,然后在我的自定义 iptables 配置脚本中替换 eth1。这似乎在一定程度上有效,但我必须打开防火墙才能使其工作,而且它很不稳定。
部分是为了帮助排除故障,我想完全排除任何 TCP/IP 流量被直接路由到 eth1 的可能性,我的“友好”调制解调器将很乐意对其进行 NAT。
据我所知,PPPoE 位于 IP 下方,而不是 IP 上方 - 在它直接处理以太网帧的物理接口上。因此,我什至不必在 eth1 上配置 IP 网络,以便 pppd 工作,因此在 eth1 上运行的 IP 网络只是不必要地使问题复杂化。
这就是我发现的地方,愚蠢的我,我不知道如何在 Linux 上禁用 TCP/IP 堆栈!我知道在 Windows 机器上,您可以在适配器属性中取消选中 TCP/IP 协议,但在这里我运行的是纯文本 CentOS,我不知道该怎么做。
显然这不是一个非常普遍的愿望,因为我一直在互联网上搜索无济于事。以太网适配器是TCP/IP 连接似乎是一个硬连线假设。嗯,通常...
谢谢你的帮助!凯文
我正在使用 nm-applet 拨号 DSL pppoe 连接。由于我的本地网络中有大量用户,有时我必须尝试多次才能建立成功的连接。
我想知道有什么方法可以设置 nm-applet 或 network-manager 自动重复尝试直到连接成功。
我的系统是Gentoo,桌面环境是Gnome。
我正在尝试设置 dnsmasq 以加速 DNS 解析,但由于我使用 PPPoE 连接,因此有 ISP 提供的 dns 服务器和 127.0.0.1。
那么如何自动将本地 dns 服务器作为 /etc/resolv.conf 中的第一行?并且请不要让我使用静态 dns 服务器配置..
谢谢 !
我的 ISP 要求我使用自定义nameserver
设置。我已经把这些放在/etc/resolv.conf
. 不幸的是,每次我重新启动计算机时,这个文件的内容都会改变。要连接到 Internet,我必须首先编辑该文件。如何确保此文件不会更改?
在我的 Debian Linux 设备上,我有一个连接到 Internet 的 USB 调制解调器。它的接口名称是 ppp0。
我还有一个 USB 无线适配器,用于托管接入点。它的接口名称是 wlan0。
如何在这些接口之间路由流量,以便如果我的手机连接到此 AP,我可以通过 ppp0 访问 Internet?
编辑 1:我尝试设置一些路由,但似乎不起作用。以下是详细信息:
# iptables --list-rules
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A FORWARD -i ppp0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wlan0 -o ppp0 -j ACCEPT
# iptables --list-rules -t nat
-P PREROUTING ACCEPT
-P INPUT ACCEPT
-P OUTPUT ACCEPT
-P POSTROUTING ACCEPT
-A POSTROUTING -o ppp0 -j MASQUERADE
Run Code Online (Sandbox Code Playgroud)
编辑 2 已解决:我能够解决我的问题。我为 wlan0 和 …
在过去的 6 天里,我有机会与 LTE 调制解调器(https://sixfab.com/product/quectel-ec25-mini-pcle-4glte-module/)互动,我设法在使用“QMI”的树莓派。但是我仍然有很多问题,我阅读了很多教程、文章甚至书籍文章,但我仍然很困惑,希望您有时间为我和未来的读者澄清一些事情:
PPP
,AT commands
又是怎么QMI
互动和互动的LTE
?PPP
是用来连接modem到ISP的,为什么有人说要换成QMI
?wwan0
通过 tty使用接口以提高速度,但所有数据仅共享相同的 USB 连接,对吗?我在我的 ARM Linux 嵌入式系统上使用pppd
和wvdial
。我有一个通过串行端口连接的 CDMA 调制解调器,并且正在连接到 Verizon 网络。我看到每天pppd
有几次退出,退出代码为 16(请参阅下面日志中的确切消息)。我如何找出导致这些断开连接的原因?特别是该LCP terminated by peer
消息表明了什么?
Feb 18 12:31:04 ts7600-47aad3 pppd[3242]: LCP terminated by peer
Feb 18 12:31:04 ts7600-47aad3 pppd[3242]: Connect time 0.6 minutes.
Feb 18 12:31:04 ts7600-47aad3 pppd[3242]: Sent 1044 bytes, received 0 bytes.
Feb 18 12:31:04 ts7600-47aad3 pppd[3242]: restoring old default route to eth0 [1
92.168.98.1]
Feb 18 12:31:07 ts7600-47aad3 pppd[3242]: Connection terminated.
Feb 18 12:31:07 ts7600-47aad3 pppd[3242]: Modem hangup
Feb 18 12:31:07 ts7600-47aad3 …
Run Code Online (Sandbox Code Playgroud)