本文为您介绍网络型负载均衡NLB(Network Load Balancer)的常见问题。
NLB是否有具体的实例规格?
NLB没有具体实例规格,您无需选择规格。
NLB采用自动弹性机制,单实例最大支持1亿并发连接和100Gbps带宽。NLB相比CLB在四层负载均衡能力上有更大的优势,推荐您使用NLB,NLB与CLB能力对比请参见NLB与CLB对比。
NLB绑定的安全组配置了入方向规则为什么不生效?
当NLB实例加入安全组且未设置任何拒绝策略时,NLB监听端口默认对所有请求放通。如果您需要只允许特定IP访问NLB,请注意添加一条拒绝策略(拒绝策略优先级需要低于允许策略)进行兜底。
安全组相关操作您可查看对应产品文档或教程:
拒绝或允许特定IP访问NLB实例,请参见配置NLB安全组实现黑白名单访问策略。
对NLB实现基于协议/端口的访问控制,请参见配置安全组实现NLB基于监听/端口粒度的访问控制。
NLB的VIP为什么无法转发请求?
您可检查是否进行了如下操作:
关闭了跨AZ转发功能:跨AZ转发功能开启后,访问NLB的流量默认可以支持转发到其他可用区的后端服务器。如果您关闭了跨AZ转发功能,且NLB可用区内没有挂载同可用区的服务器,则将导致该可用区VIP无法转发请求。
进行了DNS摘除:可用区DNS摘除后,NLB域名解析中会删除该可用区VIP的A记录,该可用区的VIP将不会转发访问NLB域名的流量。
开启了网络ACL并且未放行100.64.0.0/10网段:如果您在VIP所在的交换机开启了网络ACL(即访问控制),并且未放行100.64.0.0/10网段,将导致VIP探测失败(NLB可用区探测使用的是100.64.0.0/10网段地址),从而导致NLB域名解析中会删除该可用区VIP的A记录,该可用区的VIP将不会转发访问NLB域名的流量。
ECS如何在NLB中同时作为后端服务器和客户端?
您可以在NLB的服务器组中关闭客户端地址保持功能,此时服务器组内的ECS可以作为后端服务器处理请求,也可以作为客户端访问NLB实例。如果您需要获取客户端源IP地址,可以通过在对应监听中开启ProxyProtocol获取客户端源IP地址。相关操作,请参见:
NLB是否支持绑定包年包月的EIP实例?
不支持。
仅可绑定暂未加入共享带宽的按量付费(按使用流量计费)的已购 EIP。
为什么无法为 NLB 的 Local IP 添加明细路由?
NLB 在每个可用区会分配一个 Local IP,该 IP 属于对应可用区交换机(vSwitch)的 CIDR 范围。VPC 路由表中系统已自动生成覆盖交换机 CIDR 的 local 路由(例如 10.0.0.0/24 → local),该路由覆盖了网段内所有地址(含 NLB Local IP),因此 NLB Local IP 的流量已可通过系统路由正常转发,无需为 NLB Local IP 单独配置路由。
如果尝试通过 CreateRouteEntry 为 NLB Local IP 添加 /32 明细路由(例如目标网段 10.0.0.86/32),VPC 路由表会返回 InvalidCidrBlock 错误。这是 VPC 的设计限制:当 local 系统路由已覆盖目标网段时,不允许创建范围更小的明细路由条目。
NLB对外提供服务的IP会变化吗?
创建NLB实例时,系统会分配私网IP或者EIP作为对外提供服务的IP。创建后该IP地址不会变化,对外提供服务的IP发生变化的场景:
NLB实例的VIP是否支持禁止Ping?
NLB支持通过安全组管理访问流量,可在实例所属安全组中配置入方向拒绝ICMP规则。
NLB默认域名为什么无法直接访问?
NLB分配的DNS域名(如nlb-xxx.cn-shanghai.nlb.aliyuncsslb.com)未进行ICP备案,不允许直接通过浏览器访问。您需要使用已备案的自有域名,通过CNAME记录解析到NLB的DNS域名,然后即可正常访问。
如何查询NLB绑定的IP地址?
登录NLB控制台,在左侧导航栏选择实例。
在实例列表页面,单击目标NLB实例ID。
在实例详情页面的可用区区域,可以查看VIP(私网IP)地址。
如果NLB实例为公网类型,还可以在实例详情中查看EIP(公网IP)地址。
私网NLB仅显示VIP,公网NLB同时显示EIP和VIP。
NLB 是否支持配置任意端口的监听(如 MQTT 1883 端口)?
支持。NLB 支持 TCP 和 UDP 协议监听,可配置任意端口,包括 MQTT 协议常用的 1883 端口。创建或编辑监听时,在监听配置中将协议设置为 TCP 或 UDP,并指定所需端口号即可。
同 VPC 内的 ECS 如何通过 NLB 私网连接后端服务?
NLB 私网实例在每个可用区会分配一个 VIP(虚拟 IP 地址),VIP 为静态私网 IP,创建后不会变化。同一 VPC 内的 ECS 可以直接使用 VIP 访问 NLB 后端服务,无需额外的网络配置。如需查看实例当前绑定的 VIP,请参见本文「如何查询NLB绑定的IP地址?」章节。
使用 VIP 直连还是 CNAME 域名连接 NLB?
VIP 直连与 CNAME 域名连接的主要区别如下:
连接方式 | VIP 直连 | CNAME 域名 |
IP 类型 | 静态私网 IP(每个可用区独立分配) | DNS 解析到私网 IP |
可用区故障切换 | 不支持自动切换 | 支持自动剔除异常可用区 |
推荐场景 | 临时调试、单可用区部署 | 生产环境、高可用场景 |
生产环境建议使用 NLB 私网 CNAME 域名(即 NLB 实例的 DNS 名称)进行连接,以支持可用区级别容灾。可在实例详情页的基本信息区域查看 DNS 名称。也可以通过 PrivateZone 将自定义私网域名解析到 NLB 的 CNAME,实现内网自定义域名访问。
如何配置多可用区容灾?
通过以下步骤配置 NLB 多可用区容灾:
在创建或编辑 NLB 实例时,选择多个可用区,系统会为每个可用区分配独立的静态 VIP。
开启实例的跨AZ转发功能,确保流量可跨可用区转发到后端服务器。
在后端服务器组中,将后端服务器分布到多个可用区,保证每个可用区均有可用后端。
通过 NLB 实例的 DNS 名称(CNAME 域名)访问服务。当某可用区发生故障时,NLB 自动执行 DNS 摘除,从域名解析中剔除该可用区的 VIP,流量自动切换到其他正常可用区。
直接使用单个 VIP 访问时,如果该 VIP 所在可用区发生故障,不会自动切换到其他可用区。生产环境推荐使用 DNS 名称(CNAME 域名)连接 NLB,以获得自动容灾能力。
如何通过 PrivateZone 配置私网域名解析到 NLB?
通过云解析 PrivateZone,可以将自定义私网域名解析到 NLB 的 CNAME 域名,从而在 VPC 内通过自定义域名访问 NLB:
登录云解析 PrivateZone 控制台,创建或选择与 NLB 实例所在 VPC 关联的 Zone。
在 Zone 中添加 CNAME 记录,将自定义私网域名指向 NLB 实例的 DNS 名称(格式示例:
nlb-xxx.cn-hangzhou.nlb.aliyuncsslb.com)。配置完成后,VPC 内的 ECS 可通过自定义私网域名访问 NLB,同时继承 CNAME 域名的可用区故障自动切换能力。
公网 NLB 的 CNAME 是否可以用于内网访问?
不支持。公网 NLB 的 CNAME 域名解析到的是弹性公网 IP(EIP),请求会经过阿里云的公网边界进行转发。在 VPC 内直接访问公网 NLB 的 CNAME 时,请求经过公网边界后会被阻断,无法正常访问后端服务。如需在 VPC 内通过 NLB 访问后端服务,请使用私网类型的 NLB 实例,并通过其私网 VIP 或 CNAME 域名连接。