Release IP address

Is it possible to renew the ip address of a running instance?
Do I need to restart it?

Additional question: when an app is scaled from 1 to 2 instances: has each app a different IP address?

Are you referring to external or private IP addresses?

Each app has a single IPv6 anycast IP address which doesn’t change unless you forcibly remove and reallocate it.

Internally, each instance gets its own IPv6 address which will change on deploy, restart or scaling. If an instance has a volume, it should retain its IP address across restarts/deploys.

Well, to elaborate more on the problem we are facing:

We have an app running on a specific IP address - which we can see in the Fly admin. Error logging shows the ip address has been black listed by the API we are calling through the app. This is not Fly related and something we expected to happen and one of the reasons we are using Fly. We can scale our app to have more workers. But this instance keeps running, so we would like to assign a new IP to it.

We released the active IP address using the fly cli interface by using release and allocate-v4 (bumping the last number of the IP address we had…) and that seemed to work. The Fly dashboard showed the IP we were using so we thought it was ok. But then in the logs we saw it was still failing. When we pinged the url of the instance it was returning the old (released) IP address, and that address was also not listed in the UI.

So what our goal would be is: how can we get a certain instance to have a new IP address? Should we destroy and recreate the application? Or should we move to another region?