标签: ppp

如何在 Udev 事件上运行长时间进程?

我想在连接 USB 调制解调器时运行ppp连接,因此我使用以下udev规则:

ACTION=="add", SUBSYSTEM=="tty", ATTRS{idVendor}=="16d8",\
    RUN+="/usr/local/bin/newPPP.sh $env{DEVNAME}"
Run Code Online (Sandbox Code Playgroud)

(我的调制解调器显示/devttyACM0

新建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&无效?

linux udev ppp

13
推荐指数
3
解决办法
2万
查看次数

Ctrl-C 不适用于 pppd 非分离会话

我有一个 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 -ashell 脚本中的输出,就在之前pppd

speed 38400 baud; rows 23; columns 80; line = 0;
intr = ^C; quit = ^\; erase = …
Run Code Online (Sandbox Code Playgroud)

linux terminal debian tmux ppp

12
推荐指数
1
解决办法
1618
查看次数

如何使用 OpenWrt 设置 PPPoE

可能这是一个简单的问题,但我找不到答案......

我有一个运行 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)

configuration openwrt router ppp

10
推荐指数
1
解决办法
3万
查看次数

如何禁用以太网适配器的 TCP/IP?

我在带有两个以太网适配器的(虚拟)机器上运行 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 连接似乎是一个硬连线假设。嗯,通常...

谢谢你的帮助!凯文

ip centos ethernet ppp

8
推荐指数
1
解决办法
9161
查看次数

如何让网络管理员重复尝试连接 DSL 直到成功?

我正在使用 nm-applet 拨号 DSL pppoe 连接。由于我的本地网络中有大量用户,有时我必须尝试多次才能建立成功的连接。

我想知道有什么方法可以设置 nm-applet 或 network-manager 自动重复尝试直到连接成功。

我的系统是Gentoo,桌面环境是Gnome。

networkmanager ppp

6
推荐指数
1
解决办法
1002
查看次数

为 pppd 客户端连接添加自定义 DNS 服务器?

我正在尝试设置 dnsmasq 以加速 DNS 解析,但由于我使用 PPPoE 连接,因此有 ISP 提供的 dns 服务器和 127.0.0.1。

那么如何自动将本地 dns 服务器作为 /etc/resolv.conf 中的第一行?并且请不要让我使用静态 dns 服务器配置..

谢谢 !

ppp dnsmasq

6
推荐指数
1
解决办法
9891
查看次数

重启期间 /etc/resolv.conf 更改

我的 ISP 要求我使用自定义nameserver设置。我已经把这些放在/etc/resolv.conf. 不幸的是,每次我重新启动计算机时,这个文件的内容都会改变。要连接到 Internet,我必须首先编辑该文件。如何确保此文件不会更改?

dns debian ppp

6
推荐指数
1
解决办法
1万
查看次数

wlan0 和 ppp0 之间的 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 和 …

wifi routing debian ppp

6
推荐指数
1
解决办法
6248
查看次数

PPP、QMI和AT命令的区别

在过去的 6 天里,我有机会与 LTE 调制解调器(https://sixfab.com/product/quectel-ec25-mini-pcle-4glte-module/)互动,我设法在使用“QMI”的树莓派。但是我仍然有很多问题,我阅读了很多教程、文章甚至书籍文章,但我仍然很困惑,希望您有时间为我和未来的读者澄清一些事情:

  • 怎么做PPPAT commands又是怎么QMI互动和互动的LTE
  • 他们每个人的作用是什么?我们需要他们吗?
  • 你能解释一下在使用这些协议建立连接或从互联网接收/发送数据时会发生什么(详细)吗?模式会很棒。
  • 我知道PPP是用来连接modem到ISP的,为什么有人说要换成QMI
  • 在此响应https://unix.stackexchange.com/a/168690 中,我们建议wwan0通过 tty使用接口以提高速度,但所有数据仅共享相同的 USB 连接,对吗?
  • 如果最大串行速度为 115200 bps,调制解调器如何达到 150Mbps?他们有缓冲区吗?
  • 根据https://www.quectel.com/UploadImage/Downlad/Quectel_WCDMA<E_Linux_USB_Driver_User_Guide_V1.8.pdf (page 8/47) 该模型提供了许多接口,他们说 wwan* 接口可以用作 USB 网络适配器,什么是wwan* 和 /dev/ttyUSB* 之间的区别?
  • 你能推荐一些关于这方面的文章或书籍吗?

modem serial-port ppp raspbian lte

6
推荐指数
2
解决办法
5752
查看次数

Linux PPP:如何调试退出代码 = 16 的断开连接?

我在我的 ARM Linux 嵌入式系统上使用pppdwvdial。我有一个通过串行端口连接的 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)

debian modem mobile ppp wvdial

5
推荐指数
1
解决办法
2万
查看次数