The issue is that PPP On Demand siems not to be well integrated in OpenWRT.

Following config can was used to test it:

#WAN Interface
uci set network.wan=interface
uci set network.wan.ifname=eth4
uci set network.wan.proto=pppoe
uci set network.wan.username=test@operator
uci set network.wan.password=cpesit
uci set network.wan.demand=60

uci commit

/etc/init.d/network restart

According to the OpenWRT Wiki only following config is needed to enable PPP
On Demand:
uci set network.wan.demand=60

Where the value 60 defines the inactivity time in seconds before the PPP
terminates.

The trigger used to bring up the PPP is specified in following tcpdump
packet-matching code file:

root@OpenWrt:/etc/ppp# cat filter
#
# Expression: outbound and not icmp[0] != 8 and not tcp[13] & 4 != 0
#
19
48 0 0 0
21 0 16 1
40 0 0 2
21 0 13 33
48 0 0 13
21 0 5 1
40 0 0 10
69 9 0 8191
177 0 0 4
80 0 0 4
21 6 7 8
21 0 5 6
40 0 0 10
69 3 0 8191
177 0 0 4
80 0 0 17
69 1 0 4
6 0 0 4
6 0 0 0

Resulting behavior:

root@OpenWrt:~# ifconfig
...
pppoe-wan Link encap:Point-to-Point Protocol
          inet addr:10.64.64.64  P-t-P:10.112.112.112  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

root@OpenWrt:~# ifstatus wan
{
        "up": false,
        "pending": true,
        "available": true,
        "autostart": true,
        "proto": "pppoe",
        "device": "eth4",
        "data": {
                "pppinfo": {
                        "pppstate": "trigger"
                }
        }
}

root@OpenWrt:~# ip route show
10.112.112.112 dev pppoe-wan  proto kernel  scope link  src 10.64.64.64
192.168.1.0/24 dev br-lan  proto kernel  scope link  src 192.168.1.1
239.0.0.0/8 dev br-lan  scope link

As you can see above no default route is present toward pppoe-wan so a lan
client will not be able to trigger the PPP On Demand.

Manually creating the default route is apparently not sufficient:

ip route add 0.0.0.0/0 dev pppoe-wan

Due to the fact that there is no nameserver entry present in the
resolve.conf.auto file dnsmasq does not know where to forward to query to.

root@OpenWrt:/etc/ppp# cat /tmp/resolv.conf.auto
root@OpenWrt:/etc/ppp#

NOTE: for debugging purposes start you can start dnsmasq as follows:
/usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf --log-queries

root@OpenWrt:/etc/ppp# logread -f | grep dns
Nov  7 15:37:14 OpenWrt daemon.info dnsmasq[5532]: query[A] twee.be from
192.168.1.100
Nov  7 15:37:14 OpenWrt daemon.info dnsmasq[5532]: query[A]
twee.be.eu.thmulti.com from 192.168.1.100
Nov  7 15:37:14 OpenWrt daemon.info dnsmasq[5532]: query[A]
twee.be.edegem.eu.thmulti.com from 192.168.1.100

If the file is populated with a bogus dnsserver entry ppp is triggered as
you can see below.

root@OpenWrt:/etc/ppp# vi /tmp/resolv.conf.auto
nameserver 10.0.0.1

root@OpenWrt:/etc/ppp# logread  | grep dns
Nov  7 15:39:38 OpenWrt daemon.info dnsmasq[5532]: reading
/tmp/resolv.conf.auto
Nov  7 15:39:38 OpenWrt daemon.info dnsmasq[5532]: using nameserver
10.0.0.1#53
Nov  7 15:39:38 OpenWrt daemon.info dnsmasq[5532]: using local addresses
only for domain lan
Nov  7 15:39:42 OpenWrt daemon.info dnsmasq[5532]: query[A] twee.be from
192.168.1.100
Nov  7 15:39:42 OpenWrt daemon.info dnsmasq[5532]: forwarded twee.be to
10.0.0.1
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: reading
/tmp/resolv.conf.auto
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: using nameserver
10.50.2.22#53
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: using nameserver
10.50.2.20#53
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: using local addresses
only for domain lan
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: query[A] twee.be from
192.168.1.100
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: forwarded twee.be to
10.50.2.20
Nov  7 15:39:47 OpenWrt daemon.info dnsmasq[5532]: reply twee.be is
217.172.190.187

Is this a know issue?
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to