What happens if we don't provide ports for hosts in field discovery.zen.ping.unicast inside elasticsearch.yml?

What happens if we don't provide ports for hosts in field discovery.zen.ping.unicast inside elasticsearch.yml?
When we do have 2 VMs and 2 hosts names listed in discovery.zen.ping.unicast, ES is creating 4 nodes , 2 for each host with 9300 and 9301 ports. I am not getting why its like this?

This is correct. If you do not provide a port, ES will start on default port of 9300, and if that port is already taken, it will try to the next one (9300++) until it finds one that is available.