@vsi_pranav Thank you for your query!!!
As per this To create a scale set that assigns a public IP address to each virtual machine with the CLI, add the --public-ip-per-vm parameter to the vmss create command.
To create a scale set using an Azure template, make sure the API version of the Microsoft.Compute/virtualMachineScaleSets resource is at least 2017-03-30, and add a publicIpAddressConfiguration JSON property to the scale set ipConfigurations section.
Also here To create a scale set with a custom DNS name for virtual machines using the CLI, add the --vm-domain-name argument to the virtual machine scale set create command, followed by a string representing the domain name.
For static public IP you can refer to this as well.
As mentioned here you need a scale set of more than 100 VMs with load balancer, use the Application Gateway instead
Hope it helps!!!
Please "Accept as Answer" if it helped so it can help others in community looking for help on similar topics.