Hey all, I’m relatively new to the selfhosting game the most I’ve done to date is own and maintain a plex server for the last few years, but that mainly handles all of the networking for me so I’d say it doesn’t really count.
Recently, due in part to the ongoing controversy with audibles royalty and streaming model I’ve decided to try my hand at setting up an Audiobookshelf server of my own. For reference I’m running on a machine with Ubuntu 20.04. Ive managed to get Audiobookshelf and nginx running through docker and accessible via the localhost:port, but now I feel like I’m missing some key understandings.
I assume I need to have a domain name through a DNS service like cloudflare in order to make use of it, but I’m not sure what to do after that and the documentation that I have read doesn’t outright answer my questions.
Once I have my DNS setup, how do I associate it with my server or point it through the nginx reverse proxy?
I know I’ll have to setup a .conf file for nginx at some point and I found the example .conf in the audiobookshelf documentation, but I just feel like I’m missing the step between getting a domain name and establishing the reverse proxy.
Any help would be greatly appreciated, thanks!
I have a router given to me by my ISP, which incidentally has less features than their older model, so I was wondering, if you know: Would some ‘aftermarket’ gateways also be a DNS server? Sometimes it’d be great to have the resolution handled completely by the gateway instead of a separate machine - especially as some of my services just don’t seem to declare their names. And my stock router has a terrible downside - no NAT loopback. And - the reason I’m in this pickle - they’ve removed custom DNS settings.
That’s called split DNS. You can probably use that term to figure out if a particular router supports it. Basically, you would tell the router “if a DNS request for a specific URL is coming from a local IP, use a different (usually local) DNS table”. So like you can tell it “if a device asks for this URL, route it to this local IP instead.” So the DNS request never actually leaves your network.
It can be handy for cases where you don’t always want to be reliant on an external DNS server. For instance, if your internet is spotty. You don’t want your Jellyfin to stop working just because your internet went out; Everything is local, so it should be able to connect. But if you’re only using an external DNS provider, it won’t be able to connect without internet. So split DNS will allow you to connect to local services even when your internet is out.
The big downside to split DNS is that you often run into DNSSEC (DNS over https) warnings. Since the URL was intercepted before it actually reached an external DNS server, the traffic isn’t taking the path that the service “expected” it to take. So it may throw some warnings, or refuse to connect because it thinks your traffic is being intercepted, (because… Well… It is being intercepted… By you.)