IP addresses are unique on the Internet. The address field is 32 bit which gives 4G address but because many are reserved for various things (like the 127.0.0.0/8 loopback network) there is a relatively high demand for them (ISPs usually charge $15/mo for a block of 8–by comparison you can get 2^64 IPv6 addresses for free).
There are various support protocols that allow a router to know the network topology, what paths lead to what hosts.
The total length field is 16 bits so packets have to be smaller than 64KB. Link layer protocols don't carry packets that size so there are also header fields to allow fragmentation/reassembly of packets.
Internet Control Message Protocol packets are how error messages are returned to a sender. Interesting uses: ping, traceroute, path MTU discovery.
The address resolution protocol maps IP addresses to MAC addresses.