- Newest
- Most votes
- Most comments
Hello,
The issue is that you are seeing a higher than expected charge for public IP addresses in your VPC, despite only seeing 2 public IP addresses returned by nslookup for your Application Load Balancer (ALB).
1. Why so many Elastic Network Interfaces (ENIs) for a single Application Load Balancer (ALB)?
An ALB is a highly available and redundant service, and it uses multiple ENIs for fault tolerance and scalability. The number of ENIs used by an ALB can vary based on factors like the number of Availability Zones (AZs) it spans, the amount of traffic it handles, and the configuration of the load balancer.
In your case, having 17 ENIs for an ALB spanning 2 AZs is not unusual. Each ENI represents a network interface used by the ALB to handle traffic and provide redundancy.
2. Can you delete the extra ENIs since only 2 IP addresses are returned by nslookup?
No, you should not delete any of the ENIs associated with your ALB. The IP addresses returned by nslookup are the public DNS addresses used for routing traffic to your ALB. However, behind the scenes, the ALB uses multiple ENIs and private IP addresses to distribute traffic across its resources.
Deleting ENIs from the ALB can disrupt its functionality and cause service interruptions or failures. AWS manages the ENIs associated with the ALB automatically, and you should not manually modify or delete them.
Regarding the high charges for public IPs, it's important to note that you are not charged for the ENIs or public IP addresses used by the ALB itself. The charges you see are likely for other resources in your VPC, such as EC2 instances or NAT Gateways, that have public IP addresses assigned to them.
To reduce costs related to public IP addresses, you can review your resources and remove any unnecessary public IP addresses or consider using NAT Gateways instead of public IP addresses for outbound internet access from your private resources.
Thanks for answering. But it appears that I'm being charged for these 17 public IP addresses. Actually, I contacted billing support, and they told me it's because of the amount of ENIs I have. I checked Public IP insights and in total I have 23 public IP addresses. Out of those 23, 7 addresses belong to instances (amazon owned) and 16 (seems 1 less now) are service managed IPs pointing to this ELB. If we calculate 7 * 0.005$ * 24h * 30d = about 25$ per month, but I'm being charged about 50-60$ for public IP addresses. So either I'm being charged incorrectly or what you say is incorrect (that service managed IPs are not charged).
On https://aws.amazon.com/blogs/networking-and-content-delivery/identify-and-optimize-public-ipv4-address-usage-on-aws/, it says that service managed IPs are charged, but the question is why is there a need for 17 public IP addresses? I understand that internally multiple addresses / private addresses may be used, but using 17 publicly seems not right.
Yes, that's correct! Both an Internet-facing Network Load Balancer (NLB) and an Application Load Balancer (ALB) use public IP addresses to receive IPv4 traffic from the internet. I mention something wrong in point 4
You're correct that the number of public IP addresses assigned to your ALB (16 or 17 in your case) seems excessive, and it's likely contributing to the higher-than-expected charges for public IP addresses.
Try to do:
Open a case with AWS Support and provide them with details about your ALB configuration, the number of Availability Zones, and the excessive number of public IP addresses assigned to it.
Review your ALB configuration, target groups, listeners, and any recent changes or scaling activities to identify potential misconfigurations or unusual activities.
If the issue persists and AWS Support cannot resolve it, consider recreating the ALB from scratch, following best practices and monitoring the number of public IP addresses assigned.