I am starting with Multiplayer and I was wondering that if I had options where the players make the servers and port them from their computers, would I the developer be charged.
If you do not use Unity’s matchmaking or relay server, no, you don’t have to pay anything. UNet by itself is free of charge. However if you want to use their matchmaking service and / or you want to use the relay server (which guarantees connectivity if the game server is behind a NAPT router) you have to pay for the traffic that your game produces on their servers. The matchmaking alone doesn’t produce much traffic. However if the relay server is required all the game traffic may go through a relay server.
Without relay server support your players have to make sure their server is reachable from the internet. So they might need to set a port forwarding rule in their router. You can look for other solutions like trying to use UPnP (if enabled in the router) to automatically set a port forwarding rule. You may want to have a look at this forum post. Though there are many other solutions out there. Also if you want some sort of matchmaking but you don’t want to use the Unity service you can roll your own on one of your servers.