[Feature]: Second server url for fallback / local ip to external domain name swtich #130

Closed
opened 2026-02-04 17:55:05 +03:00 by OVERLORD · 38 comments
Owner

Originally created by @EnderPicture on GitHub (Jul 5, 2022).

Feature detail

It would be nice to automatically switch between uploading from the local network connection when at home to viewing from any location when outside.

example:

  • when at home, we connect to 192.168.0.25:2283 for high speed local file transfer to server.
  • when outside, we connect to photo.example.com to view photos/upload at slower speeds.

Platform

Mobile App

Originally created by @EnderPicture on GitHub (Jul 5, 2022). ### Feature detail It would be nice to automatically switch between uploading from the local network connection when at home to viewing from any location when outside. example: - when at home, we connect to `192.168.0.25:2283` for high speed local file transfer to server. - when outside, we connect to `photo.example.com` to view photos/upload at slower speeds. ### Platform Mobile App
Author
Owner

@bertmelis commented on GitHub (Jul 5, 2022):

Isn't the domain resolved to the same machine?

@bertmelis commented on GitHub (Jul 5, 2022): Isn't the domain resolved to the same machine?
Author
Owner

@EnderPicture commented on GitHub (Jul 6, 2022):

Yes, but connecting through local IP transfers way faster.

  • The server is locally hosted
  • Server is connected to the domain via cloud flair tunnel
@EnderPicture commented on GitHub (Jul 6, 2022): Yes, but connecting through local IP transfers way faster. - The server is locally hosted - Server is connected to the domain via cloud flair tunnel
Author
Owner

@bo0tzz commented on GitHub (Jul 7, 2022):

The usual solution for this is split DNS: The domain is configured externally as usual, but on your local network you run a DNS server that resolves it to the local IP.

@bo0tzz commented on GitHub (Jul 7, 2022): The usual solution for this is split DNS: The domain is configured externally as usual, but on your local network you run a DNS server that resolves it to the local IP.
Author
Owner

@alextran1502 commented on GitHub (Jul 28, 2022):

I think we can close this issue as it is better to be handled on the local network DNS.

@alextran1502 commented on GitHub (Jul 28, 2022): I think we can close this issue as it is better to be handled on the local network DNS.
Author
Owner

@jon-f-novabackup commented on GitHub (May 8, 2023):

What is the reluctance to implement a feature that would allow the mobile app to be able to switch endpoint addresses easily, like at least from an internal endpoint to an external endpoint address? It doesn't seem like that would take much added logic just to allow the user to configure two endpoint URLs, one as "internal" and one as "external" to be able to choose from upon mobile app load (if the two endpoint URLs were in fact configured first in settings). Not all of us that host this app are network experts to be able to setup and maintain split DNS, or want to maintain our own DNS servers that then must be utilized across all friends and family members mobile devices, who don't even live at the same home location in some cases. It doesn't seem like having a config setting to enter in your endpoint URLs one time in the mobile app UI and then present those two "internal" or "external" endpoint URL choices on mobile app load would be that hard to implement? I'm just curious why the reluctance for this fairly simple mobile app feature that seems like many have asked about and need.

@jon-f-novabackup commented on GitHub (May 8, 2023): What is the reluctance to implement a feature that would allow the mobile app to be able to switch endpoint addresses easily, like at least from an internal endpoint to an external endpoint address? It doesn't seem like that would take much added logic just to allow the user to configure two endpoint URLs, one as "internal" and one as "external" to be able to choose from upon mobile app load (if the two endpoint URLs were in fact configured first in settings). Not all of us that host this app are network experts to be able to setup and maintain split DNS, or want to maintain our own DNS servers that then must be utilized across all friends and family members mobile devices, who don't even live at the same home location in some cases. It doesn't seem like having a config setting to enter in your endpoint URLs one time in the mobile app UI and then present those two "internal" or "external" endpoint URL choices on mobile app load would be that hard to implement? I'm just curious why the reluctance for this fairly simple mobile app feature that seems like many have asked about and need.
Author
Owner

@PeterBasista commented on GitHub (May 10, 2023):

I addressed this question right at the beginning when I started using immich, I also created a discussion about it, and I also got the answer that I should use DNS somehow. Since I am not familiar with the languages immich is written in, I unfortunately don't know the complexity or difficulty of the implementation. But I find it fairly simple to check the ssid of the network at startup, if it is "xyz" then use internal otherwise external url/address. But since they always say about "just use split DNS" so I want to describe my problem and solution.

My network setup is quite simple. Router and then a Pihole (2x), this pihole is also as the main DNS server (I also have to rely on it since when I only had it as primary my router sometimes changed its mind about using secondary and I couldn't do connect to immich.Thus both primary and secondary I have a pihole instance.) In the pihole I set the url for immich as a translation to the internal address, so when I query on local network I am redirected to the local address. But since I have multiple containers I still needed an nginx proxy manager where I have the external url mapped to the local address with the port. Then I have this external address in local DNS in pihole. This is the build for the local network and for me to be able to translate the url to the local address in the local network. Since my ISP does not allow direct querying to their address (isp loop). So I can't directly access my address from outside. Which has complicated things for me quite a bit. Therefore I had to use another server (in this case it suited me well that I have another remote VPS) where I also have a domain. So I created a subdomain for that domain and redirected that domain to the VPS. On the VPS I am running frps which is configured and connects to my home server using fprc. In any case frpc queries the nginx proxy manager which knows the port.

For some reason it seems to me that managing this feature in immich would be much easier than my solution. But I respect your decision.

And now in short.
Local:
Pihole (as local dns) -> nginx proxy manager -> immich container
Remote:
Cloudflare -> remote VPS -> FRPS -> FRPC (on local server) -> nginx proxy manager -> immich container

@PeterBasista commented on GitHub (May 10, 2023): I addressed this question right at the beginning when I started using immich, I also created a discussion about it, and I also got the answer that I should use DNS somehow. Since I am not familiar with the languages immich is written in, I unfortunately don't know the complexity or difficulty of the implementation. But I find it fairly simple to check the ssid of the network at startup, if it is "xyz" then use internal otherwise external url/address. But since they always say about "just use split DNS" so I want to describe my problem and solution. My network setup is quite simple. Router and then a Pihole (2x), this pihole is also as the main DNS server (I also have to rely on it since when I only had it as primary my router sometimes changed its mind about using secondary and I couldn't do connect to immich.Thus both primary and secondary I have a pihole instance.) In the pihole I set the url for immich as a translation to the internal address, so when I query on local network I am redirected to the local address. But since I have multiple containers I still needed an nginx proxy manager where I have the external url mapped to the local address with the port. Then I have this external address in local DNS in pihole. This is the build for the local network and for me to be able to translate the url to the local address in the local network. Since my ISP does not allow direct querying to their address (isp loop). So I can't directly access my address from outside. Which has complicated things for me quite a bit. Therefore I had to use another server (in this case it suited me well that I have another remote VPS) where I also have a domain. So I created a subdomain for that domain and redirected that domain to the VPS. On the VPS I am running frps which is configured and connects to my home server using fprc. In any case frpc queries the nginx proxy manager which knows the port. For some reason it seems to me that managing this feature in immich would be much easier than my solution. But I respect your decision. And now in short. Local: Pihole (as local dns) -> nginx proxy manager -> immich container Remote: Cloudflare -> remote VPS -> FRPS -> FRPC (on local server) -> nginx proxy manager -> immich container
Author
Owner

@imran0 commented on GitHub (May 14, 2023):

I too think this feature will be immensely useful. I would greatly appreciate it if the Immich dev's could reconsider this feature request.

@imran0 commented on GitHub (May 14, 2023): I too think this feature will be immensely useful. I would greatly appreciate it if the Immich dev's could reconsider this feature request.
Author
Owner

@Caian commented on GitHub (Jun 29, 2023):

I also think this is super useful. In my case I use Tailscale so I don't have to expose any service through my public IP. Because of this, each service is bound to a different IP, so there is no concept of an external DNS record.

@Caian commented on GitHub (Jun 29, 2023): I also think this is super useful. In my case I use Tailscale so I don't have to expose any service through my public IP. Because of this, each service is bound to a different IP, so there is no concept of an external DNS record.
Author
Owner

@RyGuy994 commented on GitHub (Jul 4, 2023):

Having this out of the box would help me a bunch. I have 6 friends and family that I have set them up with their own server. Mainly for immich. Each time I have to configure a reverse proxy, then go on top of that and establish a local DNS to a second RP. This would cut down on a bunch of man hours.

@RyGuy994 commented on GitHub (Jul 4, 2023): Having this out of the box would help me a bunch. I have 6 friends and family that I have set them up with their own server. Mainly for immich. Each time I have to configure a reverse proxy, then go on top of that and establish a local DNS to a second RP. This would cut down on a bunch of man hours.
Author
Owner

@Scorcerer commented on GitHub (Jul 16, 2023):

Hi!
Having the same wish I wanted to share one angle that I think nobody mentioning yet: the encryption.
As example, please look how HomeAssistant does that: depending if you're on some specific WiFi the app uses url B, and if not it uses url A. They can be completely different, which is very nice, as being at home i don't really need to jump through hoops of setting proper SSL and all of that stuff, since it's local. If I'm away form home (other, not specified WiFi or mobile connection) the app seamlessly chooses SSL-encrypted entry point that has all the security I can provide (In my case, that's whole another server, as I don't get an public IP where my storage is). This is undoable with the proposed DNS approach - the encryption will be there either all the time (problematic locally) or never at all (BAD(tm) thing to do).

Please rethink this, from my non-programmer approach it looks like simple if-then-else, but I'd understand it's maybe not that easy...

@Scorcerer commented on GitHub (Jul 16, 2023): Hi! Having the same wish I wanted to share one angle that I think nobody mentioning yet: the encryption. As example, please look how HomeAssistant does that: depending if you're on some specific WiFi the app uses url B, and if not it uses url A. They can be completely different, which is very nice, as being at home i don't really need to jump through hoops of setting proper SSL and all of that stuff, since it's local. If I'm away form home (other, not specified WiFi or mobile connection) the app seamlessly chooses SSL-encrypted entry point that has all the security I can provide (In my case, that's whole another server, as I don't get an public IP where my storage is). This is undoable with the proposed DNS approach - the encryption will be there either all the time (problematic locally) or never at all (BAD(tm) thing to do). Please rethink this, from my non-programmer approach it looks like simple if-then-else, but I'd understand it's maybe not that easy...
Author
Owner

@KeeganCarter11 commented on GitHub (Sep 29, 2023):

I wanted to bump this as well, I was kinda surprised this isn't an option since the other main thing I host is gome assistant and am currently fighting my local dns to get this app set up. External routing is easy, but forcing users to set up a local dns server isn't that user friendly.

@KeeganCarter11 commented on GitHub (Sep 29, 2023): I wanted to bump this as well, I was kinda surprised this isn't an option since the other main thing I host is gome assistant and am currently fighting my local dns to get this app set up. External routing is easy, but forcing users to set up a local dns server isn't that user friendly.
Author
Owner

@kiwijunglist commented on GitHub (Nov 4, 2023):

I came across this thread looking for a solution.

My situation is that I setup the immich app to point to timescale VPN IP address and wanted a fallback local IP address for when timescale wasn't running.

In home assistant app it supported local IP and remote IP address which was handy.

The DNS server is a good idea, so I will research into running my own DNS server for my local network to point the timescale IP to the local IP.

Thanks again for the app, I love it.

@kiwijunglist commented on GitHub (Nov 4, 2023): I came across this thread looking for a solution. My situation is that I setup the immich app to point to timescale VPN IP address and wanted a fallback local IP address for when timescale wasn't running. In home assistant app it supported local IP and remote IP address which was handy. The DNS server is a good idea, so I will research into running my own DNS server for my local network to point the timescale IP to the local IP. Thanks again for the app, I love it.
Author
Owner

@eded333 commented on GitHub (Dec 18, 2023):

This is exactly what the HomeAssistant app does, when you are located at home within your wifi, it uses your internal ip, located elsewhere it uses the external one.
It would be extremely useful and much less of a hassle for people that use a VPN as tailgate to connect home but want to use the local network when at home.
image

@eded333 commented on GitHub (Dec 18, 2023): This is exactly what the HomeAssistant app does, when you are located at home within your wifi, it uses your internal ip, located elsewhere it uses the external one. It would be extremely useful and much less of a hassle for people that use a VPN as tailgate to connect home but want to use the local network when at home. ![image](https://github.com/immich-app/immich/assets/1782487/001188f3-e8f5-4d57-8bdc-f248bf625b5e)
Author
Owner

@kiwijunglist commented on GitHub (Dec 18, 2023):

I initially wrote I was keen on the fallback url option.

Subsequently I have installed wireguard on my unraid server and no longer require this feature. I use the local IP and then when I am not home wireguard automatically kicks in.

@kiwijunglist commented on GitHub (Dec 18, 2023): I initially wrote I was keen on the fallback url option. Subsequently I have installed wireguard on my unraid server and no longer require this feature. I use the local IP and then when I am not home wireguard automatically kicks in.
Author
Owner

@Caian commented on GitHub (Dec 19, 2023):

I initially wrote I was keen on the fallback url option.

Subsequently I have installed wireguard on my unraid server and no longer require this feature. I use the local IP and then when I am not home wireguard automatically kicks in.

VPNs are known to drain a lot of battery though.

@Caian commented on GitHub (Dec 19, 2023): > I initially wrote I was keen on the fallback url option. > > Subsequently I have installed wireguard on my unraid server and no longer require this feature. I use the local IP and then when I am not home wireguard automatically kicks in. VPNs are known to drain a lot of battery though.
Author
Owner

@kiwijunglist commented on GitHub (Dec 19, 2023):

That is true. Android phone user here, tailscale used some battery, haven't noticed any drain with wireguard. Didn't come up on battery stats.

@kiwijunglist commented on GitHub (Dec 19, 2023): That is true. Android phone user here, tailscale used some battery, haven't noticed any drain with wireguard. Didn't come up on battery stats.
Author
Owner

@jenda69 commented on GitHub (Dec 21, 2023):

This would be really nice feature to have!
I've set up dnsmasq on my router to get local IP in my LAN as suggested in this thread and it somewhat works...
Until I use a device which uses Private DNS (enabled by default on Android I guess). Then it just ignores DNS server provided by DHCP and all the data go over half of Europe through my tunnel again.

I thought I could just check for my home IP address on the server I use as the tunnel and instead of reverse proxying send HTTP redirect to the local IP. That works great when accessing through webbrowser, but Immich app doesn't follow redirects and refuses to work.

@jenda69 commented on GitHub (Dec 21, 2023): This would be really nice feature to have! I've set up dnsmasq on my router to get local IP in my LAN as suggested in this thread and it somewhat works... Until I use a device which uses Private DNS (enabled by default on Android I guess). Then it just ignores DNS server provided by DHCP and all the data go over half of Europe through my tunnel again. I thought I could just check for my home IP address on the server I use as the tunnel and instead of reverse proxying send HTTP redirect to the local IP. That works great when accessing through webbrowser, but Immich app doesn't follow redirects and refuses to work.
Author
Owner

@krunkster commented on GitHub (Jan 27, 2024):

I think this is going to be a must have feature... eventually.

I'm a fairly technical person, decades of software engineering experience, and I think you've done a great job of making Immich easy to install and use on a local network. Making it accessible remotely (and securely) is an order of magnitude more complicated, and likely beyond most people. Concepts like TLS, reverse proxy, and Split DNS require a lot of technical knowledge. Caddy helps solve the first two, but it's difficult to get right. Pi Hole is a popular way to do local and split DNS but even once it's configured Immich seems to be much slower and more unstable compared to a direct local connection.

I understand the audience of Immich today may be the IT hobbyist, but for wider adoption features like this one will make a big difference in reducing technical overhead for a lot of users.

@krunkster commented on GitHub (Jan 27, 2024): I think this is going to be a must have feature... eventually. I'm a fairly technical person, decades of software engineering experience, and I think you've done a great job of making Immich easy to install and use on a local network. Making it accessible remotely (and securely) is an order of magnitude more complicated, and likely beyond most people. Concepts like TLS, reverse proxy, and Split DNS require a lot of technical knowledge. Caddy helps solve the first two, but it's difficult to get right. Pi Hole is a popular way to do local and split DNS but even once it's configured Immich seems to be much slower and more unstable compared to a direct local connection. I understand the audience of Immich today may be the IT hobbyist, but for wider adoption features like this one will make a big difference in reducing technical overhead for a lot of users.
Author
Owner

@Betoniara commented on GitHub (Feb 10, 2024):

This should be natively supported.
Since I'm uploading photos using Wi-Fi, it's natural that I would want them to connect to a local IP address rather than through a domain.

@Betoniara commented on GitHub (Feb 10, 2024): This should be natively supported. Since I'm uploading photos using Wi-Fi, it's natural that I would want them to connect to a local IP address rather than through a domain.
Author
Owner

@sneffetsd commented on GitHub (Apr 4, 2024):

This is a must. My network is behind a CGNet, I need to use a cloudflare tunnel, what means that I can't upload videos from my mobile gallery. It's not a reality change manually every time when needs to upload an large file, for me that would be easy, but for family members that is not easy to understand (Why don't I just use google photos instead? Is what they ask me).

Home Assistant does that in the settings and it runs seamless.

@sneffetsd commented on GitHub (Apr 4, 2024): This is a must. My network is behind a CGNet, I need to use a cloudflare tunnel, what means that I can't upload videos from my mobile gallery. It's not a reality change manually every time when needs to upload an large file, for me that would be easy, but for family members that is not easy to understand (Why don't I just use google photos instead? Is what they ask me). Home Assistant does that in the settings and it runs seamless.
Author
Owner

@shlomiassaf commented on GitHub (Apr 6, 2024):

With today's tools this one is a must!

As an example, it's easy today to use zero-trust security to apply a setup free tunnel to a serve(e.g CloudFlare Tunnels without the cumbersome VPN setup.
It does however process traffic (decrypt ssl and encrypt back) so you want to avoid most traffic, especially when home.

For example, my setup is photos.mydomain.local for home network and photos.mydomain.co for external

I would like to use the first on my home network and the external outside.

Both are protected via oidc through my authentik server which will go to google as it's oidc solution so the tunnel provider will never know my password ( it can know my temp tokens and content as it strips down but I trust cloudflare)

Since it's free I wouldn't want to abuse the service and anyway reduce latency and speed things up locally !

This is must, I really don't see how we miss this one.

At least, in the interim allow us to choose a server in the login screen, I need to change the address every time manually

@shlomiassaf commented on GitHub (Apr 6, 2024): With today's tools this one is a must! As an example, it's easy today to use zero-trust security to apply a setup free tunnel to a serve(e.g [CloudFlare Tunnels](https://www.cloudflare.com/products/tunnel/) without the cumbersome VPN setup. It does however process traffic (decrypt ssl and encrypt back) so you want to avoid most traffic, especially when home. For example, my setup is **photos.mydomain.local** for home network and **photos.mydomain.co** for external I would like to use the first on my home network and the external outside. Both are protected via oidc through my authentik server which will go to google as it's oidc solution so the tunnel provider will never know my password ( it can know my temp tokens and content as it strips down but I trust cloudflare) Since it's free I wouldn't want to abuse the service and anyway reduce latency and speed things up locally ! This is must, I really don't see how we miss this one. At least, in the interim allow us to choose a server in the login screen, I need to change the address every time manually
Author
Owner

@Borrower543 commented on GitHub (Jun 9, 2024):

Any reconsideration on this front? Really would love this feature. As others have said it's great in Home Assistant.

@Borrower543 commented on GitHub (Jun 9, 2024): Any reconsideration on this front? Really would love this feature. As others have said it's great in Home Assistant.
Author
Owner

@phil9309 commented on GitHub (Jun 24, 2024):

Any official update on this feature?

@phil9309 commented on GitHub (Jun 24, 2024): Any official update on this feature?
Author
Owner

@alextran1502 commented on GitHub (Jun 24, 2024):

@phil9309 not on the priority list at the moment, but probably will be added once we refactor the auth pipeline to solve other issues

@alextran1502 commented on GitHub (Jun 24, 2024): @phil9309 not on the priority list at the moment, but probably will be added once we refactor the auth pipeline to solve other issues
Author
Owner

@Triple-Z commented on GitHub (Jul 2, 2024):

As a homelab user, I need this functionality very much. For now I have installed two immich app instances on my mobile phone. One is official and the other one is installed via Xcode for external use (with custom header support via #10588 ).

It would be very glad for me if this feature could be done.

@Triple-Z commented on GitHub (Jul 2, 2024): As a homelab user, I need this functionality very much. For now I have installed two immich app instances on my mobile phone. One is official and the other one is installed via Xcode for external use (with custom header support via #10588 ). It would be very glad for me if this feature could be done.
Author
Owner

@ampersandru commented on GitHub (Jul 15, 2024):

Would love this since Im using a reverse proxy + cloudflare proxy and uploads are SLOW at 7 MB/s even when on the same local network. When I log out of the immich app and log back in with the local address of immich, uploads hit 50MB/s and higher

@ampersandru commented on GitHub (Jul 15, 2024): Would love this since Im using a reverse proxy + cloudflare proxy and uploads are SLOW at 7 MB/s even when on the same local network. When I log out of the immich app and log back in with the local address of immich, uploads hit 50MB/s and higher
Author
Owner

@grazy27 commented on GitHub (Aug 1, 2024):

Relevant as never, Cloudflare proxy won't resolve to local IP, the only available option now is to configure DNS rewrite on router

@grazy27 commented on GitHub (Aug 1, 2024): Relevant as never, Cloudflare proxy won't resolve to local IP, the only available option now is to configure DNS rewrite on router
Author
Owner

@krishgcek commented on GitHub (Aug 4, 2024):

I would like a feature similar to what exists in OpenHAB, where I can use a local LAN IP when I’m at home and automatically switch to a remote URL, such as a free SSH tunnel or AnyDesk, when I'm away.

@krishgcek commented on GitHub (Aug 4, 2024): I would like a feature similar to what exists in OpenHAB, where I can use a local LAN IP when I’m at home and automatically switch to a remote URL, such as a free SSH tunnel or AnyDesk, when I'm away.
Author
Owner

@haydndup commented on GitHub (Sep 14, 2024):

Why is the team so resistant to this? There is clearly demand for it, and having a configurable base URL should be fairly trivial?

@haydndup commented on GitHub (Sep 14, 2024): Why is the team so resistant to this? There is clearly demand for it, and having a configurable base URL should be fairly trivial?
Author
Owner

@radhoo2k10 commented on GitHub (Oct 7, 2024):

Would really loved this feature. Having problems when uploading large video-files via cloudflare. Have to logout from app and login via local IP. Do what HomeAssistant app does. If home wifi then use local IP.

@radhoo2k10 commented on GitHub (Oct 7, 2024): Would really loved this feature. Having problems when uploading large video-files via cloudflare. Have to logout from app and login via local IP. Do what HomeAssistant app does. If home wifi then use local IP.
Author
Owner

@ampersandru commented on GitHub (Oct 7, 2024):

Would really loved this feature. Having problems when uploading large video-files via cloudflare. Have to logout from app and login via local IP. Do what HomeAssistant app does. If home wifi then use local IP.

Ah crap, that's why a lot of my videos fail to upload. Because I'm using cloudflare proxying, I think they support up to 200mb at a time

This needs to be addressed, a lot of people use CF tunnels and similar with upload restrictions (and extremely slow upload speeds) even when they are on their local network

@ampersandru commented on GitHub (Oct 7, 2024): > Would really loved this feature. Having problems when uploading large video-files via cloudflare. Have to logout from app and login via local IP. Do what HomeAssistant app does. If home wifi then use local IP. Ah crap, that's why a lot of my videos fail to upload. Because I'm using cloudflare proxying, I think they support up to 200mb at a time This needs to be addressed, a lot of people use CF tunnels and similar with upload restrictions (and extremely slow upload speeds) even when they are on their local network
Author
Owner

@T0biasCZe commented on GitHub (Oct 8, 2024):

plus, how tf are you even to configure it through local DNS
Immich locally runs on Port 2283, and over the internet its on 80/443. So even when you setup local DNS to redirect your domain to the local server IP, it wont work because it connects to port 443, not to the Immichs 2283. And you obviously cant configure port inside DNS

@T0biasCZe commented on GitHub (Oct 8, 2024): plus, how tf are you even to configure it through local DNS Immich locally runs on Port 2283, and over the internet its on 80/443. So even when you setup local DNS to redirect your domain to the local server IP, it wont work because it connects to port 443, not to the Immichs 2283. And you obviously cant configure port inside DNS
Author
Owner

@grazy27 commented on GitHub (Oct 8, 2024):

plus, how tf are you even to configure it through local DNS Immich locally runs on Port 2283, and over the internet its on 80/443. So even when you setup local DNS to redirect your domain to the local server IP, it wont work because it connects to port 443, not to the Immichs 2283. And you obviously cant configure port inside DNS

Thanks god dns doesn't allow that. There are still a number of options on how to set it up, ranging from changing '2283' in compose file ending with simple local nginx gateway / reverse proxy, that redirects traffic locally

@grazy27 commented on GitHub (Oct 8, 2024): > plus, how tf are you even to configure it through local DNS Immich locally runs on Port 2283, and over the internet its on 80/443. So even when you setup local DNS to redirect your domain to the local server IP, it wont work because it connects to port 443, not to the Immichs 2283. And you obviously cant configure port inside DNS Thanks god dns doesn't allow that. There are still a number of options on how to set it up, ranging from changing '2283' in compose file ending with simple local nginx gateway / reverse proxy, that redirects traffic locally
Author
Owner

@jenda69 commented on GitHub (Oct 8, 2024):

Yeah, that's the way I do it. I have an Oracle VPS connected to my network through VPN and I reverse proxy to my RPi port 2283 using Nginx from there.
On my RPi I have another Nginx as a reverse proxy to RPi, basically the same thing but locally (+ curl script to rsync HTTPS certificates from the VPS).
I got [mydomain] to point to the VPS. And on my local network, I have a local DNS (dnsmasq on my router) set to point [mydomain] to the local IP.
So from both external and internal network, accessing [mydomain] looks the same with the HTTPS, but on local network, the traffic doesn't go through the VPS but directly to the server.
But I had to disable Private DNS in Chrome and in Android, otherwise it ignores the local DNS. That's why I'd like to have an option for internal/external IP too.

@jenda69 commented on GitHub (Oct 8, 2024): Yeah, that's the way I do it. I have an Oracle VPS connected to my network through VPN and I reverse proxy to my RPi port 2283 using Nginx from there. On my RPi I have another Nginx as a reverse proxy to RPi, basically the same thing but locally (+ curl script to rsync HTTPS certificates from the VPS). I got [mydomain] to point to the VPS. And on my local network, I have a local DNS (dnsmasq on my router) set to point [mydomain] to the local IP. So from both external and internal network, accessing [mydomain] looks the same with the HTTPS, but on local network, the traffic doesn't go through the VPS but directly to the server. But I had to disable Private DNS in Chrome and in Android, otherwise it ignores the local DNS. That's why I'd like to have an option for internal/external IP too.
Author
Owner

@mxz94 commented on GitHub (Oct 12, 2024):

i like the feature

@mxz94 commented on GitHub (Oct 12, 2024): i like the feature
Author
Owner

@NeilTheFisher commented on GitHub (Oct 15, 2024):

Just thought I'd share my solution since I've been running into the cloudflare tunnel 100mb limit:

I am able to clone the immich app using the secure folder feature on my Samsung.
There are other ways to clone apps on other android devices.

One immich installation points to my local home ip, and the other points to my domain on the cloudflare tunnel.

Cons:

  • Either I can only backup from home, or I can backup anywhere with a 100mb limit until I'm back home and manually backup 100+mb videos using the proper app. It depends on which app I configure to have auto backup enabled on.
  • Having to remember which app to use depending on the current network connection.

Anyway, I believe this simple feature should be implemented. I truly don't understand the reluctance. If I were a flutter dev I wouldn't mind looking into this.

@NeilTheFisher commented on GitHub (Oct 15, 2024): Just thought I'd share my solution since I've been running into the cloudflare tunnel 100mb limit: I am able to clone the immich app using the secure folder feature on my Samsung. There are other ways to clone apps on other android devices. One immich installation points to my local home ip, and the other points to my domain on the cloudflare tunnel. Cons: - Either I can only backup from home, or I can backup anywhere with a 100mb limit until I'm back home and manually backup 100+mb videos using the proper app. It depends on which app I configure to have auto backup enabled on. - Having to remember which app to use depending on the current network connection. Anyway, I believe this simple feature should be implemented. I truly don't understand the reluctance. If I were a flutter dev I wouldn't mind looking into this.
Author
Owner

@Blendi commented on GitHub (Oct 31, 2024):

The main issue I have is that when I connect via internal url, I have set it up to use https:// and the certificates are the one I have created manually in my PC. I have imported those in my IPhone and it works perfectly.

When outside I use cloudflare tunnel and the url has different certificates.

Trying to use DNS in my local network to redirect my cloudflare public url into local IP is not a solution as the certificates don't match.

I don't understand what is the negative impact on planning to add this feature apart from increase in maybe complexity when writing the IOS or android apps. I would be very happy to hear if there is any negative side I don't know and if so, I would happy back off from this feature request. :)

Other than that I know there are 1001 solution especially in IT than can be applied to solve this issue. I can have 1001 jumps here and there and make it work, nothing to add here. But I think it is more efficient and clean having the app choosing between 2 url depending on the phone wireless connection status. Whenever you are at you defined home network the app will use internal URL, whenever connected to a different wireless network or 4G-5G network it will use the external URL.

@Blendi commented on GitHub (Oct 31, 2024): The main issue I have is that when I connect via internal url, I have set it up to use https:// and the certificates are the one I have created manually in my PC. I have imported those in my IPhone and it works perfectly. When outside I use cloudflare tunnel and the url has different certificates. Trying to use DNS in my local network to redirect my cloudflare public url into local IP is not a solution as the certificates don't match. I don't understand what is the negative impact on planning to add this feature apart from increase in maybe complexity when writing the IOS or android apps. I would be very happy to hear if there is any negative side I don't know and if so, I would happy back off from this feature request. :) Other than that I know there are 1001 solution especially in IT than can be applied to solve this issue. I can have 1001 jumps here and there and make it work, nothing to add here. But I think it is more efficient and clean having the app choosing between 2 url depending on the phone wireless connection status. Whenever you are at you defined home network the app will use internal URL, whenever connected to a different wireless network or 4G-5G network it will use the external URL.
Author
Owner

@haydndup commented on GitHub (Dec 6, 2024):

For everyone following this issue, this feature has finally been added in v1.122.0:
https://github.com/immich-app/immich/releases/tag/v1.122.0

@haydndup commented on GitHub (Dec 6, 2024): For everyone following this issue, this feature has finally been added in v1.122.0: https://github.com/immich-app/immich/releases/tag/v1.122.0
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#130