In terms of the ownership of any domain name, why is it that a person or a company who owns a website and the technology to make the said website work has to pay “extra” money to “rent” a domain name?
Do you agree that it is good to have as a property that any single domain name exists only once, that is that there is ONE “owner” of it?
If you agree with this premise I think you can immediately go to the conclusion that to have this property you need someone to enforce it, and have a single database, which is a job of a registry. That means immediately (but still very much in a simplified explanation) that there is a database and people maintaining it.
So you need “money” to pay for the servers and the people running them.
It makes sense to have the people using that service, those registering domain names, to pay for it.
This is a technical standpoint. Domains do not work out of thin air, there is the registration part (database above, communications to it, etc.) and the publication part (hence DNS servers running 100% of the time to have the domain resolving, etc.)
Of course, some could argue that all of this becomes moot if everything is on the blockchain except that 1) this is not how the DNS works today and 2) the blockchain still needs servers and people running them (so if you look at example such as Ethereum Naming Service you will see that domains are not free either, even on the blockchain).
Alternative roots show exactly why the problem is not just technical. Technically it is trivial to have another root. This is the easy part. The hard part, is non technical. Why this alternative root would be any better than current one? You can list a lot of problems with current one, but alternative roots never proved their solution provided something with less problems, they are just different. Internet works in many parts, like routing with BGP or resolution with DNS, by separate people agreeing on some common rules and protocols. The world agreed in the past, in some way, to have Jon Postel run the DNS and then later IANA/ICANN.
Of course when you see today ICANN’s budget and how it grows, you can start to be very reluctant on the idea of paying for a domain name, but thinking that just changing the root changes everything is at best naive.
Do these (domain registrar) companies offer you some kind of protection against DDOS attacks or do they own some kind of more powerful servers to relay connections towards your main server where you host a site?
So this has nothing to do with the descriptions above, you are speaking here about a DNS/Web hosting, where registrars do not provide this service for just their job of domain name registration (they can provide other services of course, but they are separate jobs; being a registrar just means being connected to a registry and send it commands to register domain names and maintain them over time). Historically registries were selling directly to customers (ex: Network Solutions in the eighties and beginning of nineties was the sole seller of .com/.net/.org domains, $70 for 2 years), but then it was seen as a monopoly so for competitive reasons the model was broken to a registry maintaining the central database (see above why that needs to exist) selling names to “a few” registrars that in turn sells to end customers. This is hugely oversimplified of course.
And the last thing, do these companies grow/increase prices for more popular domain names and why?
Pricing is completely in the hand of registries indeed, and even ICANN (for gTLDs) does not impose restrictions on that, except to announce changes to registrars. So you can see everything, some TLDs where prices increase each year or almost each year (see .com/.net), some TLDs where it even goes down sometimes (some registries, in ccTLDs, are non profit organizations so they are bound to have a balanced finance at the end of the day, excess of money can be thrown to foundations or increase salaries, or domain names cost can be lowered), etc.
Also you need to define “more popular”. But registries are free to maintain list of “premium” names and offer them at an higher price to registrars, which then forward this to end customers. This is however set before the domain is bought, the price is not expected to change after (you can find exceptions, and also renewal price is sometimes the same as creation price for premiums, sometimes regular price, it varies).
You will find a lot of places where it is argued that a domain name is just a line in the database, hence inferring that it should cost $0.10 or something, specially at volume. This is VERY shortsighted and often in response to another thing difficult to fathom, which is registries with more domains but costs growing (where normally you can achieve cost reductions by scale). But registries, especially in gTLDs, are not charities. As any other company in a capitalist based economy, their sole goal is first to persist and second to please their investors.
Note also that prices are often used (you are free to agree if that works or not) to deter captive registrations that is people registering names just to resell them. This is why when gTLDs start there is often but not always an EAP or Early Availability Phase where everyone is entitled to register a name (contrary to the sunrise phase before you need to have a trademark for example to be able to register a name) but the prices are far bigger than regular ones, for 5 to 7 days. Regular price can be $10 while first day of EAP the same name can be sold for $10000 for example.
So depending on your views you can find prices either far too big or even too low, and I won’t enter this subject, except by giving just 2 views to take into account: 1) price is not value (hence the second market where prices are not correlated to the price paid at registry or registrar), and 2) a domain name is not just one line in a database (it is not a one time action, it is an ongoing service, the registry authoritative nameservers have to publish the name continuously, respond to queries, sustain DDOS attacks, etc.), not even taking into account the legal part, for example, or support.