1° a Domain name
2° a static IP address or a DDNS Provider
That's why a VPS it's more efficient, because you need to pay providers in both ways
The problem for self-hosting is the INTERNET and its "STAR" Network Topology, good for long distances but stupid if you wanna connect just to the building in front of yours


