I am having trouble finding a good solution to a problem I have in Azure. We have a kubernetes cluster for hosting our software for several of our customers. One of the customers has an on premise installation that we want to communicate with.
However, we would like to specify a custom IP range so that the on premise customer can whitelist a very specific range, instead of our whole cluster node ip range. Also, this communication from and to the on premise installation will need to go through VPN (and not over open internet).
One of the solutions we came up with is to host a single custom container as an Azure Container Instance(ACI), which can proxy requests between our kubernetes cluster and the on premise installation. There we can specify this custom IP range. And we do not have to mess with kubernetes IP range settings or configure a VPN inside the kubernetes network.
This works, but the private IP of the ACI is not static. It might change after each config change. After some searching we found that this has troubled more people.
Afterwards, I found this https://docs.microsoft.com/en-us/azure/container-instances/container-instances-custom-dns article. But I am not experienced enough with DNS to put this into practice. This article just demonstrates how to add DNS servers to an ACI but I would probably then have to create my own DNS server? Plus, we still have the non-static IP so if that changes, we have to change DNS registration.
My question: is there someone who might know a more elegant solution to this problem?