Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Outline Manager should update (or allow to update) its info on its server IP address change #102

Open
evil-shrike opened this issue Apr 18, 2018 · 6 comments
Labels
backlog Seems valid, but no plans to tackle immediately feature request New feature or request server

Comments

@evil-shrike
Copy link

A use-case:
I installed an Ubuntu server, run Outline sh-script, installed Outline Manager on my desktop and connected to the server. Then I went to drink a coffee and Azure shut down my VM. Ohh I forget to switch off auto-shutdown. Then I realized that and restarted my machine. But it got another IP address. At this time I enabled static IP. Then removed the server registration in Outline Manager and added a new server with the new IP. Fine. But all links that Outline Manager creates still contain the old IP address. They work if I change IP in them but it's cumbersome.

Also It looks strange as I registered that server with the new IP. So it seems that Outline Manager takes IP from its server. But the server seems isn't aware of its IP has changed.

I didn't find any settings for IP in ~/shadowbox/persisted-state.

So first of all a question - how to tell server to update its IP?

Then a suggestion - make the described case more streamlined as changing public IP on cloud VM is typical.

@4044ever
Copy link

An automatic server IP change procedure would be great!

This then combined with a client IP change notification!

Then you could put the server on a dynamic (or Amazon elastic) IP and a reboot will give out a new IP. This is a HUGE advantage if Outline will be detected and the IP gets blocked by authorities.

Whenever I have the chance I do all day tests to see if if blockage happens. So far never. But I think it's a question of time. (Lantern was a great App for China, but since about a month a never works)

@what-name
Copy link

I actually noticed a problem like this too. In my case, I was creating Outline server after each other right away (testing) and when I added the new server into the Manager, it used the old IP address and not the new server's IP.
Strange. I guess some kind of caching in the Manager.

@4044ever Shadowsocks is really hard to filter out, that's it's soul purpose. They can maybe block your server's IP but then you can create another. The GFW is not easy to defeat but I think SS (and Outline with it) will be around for a while.

@fortuna
Copy link
Collaborator

fortuna commented May 1, 2018

You can specify the public ip you want to use at installation with the SB_PUBLIC_IP env variable. I think this should work:

{ export SB_PUBLIC_IP=<some ip>; wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh | bash; }

We set the public ip in the docker run call:

function start_shadowbox() {
declare -a docker_shadowbox_flags=(
--name shadowbox --restart=always --net=host
-v "${STATE_DIR}:${STATE_DIR}"
-e "SB_STATE_DIR=${STATE_DIR}"
-e "SB_PUBLIC_IP=${SB_PUBLIC_IP}"
-e "SB_API_PORT=${SB_API_PORT}"
-e "SB_API_PREFIX=${SB_API_PREFIX}"
-e "SB_CERTIFICATE_FILE=${SB_CERTIFICATE_FILE}"
-e "SB_PRIVATE_KEY_FILE=${SB_PRIVATE_KEY_FILE}"
-e "SB_METRICS_URL=${SB_METRICS_URL:-}"
-e "SB_DEFAULT_SERVER_NAME=${SB_DEFAULT_SERVER_NAME:-}"
)

If the server is already running, watchtower may restart it with the original command. So you need to reinstall the server, or call docker run manually to override the command watchtower will use. The command is complicated, but you may find it with ps u | grep docker

@alphabt
Copy link

alphabt commented May 22, 2018

+1 I need to get a new IP to workaround China's firewall. Having the ability to update Outline Server's IP without generating new keys for the clients would be a great feature!

@trevj trevj added feature request New feature or request backlog Seems valid, but no plans to tackle immediately server labels Aug 3, 2018
@DavidLemayian
Copy link
Contributor

Hi. Any update on this? Would be great to have updated IP on access keys in server manager.

@jabradford
Copy link

Our ideal usage is building the server for use and when the need is over, simply shut it down. Turning it back on results in a new public IP which currently seems to break its function. It would be great if it could automate through that change but at a minimum, if I could edit my invite with the new IP and re-add the server, that would be acceptable in the mean time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog Seems valid, but no plans to tackle immediately feature request New feature or request server
Projects
None yet
Development

No branches or pull requests

8 participants