Can I use the NetworkBehaviour functions provided by Unity in order to establish a client/server game on my personal domain

First of all, I am interested to know whether these functions enable a multiplayer game only on a server provided by Unity (like that one that supports 20 CCU for free). In other words, can I use these functions in order to establish a multiplayer game, but on my virtual server hosted somewhere else?

The point is that I would like to have more control over my multiplayer game, I do not discard the facilities provided by Unity, but since I do not have many resources, I am not going to pay for now for a Unity server. Therefore, I would like to host my game on my personal server.

So, is it possible?

Yes you can use UNET to host your own multiplayer games on your own servers, without paying Unity anything for networking.

The “Unity Multiplayer” service is the networking service hosted on Unity servers which ties in with some of the higher level components associated with UNET. You will not be able to use anything that depends on that service. Mostly you’ll be missing out on Unity’s relay and lobby services which are the main parts of Unity Multiplayer.