Some technicalities you should be aware of...
Every phone has at least 2 user profiles by default. There is your default user profile(you) with its own user id(UID). The uid is usually an identifying number like "10104" and name like "u0_a152". Then there's the root profile which you do not have access to by default. The root profile always has a uid number of zero "0".
When you root a phone, all you're doing is allowing yourself access to the root profile(uid 0) that already exists on your phone.
Here are some commands to better understand. You can run these on a non-rooted or rooted phone in an app called "terminal emulator". Just type the command and click the enter key on your keyboard.
These 3 commands only work on modern android versions.
List your uid name:
List your uid number:
List the uid number for the root user:
This command works on all android versions.
List all users and uids not including the root user:
The above is the underlying information of what root really is.
As for the rest of your questions...
Root is not available for all phone models.
No it's not illegal to root your device, but voids you warranty.
If there is no root for your device, there's nothing you can do to get it.