Azure的Public IP我们肯定都知道,但是Public IP Prefex是什么东东?可能很多人没听说过,具体指的是什么这个暂且不提,我们先来说一个问题
很多时候我们会有一个痛点,我们都知道云上的公网IP用着会很爽,尤其跑个爬虫什么的,想换就换,当然,这也导致很多垃圾邮件,垃圾短信等等也都是从云上发出来的,除此之外,我们还会经常遇到一个问题,就是防火墙要设置白名单的时候,云上的IP实际上是不固定的,而且大部分时候没有什么规律可言,这就是个问题了。
在企业中,防火墙是少不了的,在和云上的服务通信时,尤其是一些PaaS服务,我们都需要将对应的IP地址添加到白名单里,对于PaaS服务,微软其实有一些固定的网段,这些网段的信息其实也是对外公布的,我们可以直接在微软的官网下载到,这样在设置防火墙规则时,就可以把IP端都添加到规则里了。而对于IaaS的一些服务,如果不想每次都要手动添加公网IP,其实Azure提供一项功能,可以提供给用户一组公网IP地址的池子,用户可以拿到一批特定地址的公网IP,这样就不需要每次都一个个手动添加防火墙规则了,而这项功能,实际上就是Public IP Prefex
目前来讲,Public IP Prefex中的IP可以关联到以下几个服务中
Resource | 方案 | 步骤 |
虚拟机 | 将来自某个前缀的公共 IP 关联到 Azure 中的虚拟机可降低在防火墙中创建允许列表 IP 所产生的管理开销。 可使用单个防火墙规则简化创建整个前缀允许列表的过程。 缩放 Azure 中的虚拟机时,可关联来自同一前缀的 IP,从而节省成本、时间和管理开销。 | 将来自某个前缀的 IP 关联到虚拟机:1. 创建前缀。 2. 从前缀创建 IP。 3. 将 IP 关联到虚拟机网络接口。 也可以将 IP 关联到虚拟机规模集。 |
标准负载均衡器(Basic LB不可以) | 将来自某个前缀的公共 IP 关联到负载均衡器的前端 IP 配置或出站规则可确保简化 Azure 公共 IP 地址空间。 可以通过整理源由公共 IP 前缀定义的连续 IP 地址范围的出站连接来简化你的方案。 | 将来自某个前缀的 IP 关联到负载均衡器:1. 创建前缀。 2. 从前缀创建 IP。 3. 创建负载均衡器时,选择或更新在前面第 2 步中创建的 IP 作为负载均衡器的前端 IP。 |
Azure防火墙 | 可使用来自前缀的公共 IP 地址作为出站 SNAT。 这意味着所有出站虚拟网络流量都会转换为 Azure 防火墙公共 IP。 该 IP 来自预先确定的前缀,因此很容易提前知道 Azure 中公共 IP 占用情况将来的情况。 | 1.创建前缀。 2. 从前缀创建 IP。 3. 部署 Azure 防火墙时,请务必选择之前通过前缀分配的 IP。 |
应用程序网关 v2 | 对于自动缩放和区域冗余应用程序网关 v2,可以使用来自前缀的公共 IP。 该 IP 来自预先确定的前缀,因此很容易提前知道 Azure 中公共 IP 占用情况将来的情况。 | 1.创建前缀。 2. 从前缀创建 IP。 3. 部署应用程序网关时,请务必选择之前通过前缀分配的 IP。 |
需要注意的是,对于Public IP Prefex,目前还存在以下这些限制
不能指定前缀的 IP 地址。 Azure 将根据指定的大小分配前缀的 IP 地址。
可以创建前缀最多为 16 的 IP 地址或 /28。 有关详细信息,请参阅 Azure 限制。
创建前缀后,无法更改该范围。
仅使用标准 SKU 创建的静态公共 IP 地址可从前缀范围进行分配。 若要详细了解公共 IP 地址 SKU,请参阅公共 IP 地址。
范围中的地址只能分配到 Azure 资源管理器资源。 这些地址不能分配到通过经典部署模型创建的资源。
使用前缀创建的所有公共 IP 地址都必须位于同一 Azure 区域和订阅作为前缀,并且必须分配到相同区域和订阅中的资源。
如果前缀中的任何地址被分配到与某个资源关联的公共 IP 地址资源,则无法删除该前缀。 首先应取消关联所有公共 IP 地址资源,这些资源通过前缀分配有 IP 地址。
Public IP Prefex的使用其实很简单,我们来看一下
Public IP Prefex是按网段创建的,网段的大小决定了池子里的IP数量,要注意的是,网段越大,池子里的IP数量就会越多,收费也就会越贵
可以看到创建完成后,就可以通过添加ip的方式创建公网IP了
尝试创建两个IP地址,你会发现创建出来的会是连续的IP
剩下的就和普通的公网IP没什么区别了,挂载到对应的服务上即可,不过还是要提醒一点,Public IP Prefex创建出来的是Standard的IP,没办法挂载到一些Basic的服务上