在Azure App Service中使用AlwaysOn的10.0.128.25地址进行IP限制?

问题描述 投票:0回答:1

在webserver日志中(使用az cli),我可以看到使用用户代理AlwaysOn获取请求,IP地址为10.0.128.25

此IP地址是否可以可靠地用于设置允许IP限制?

这个IP地址没有记录在https://docs.microsoft.com/en-us/azure/app-service/app-service-ip-addresses中,它似乎涵盖了发现公共IP地址,所以我对使用它有所顾忌?

在日志中我也看到IPv6 :: 1表示localhost,所以我猜10.0.128.25也是本地主机?

2018-08-30 10:48:19 EXAMPLESITE GET / X-ARR-LOG-ID=ExampleLogId 80 - ::1 AlwaysOn ARRAffinity=ExampleArrAffinityId - EXAMPLESITE.azurewebsites.net 200 0 0 2942 695 108
2018-08-30 10:48:54 ~1EXAMPLESITE GET / - 80 - 10.0.128.25 AlwaysOn - - examplesite.azurewebsites.net 200 0 64 0 457 46463

我已经尝试使用应用服务控制台和Kudu powershell控制台来查看它是否是实例的IP地址,但我无法发现更多因为ipconfig和Get-NetIPAddress似乎在沙箱中工作。

我猜127.0.0.1不会工作,即使它是同一台机器,因为IIS将其解释为另一个IP?

在目前为止我尝试过的两个应用程序服务计划中,它是相同的IP。

azure-web-sites ip-address azure-app-service-plans ip-restrictions
1个回答
1
投票

每个App Service Web App有两个站点,一个是您的普通WebApp和第二个SCM站点(Kudu运行的位置)。每个都获得ping,这就是为什么你看到两个(~1名称是SCM)站点。

所有Azure Web应用程序(以及移动应用程序/服务,WebJobs和函数)都在称为沙箱的安全环境中运行。每个应用程序都在自己的沙箱中运行,将其执行与同一台机器上的其他实例隔离开来,并提供额外的安全性和隐私,否则将无法使用。

是,连接尝试本地地址(例如localhost,127.0.0.1)和计算机自己的IP将失败,除非同一沙箱中的另一个进程在目标端口上创建了侦听套接字。拒绝连接尝试(例如以下尝试从.NET连接到127.0.0.1:80的示例)将导致以下异常:异常详细信息:System.Net.Sockets.SocketException:尝试访问套接字其访问权限禁止的方式127.0.0.1:80应用程序无法连接到私有IP地址。实例可以四处移动,您可以查看这个讨论处理内部IP地址的讨论主题:https://social.msdn.microsoft.com/Forums/sqlserver/en-US/182f3673-18fc-4ade-90bf-22111f566f85/need-internal-ip-address-of-nodes-withing-a-web-app?forum=windowsazurewebsitespreview

© www.soinside.com 2019 - 2024. All rights reserved.