Hi!

>From what I can see, the udhcpc script currently doesn't support any way to not
set or override the default-gateway.
In some cases (here: I connect to an non-routed infrastructure using DHCP, then
use PPP-over-L2TP on top of it to get to the Internet) this would be feasible.

The scenario looks like this:
The default gateway passed-down via DHCP from the modem-interface is useful
piece of information, even if we don't use it as a default route.
In my situation, however, I want to use this DHCP-supplied default gateway for a
couple of destinations only, to be precise: the (inside-infrastructure-only)
DHCP-supplied DNS servers which allow resolving the address of the
L2TP-server(s) and the L2TP-server(s) themselves.

For now, I can do this only by setting the interface connected to the
cable-modem up with a static IP, but this works only if I never disconnect
longer than the DHCP lease-time and I do get different IPs assigned by the
infrastructure once the lease has expired. This can even be on a entirely
different subnet and include different DNS servers. (ouch!)

So as long as I keep it always-on, it's ok. I use only the address and the
netmask in the interface configuration and setup a couple of static routes to
the DNS server and (potential) L2TP-servers. Instead of directly using the
DNS-servers, I tell dnsmasq to only use the DNS-servers for resolving the
L2TP-servers address, like this:

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
...
        list rebind_domain '[l2tp-server]'
        list bogusnxdomain '192.168.101.101'
        list bogusnxdomain '192.168.101.102'
        list server '/[l2tp-server]/192.168.101.101'
        list server '/[l2tp-server]/192.168.101.102'


This is not very nice as:
- I got to hard-code 192.168.101.101, those might change and I should use the
DNS servers passed-over by DHCP.
- I got to setup static routes to the DNS-servers, here also, the ones supplied
via DHCP should be used.
- I got to include the name of the L2TP-server in dnsmasqs config.
- I got to setup static routes to the L2TP-server addresses as well, this should
be resolved via DNS.


I suggest to add options to DHCP-configured interfaces:
- use_gateway_as_defaultroute (would be disabled in my case)
- use_gateway_for_dns_servers (would be enabled in my case)
- usepeerdns (would be disabled in my case)

though we don't use the gateway as default route and do not set the dns-server
in /tmp/resolv.conf.auto, both pieces of information should still be available,
so once the l2tp interface wants to fire up, it can use those dns-servers to
resolve the l2tp-servers IPs and setup routes via the dhcp-supplied default 
gateway.

Probably it would be a good idea to let the user select the parent-interface for
PPtP and L2TP links instead of dynamically adding the interface-dependencies
based on routes, as that won't always work nicely (especially when there is more
than one such interface providing a potential default route).



I guess I'm not the only one in that mess (PPPoL2TPv2 on top of a non-routed
IPv4 cable infrastructure should be a common case in many places afaik) and
would like to know your opinions on how can we solve that in the right way. The
goal should be that it works out-of-the-box, it should be maintainance-free
(currently isn't) and also easy to setup for newbies.



Cheers


Daniel
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to