如何确定Azure网站的传出IP地址?

时间:2014-01-30 07:50:13

标签: azure ip-address

有没有办法确定网站的传出IP地址(不是webrole)?

我已经反向查找* .azurewebsites.net,它返回一个地址,但是当我手动检查它时(通过让webapplication访问我控制的网络服务器),它会显示一个完全不同的IP。

这样做的正确方法是什么?

4 个答案:

答案 0 :(得分:30)

Azure网站可以使用每个比例单位4个IP地址中的随机IP。

有关每个比例单位的IP地址列表以及有关如何确定网站比例单位的说明,请查看here

更新:似乎所有比例单位的4个IP地址现在都可以在新的Azure门户中找到,论坛帖子将不再更新。

  

从2015年7月20日起,此帖子将不再更新   IP地址。相反,现在可以在网络中找到此信息   使用新门户网站(portal.azure.com)的应用程序属性。

     

查找出站IP地址:

     
      
  1. 使用 portal.azure.com 上的新门户浏览到您的特定网络应用的详细信息。

  2.   
  3. 在您的网络应用程序的详细信息的顶部,有一个“所有设置”的链接。点击链接。

  4.   
  5. 单击“所有设置”将打开一个可以进一步深入查看的Web应用程序信息列表。要深入研究的具体信息是“属性”。单击“属性”选项。

  6.   
  7. 在“Properties”UX中,有一个显示出站IP地址集的文本框。使用“出站IP地址”文本框旁边的图标,您可以选择所有地址。然后按Ctrl + C将地址复制到剪贴板。

  8.   

答案 1 :(得分:6)

你可以获得" OUTBOUND IP ADDRESSES"通过PowerShell的属性。这是命令:

(Get-AzureRmResource -ResourceGroupName inhabit-adminservices -ResourceType Microsoft.Web/sites -ResourceName YOUR_RESOURCE_NAME).Properties.OutboundIpAddresses -Split ","

YOUR_RESOURCE_NAME是资源组的名称。

答案 2 :(得分:1)

Azure网站似乎会随机使用任何数据中心的IP地址进行出站流量。您可以在此处下载IP地址列表:http://msdn.microsoft.com/en-us/library/dn175718.aspx

或者使用Azure云服务和Azure VPN的组合。 VPN将确保您获得所有出站流量的静态IP地址。很遗憾他们没有为他们的网站服务预见到这一点。

答案 3 :(得分:0)

<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";
    }
}