123

What's the difference between Hostname and Domain name? especially in regards to NIC

Could someone please elaborate with examples as this concept is a little confusing

rzlines
  • 7,488
  • 17
  • 65
  • 90
  • The best answer to this question I've ever seen is here: https://superuser.com/a/887183/283539 All other answers I've seen to this Q, unfortunately including those below, IMHO fall short of this answer. TIP: Be sure to skip down to the part that starts with "Now after drafting all of this, it can be confusing." (I'm not in any way connected to the poster of this answer.) – Elliptical view Dec 20 '21 at 14:25

3 Answers3

117
  • hostname is the name given to the end-point (the machine in question)
    • and will be used to identify it over DNS if that is configured
  • domain is the name given to the 'network'
    • it will be required to reach the network from an external point (like the Internet)

It is usually written in the form,

hostname.domain.com -- for example

If you are in (say) a college campus named called 'The-University',
and its domain is called 'theuniversity.org',
a machine on the campus network called 'mymachine' would be addressed as, 'mymachine.theuniversity.org'.

If you were trying to connect to this machine from your home network,
you would address it with that full name.
The domain part would reach you to the campus network
and the hostname would let you reach the exact machine in the campus.
I am avoiding the details of IP Addressing and gateways here.

For this reason, while accessing the machine from another machine within the campus
may work with just the hostname (mymachine) without the use of the domain name.

To taken an analogy, if you are in the same city, the street name suffices.
But, to address a place in another city, you would usually add the city name after the street.


For a more detailed reading
the Wikipedia page on Domain Name Service could be a good starting place.


  • When configuring DNS, the DNS Server Name would be required.
    This is a hostname (the server is an addressable machine).
  • An IP address cannot point to a Domain Name,
    It can however point to a domain name server (DNS).
nik
  • 55,788
  • 10
  • 98
  • 140
  • would i have to mention the hostname somewhere when configuring the dns? and if I have a static IP pointing to the domain name would I have to mention the hostname anywhere or that is independent of the domain name configuration – rzlines Oct 22 '09 at 20:52
  • what if i add an A record then isn't that an IP pointing to a domain name? or vice versa? – rzlines Oct 22 '09 at 21:24
  • 4
    I disagree. A domain is not limited to a physical location, and not even to a specific network! – Arjan Oct 23 '09 at 07:27
  • 4
    @Arjan, I accept your disagreement. I have 'over' simplified in the answer. – nik Oct 23 '09 at 08:07
  • @nik: in `www.google.com` is the hostname just `www` or `www.google.com`? [Gillian says](http://www.gilliganondata.com/index.php/2012/05/22/the-anatomy-of-a-url-protocol-hostname-path-and-parameters/) `www.google.com`. If so, that means that the hostname depends on where you are is that it? (local vs remote) – Ciro Santilli OurBigBook.com Feb 28 '14 at 05:32
  • 2
    @CiroSantilli六四事件法轮功包卓轩 They are both hostnames. The name `www` by itself is *unqualified*, and you are quite correct that it will only resolve properly "internally". In fact, it will resolve *differently* depending on a network's DNS configuration. The name `www.google.com` is a *fully qualified domain name* (FQDN; which unfortunately confuses the distinction between "host name" and "domain name") and should resolve the same from any system connected to the Internet. – kbolino Nov 03 '15 at 17:09
  • @kbolino So when would my computer connect to `www.google.com` when I write `www`? Where would my computer needed to be physically located? – Utku Nov 04 '15 at 13:31
  • 1
    @Utku It's not about physical location *per se*. You could have `google.com` on your DNS search path (which can be set automatically via DHCP), you could have a DNS server that aliases `www` to `www.google.com` with a `CNAME` record, or you could add lines to `/etc/hosts`. You can do any of these things yourself on your own computers/network, but this is normally left to your network and system administrators to configure. – kbolino Nov 05 '15 at 16:08
  • @kbolino Actually I couldn't write properly what I am trying to ask. In the answer, it ia stated that if you are on the campus, you may access `mymachine` just by typing `mymachine`. But if you are at home, you must type the full `mymachine.theuniversity.org`. I am wondering what exactly causes this behavior? What makes it possible to access to `mymachine` just by typing `mymachine` when you are on campus, but not when you are not on campus? – Utku Nov 05 '15 at 16:19
  • @Utku One of the 3 methods I described. The key difference between being on campus and being at home is that you are using 2 different networks. They have different configurations and different infrastructure. On campus, the university's network administrators have set things up to work like that; at home, your ISP's network administrators have not. – kbolino Nov 05 '15 at 17:45
  • FQDN = HostName+Domain, in terms of command output : "hostname -f" = "hostname"."hostname -d" – Bharat Pahalwani Mar 16 '16 at 14:43
  • 1
    @Bharat, actually. No. FQDN is a domain name. Last part could be a hostname, or not. It is the TYPE of the FQDN that desides that. Type A gives an IPv4, AAAA an IPv6 address, which addresses a machine. They are are usually set so the host part are same as the hosts own name, but it doesn't need to. Hostname are set in /etc/hostname and probably /etc/hosts. FQDN are set in the network DNS server (or in /etc/hosts for the local machine). Example: hostname bilbo could have FQDN bilbo.exampel.com and www.example.com and example.com. All being some of A or AAAA or CNAME. Test with getent hosts – Anders Jan 10 '17 at 16:44
  • This answer is wrong and should be downvoted: the subdomain is not the hostname. – Adrian Maire Mar 26 '20 at 08:26
  • For completeness, this answer could be improved by addressing how hostnames and domain names (don't) relate to NICs. – Jon Bentley May 04 '20 at 07:07
12

What is the difference between hostname and domain name?

A domain is something which you register and which points to your DNS servers*0. These DNS servers*1 can answer queries for hosts within that domain.

Note that these hosts do not have to be on the same network.

Example:
Gameforge*2 is a firm with some 'Freemium' games. It has servers in multiple countries. It has one single domain called gameforce.com.

s13.gameforce.com may point to a server in the UK (and an a network in the UK), while
s14.gameforce.com may point ot a server in Germany.

Network location is not tied to the domain name.

A host is a computer on a network. That host can have one more more NICs and can have IP adresses.

Especially in regards to NIC

In the case of most home computers the desktop or laptop has one active NIC and one IP, but it is possible to have multiple IPs per NIC, or use multiple NICs. For more details on that look up multi-home.

I hope that this last part answers the 'in regards to NIC'. If not then please specify your question a bit more.



*0 Or to the DNS servers of someone who manages your domain for you.
*1 At least two DNS servers in different locations are recommended.
*2 I am not affiliated with them. It is just the first example I thought of.

Hennes
  • 64,768
  • 7
  • 111
  • 168
  • 3
    Yes, and one FQDN can point to many machines, and many FQDN can point to one machine. Hostname is what the machine calls itself. Can be only one. FQDN is what others calls the machine. Can be many different names. Use getent hosts to test it, and read the man pages. It might give some help. – Anders Jan 10 '17 at 16:48
  • This answer is great, but doesn't clearly explain __hostname__ and how it might be useful?! I mean the one set in /etc/hostname. Is it `s13` and `s14` in your Gameforge example? If yes, then why does it matter to set these hostnames? We could just add DNS records on the DNS servers to point to their IP addresses, right? – aderchox Nov 20 '21 at 16:09
-4

A hostname is the name of a server, on a local network it can be a simple name like "mailserver".

For use on the Internet, domain name and hostname is for most practical purposes the same thing.

See related Wikipedia link.

Read more: http://wiki.answers.com/Q/Difference_between_domain_name_and_host_name#ixzz210PYEsh6

xIN3N
  • 3
  • 6
    It is not even a Wikipedia. – Nakilon Apr 19 '13 at 11:39
  • 4
    Hostname and domain name are very much NOT the same. I suspect that you answered this with a very limited an specific example in mind (e.g. http://www.domain.tld and http://domain.tld. But most domains will have many servers, each with their own hostnames. E.g. fileserver-1.domain.tld, printerser.domain.tld, my_desktop.domain.tld, mylaptop.domain.tld, etc etc. Your example ignores all this and only makes limited sense when you consider that web and mail (MX record!) are often mapped to the same place. However those are the exceptions! – Hennes Jul 14 '14 at 06:02
  • 2
    This answer is just wrong. – Teemu Leisti Jun 28 '18 at 11:14