有没有一种方法可以确定网站(而不是Web角色)的出站IP地址?
我已经进行了反向查找*.azurewebsites.net,返回一个地址,但是当我手动检查它时(通过让Web应用程序访问我控制的Web服务器),它显示完全不同的IP。
如何正确做到这一点?
有没有一种方法可以确定网站(而不是Web角色)的出站IP地址?
我已经进行了反向查找*.azurewebsites.net,返回一个地址,但是当我手动检查它时(通过让Web应用程序访问我控制的Web服务器),它显示完全不同的IP。
如何正确做到这一点?
Azure网站可以使用每个规模单元中的4个IP地址之一来随机分配IP地址。
有关每个规模单元的IP地址列表以及确定您的站点规模单元的说明,请参阅此处。
更新:似乎现在可以在新的Azure门户和论坛帖子中找到所有规模单元的4个IP地址,该论坛帖子将不再更新。
从2015年7月20日起,此帖子将不再更新IP地址。 相反,您现在可以在使用新门户(portal.azure.com)的Web应用程序属性中找到此信息。(Get-AzureRmResource -ResourceGroupName inhabit-adminservices -ResourceType Microsoft.Web/sites -ResourceName YOUR_RESOURCE_NAME).Properties.OutboundIpAddresses -Split ","
其中 YOUR_RESOURCE_NAME 是资源组的名称。
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (Request["check"] == "1")
{
Response.Clear();
Response.Write(HttpContext.Current.Request.UserHostAddress);
}
else {
Response.Write("Your IP: " + HttpContext.Current.Request.UserHostAddress + "<br />") ;
Response.Write("Server Outbound IP: " + GetOutBoundAddress()) ;
}
}
public string GetOutBoundAddress()
{
System.Net.WebClient wc = new System.Net.WebClient();
try
{
return wc.DownloadString(Request.Url + "?check=1");
}
catch (Exception)
{
return "not found";
}
}