>>But i wonder, what is controlling what computer to have which IP adress?

On a private network, the IP addresses can be set by the administrator. They have to be non-routable (eg 10.0.0.20). Also they can be issues by a DCHP server (dynamic host configuration protocol) where permitted IP addresses are issued to clients.

The DHCP system is widely used by internet service providers to assign clients an IP address.

At the next level up, i believe it is the country registar that is responsible for issuing IP blocks to service providers, then ICANN

>>local ip and extern ip?

A local ip is typically non routable, external ip addresses are routable and globally accessable.

>>If nothing is controlling the worlds IP adresses

they are controlled. No two systems should ever be assigned the same IP. I dont know if it is theoretically possible or not, i dont believe it is.