when is it necessary to create aliases in the SQL Configuration Manager?
What aliases are used for in the SQL Server Configuration Manager?


Aliases are a way for the client to be redirected to a different location without having to change things such as the connection strings. It's akin to adding in a record to your system's HOSTS file.

I can't see the names (as you've properly redacted them which is a good thing) but if any of those names are the same as the connectivity question you have open then what's happening is that everywhere a client uses that name to connect, it'll be replaced with the information in the alias. This could completely be the reason why your connectivity no longer works after an IP change as the alias could be forcing an old address.


  Does it have anything to do that in this particular case the machines (publisher and subscriber) are on different domains?


It doesn't deal with any of that. It specifically says, "Wherever you see this name in a data source, replace it with this other information instead."