AWS Network Load Balancer(NLB)在终止TLS时不会传递SNI值。 NLB是一个传输层负载均衡器,它在转发数据包时不会解析或修改传输层(例如TLS)的内容。
如果需要根据SNI值进行路由,可以考虑使用Application Load Balancer(ALB)而不是NLB。 ALB是一个应用层负载均衡器,支持根据SNI值进行路由。
以下是一个使用AWS CLI创建ALB的示例代码:
# 创建安全组
aws ec2 create-security-group --group-name my-alb-sg --description "My ALB Security Group"
# 创建ALB
aws elbv2 create-load-balancer --name my-alb --subnets subnet-12345678 subnet-87654321 --security-groups sg-12345678
# 创建目标组
aws elbv2 create-target-group --name my-target-group --protocol HTTP --port 80 --target-type ip --vpc-id vpc-12345678
# 创建监听器
aws elbv2 create-listener --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb/1234567890abcdef --protocol HTTP --port 80 --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-target-group/1234567890abcdef
上述代码示例中,我们创建了一个使用HTTP协议和端口80的ALB,并将流量转发到目标组。 您可以根据需要修改代码以适应特定的配置。
下一篇:AWS NLB重定向