Mac address is the unique unchangeable address give to each network address. Technically mac address the real address, ip address is temprary, as you change your address your ip address will change but not your mac address ( when you use airport free wifi your ip is difference)
A media access control address (MAC address) is a unique identifier assigned to network interfaces for communications on the physical network segment. MAC addresses are used as a network address for most IEEE 802 network technologies, including Ethernet. Logically, MAC addresses are used in the media access control protocol sublayer of the OSI reference model.
This is strange but true that all the devices in you home have same public ip address 😉 and that is the public ip of your router provided dynamically by your ISP.
ARP is Address resolution protocol which would help to resolve the public + private ip into a mac address. This get cached as well, so that whenever the communication happens the sender targets it towards mac address