|Just another Perl shrine|
How do I find out my hostname/domainname/IP address?by faq_monk (Initiate)
|on Oct 08, 1999 at 00:32 UTC||Need Help??|
Current Perl documentation can be found at perldoc.perl.org.
Here is our local, out-dated (pre-5.6) version:
The normal way to find your own hostname is to call the
The Sys::Hostname module (part of the standard perl distribution) will give you the hostname after which you can find out the
IP address (assuming you have working
DNS) with a
use Socket; use Sys::Hostname; my $host = hostname(); my $addr = inet_ntoa(scalar(gethostbyname($name)) || 'localhost');
Probably the simplest way to learn your DNS domain name is to grok it out of /etc/resolv.conf, at least under Unix. Of course, this assumes several things about your resolv.conf configuration, including that it exists.
(We still need a good DNS domain name-learning method for non-Unix systems.)