Hi @SBD
I understand that you are trying to create new VMs with dynamic public IPv4 and IPv6 addresses, but you are running into some issues with the configuration. I'll do my best to help you out.
First, regarding the pricing for static and dynamic public IP addresses, you are correct that static public IP addresses are charged hourly from the time of creation until they are destroyed, while dynamic public IP addresses are only charged while the VM is running. So, if you don't need a static IP address, it's best to use a dynamic IP address to avoid ongoing charges.
Regarding the error you are seeing when trying to associate a dynamic public IP address with a network interface, it sounds like the issue may be related to the availability zone configuration. When you create a VM, you are required to select an availability zone, which determines the physical location of the VM. However, when you create a public IP address with the Basic SKU, you are not given the option to select an availability zone. This can cause issues when trying to associate the public IP address with the network interface, as the availability zone constraints may not match.
To resolve this issue, you may need to create a public IP address with the Standard SKU, which allows you to select an availability zone. This should allow you to associate the public IP address with the network interface without encountering the zone constraint error.
Regarding IPv6, you are correct that enabling public IPv6 requires the use of a load balancer. This is because Azure does not currently support assigning public IPv6 addresses directly to virtual machines. Instead, you must use a load balancer to distribute incoming traffic to the virtual machines. You will need to create a load balancer and configure it to use a public IPv6 address. You can then associate the load balancer with your VMs to enable public IPv6 connectivity.
<If this does answer your question, please accept it as the answer as a token of appreciation.>