How can I find the full hostname (FQDN) of the system I am running on?
Answer / chaitanya
Some systems set the hostname to the FQDN and others set it to just the unqualified host name. I know the current BIND FAQ recommends the FQDN, but most Solaris systems, for example, tend to use only the unqualified host name.
Regardless, the way around this is to first get the host's name (perhaps an FQDN, perhaps unaualified). Most systems support the Posix way to do this using uname(), but older BSD systems only provide gethostname(). Call gethostbyname() to find your IP address. Then take the IP address and call gethostbyaddr(). The h_name member of the hostent{} should then be your FQDN.
Is This Answer Correct ? | 1 Yes | 0 No |
What is af_inet in socket?
What is socket address with example?
What are Sockets?
How do I get my server to find out the clients address / host- name?
Why do I keep getting EINTR from the socket calls?
How many sockets can a cpu have?
How are unix domain sockets implemented?
How can I listen on more than one port at a time?
What is the difference between close() and shutdown()?
What exactly does SO_REUSEADDR do?
Why do not my sockets close?
What is a socket file?