So I made a spigot server (No hosting service) But none of my friends can connect to my server. How do I get my actual ip?
If you go to Google and search "What's my IP", the address provided will be your public address. EDIT: Sniped, but Google queries from that website, so ye.
If you are on residential internet, your IP will likely change daily or every time you reboot your router. You will also need to configure all your routing devices to forward data on port 25565 to your server machine. You may also need to make a firewall rule on the computer to allow UDP traffic on 25565.
No, that'll break it. It won't start then. FTFY Unless you use query, you don't need a UDP rule. As FlyingLlama said, your IP may change so you should look into a dynamic DNS service like no-ip or dyndns.
Additionally: router firmware like DD-WRT can be configured to connect to a DDNS service without needing to install any monitoring software.