I dont believe there is anyway to do this without custom coding.
Edit thanks to kwill's correct responses:
1) You can install something on the Webrole that would periodically check RoleEnvironment.CurrentInstance.
var roleInstance = RoleEnvironment.CurrentRoleInstance;
foreach (RoleInstanceEndpoint instanceEndpoint in roleInstance.InstanceEndpoints.Values)
{
Trace.WriteLine("Instance endpoint address and port: " + instanceEndpoint.IPEndpoint, "Information");
Trace.WriteLine("Protocol for the endpoint: " + , instanceEndpoint.Protocol, "Information");
}
2) You can create a custom application that would use Service Management API to get at the RoleInstance object from the "outside" by using management certificates and navigating the hierarchy of services, roles, etc. If using Visual Studio/.NET here's a library to help you get started: http://www.nuget.org/packages/microsoft.windowsazure.management.libraries