IP addresses are 32-bit numbers that uniquely identify devices on a network. They allow devices to connect and exchange data and files. IP addresses have two parts - a network portion and a host portion - and are divided into five classes (A, B, C, D, E) based on their size and usage. IP versions 4 and 6 are the main versions, with IPv4 using 32-bit addresses written in dotted decimal notation and IPv6 using 128-bit addresses written in hex notation. IP addresses can be static, with a manually configured address, or dynamic, with an address assigned by a server during startup.