There are a million ways to so this: you can jump down the whole
policy-routing rabbit-hole if you wish: That pretty much needs control
of the router, so the OpenWRT path.
If you just have control of the DHCP server, your suggestion is the best
way to go. I assume you can turn off the DHCP server in your
ISP-supplied router. If not the two will fight each other.
It's not clear if you want to have different subnets or address ranges
or if you landed on those as a mechanism to just differentiate hosts.
The simplest config would be to have everything on the same subnet
(say 10.10.1.1/24), not bother with address ranges or static assignments
and just control the default route.
That comes out as
dhcp-range=10.10.1.33.10.1.254
# send this router unless tag vpnroute set
dhcp-option=option:router,10.10.1.1
# send this router when tag vpnroute set
dhcp-option=tag:vpnroute,option:router,10.10.1.6
# Mark host with tag vpnroute
> dhcp-host=11:22:33:44:55:66,set:vpnroute
> dhcp-host=77:88:99:AA;BB:CC,set:vpnroute
> # etc...
Simon.
On 7/3/25 08:50, Clifford Heath wrote:
I want to run static IP address assignments for most of my hardware in the
house here, but I have specific devices which I want to receive a different
router (default gateway) setting. The use case is that I have some embedded
devices which must route to my VPN host by default, so they don't appear on my
home IP address. I don't want to run everything through the VPN, because
latency from Australia creates a poor experience.
Obviously I can't do it on my unmodified WiFi router, so I will either be
flashing OpenWRT (which runs dnsmasq) or just running dnsmasq on a Raspberry or
something. The OpenWRT method might be incompatible with my internet modem
however, apparently that requires some technical support which my ISP
configured in the router… but anyway, back to dnsmasq...
I have been studying the dnsmasq manual page, and you can assign different DHCP
options to apply to requests coming from different interfaces, but I'm not
expecting to have more than one interface.
So my questions are two:
1) Can dnsmasq accept different router options for individual static DHCP
assignments?
Even better if I can say “all static IP assignments in this IP range should use
these options”
2) Alternatively, is there some use of virtual subnets which would make this
possible?
In short, can I combine the "--dhcp-option=option:router,192.168.4.4" option
with static IP assignment?
Reading more, I expect I’ll need to do something like this. Please point out
any glaring errors. And how to integrate DNS hostnames into this plan... :)
# DHCP ranges:
#dhcp-range=10.10.1.1,10.10.1.32 # Static wired Ethernet addresses that should
NOT be served by DHCP
dhcp-range=10.10.1.33.10.1.254 # Wired Ethernet addresses that should be served
by DHCP, including some static IPs
dhcp-range=10.10.2.1,10.10.2.254 # Wireless addresses that should be served by
DHCP, including some static IPs
dhcp-range=set:vpnroute,10.10.3.1,10.10.3.254 # Wireless addresses that should
use the VPN (all are static IPs)
# Mark host with tag vpnroute
dhcp-host=11:22:33:44:55:66,set:vpnroute,10.10.1.45
dhcp-host=77:88:99:AA;BB:CC,set:vpnroute,10.10.1.46
# etc...
# Set default route
dhcp-option=option:router,10.10.1.1
# Set route for vpnroute to point at the VPN router
dhcp-option=tag:vpnroute,option:router,10.10.1.6
Clifford Heath, Sydney
_______________________________________________
Dnsmasq-discuss mailing list
[email protected]
https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss
_______________________________________________
Dnsmasq-discuss mailing list
[email protected]
https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss