Is there any way to host a DNS server on OpenWrt. Specifically having a router in another location, that I can connect to remotely in order to get around geo-blocking in my location? The same way SmartDNS services work.
I know I can do this with VPN, but the encryption really slows connections down, a DNS server would not.
The DNS in SmartDNS is only half of their solution. What they are doing is using DNS to redirect your access to netflix.com to another server, which then proxy's the connection from a location in a different geographical area. It's just a smart-proxy that uses DNS as an automated way to configure it. Or, in other other words, a smart VPN where only certain services are redirected through the VPN.
It's not inconceivable you could replicate it, but setting up the DNS would be, by far, the easiest part of this.
That shouldn't be the case for something like, say, wireguard. It uses chacha20, which is pretty darn fast on most hardware. If you have a router with a multi-core CPU, it's likely that wireguard would not be the rate-limiting step in a VPN.
But is his source IP doesn't change, the geo block should still kick in, imho.
I don't use smartdns, but it could, at least in theory, be solvable by using a dns and a sni proxy, like sslh.
I use this kind of setup to bypass geo blocked US sites, not Netflix specifically though.
Agreed. That's what I meant when I said the DNS would be the easiest part. He still needs to set up a proxy.
Good idea, but complex. In the end it's probably easier to use wireguard to link to the second location, and set up routing rules so that only connections to netflix (etc) get routed
I'm curious, where did you propose to locate the router? A friend in another country?
it's fairly easy, configure the DNS to respond to all FQDNs you need proxied, with the IP of the sni host.
At the sni host, have sslh set up to listen to port 443. it'll proxy the request to the real destination, but the destination will think the requests came from the IP of the sni.
I don't use sslh myself though, but sniproxy, but it doesn't exist for openwrt.