Various Erlang net administration routines.
This module contains various network utility functions.
Functions
dns_hostname(Host) -> {ok, Name} | {error, Host}
Host = atom() | string()Name = string()
Returns the official name of , or
{error, if no such name is found. See also
inet(3).
host_file() -> Hosts | {error, Reason}
Hosts = [Host :: atom()]Reason =
file:posix() |
badarg | terminated | system_limit |
{Line :: integer(), Mod :: module(), Term :: term()}
Reads file .hosts.erlang, see section
Files. Returns the hosts in this
file as a list. Returns {error, if the
file cannot be read or the Erlang terms on the file cannot be
interpreted.
localhost() -> Name
Name = string()
Returns the name of the local host. If Erlang was started
with command-line flag -name, is
the fully qualified name.
names() -> {ok, [{Name, Port}]} | {error, Reason}
Name = string()Port = integer() >= 0Reason = address | file:posix()
names(Host) -> {ok, [{Name, Port}]} | {error, Reason}
Host = atom() | string() | inet:ip_address()Name = string()Port = integer() >= 0Reason = address | file:posix()
Similar to epmd -names, see
erts:epmd(1).
defaults to the local host. Returns the
names and associated port numbers of the Erlang nodes that
epmd registered at the specified host. Returns
{error, address} if epmd is not operational.
Example:
(arne@dunn)1> net_adm:names().
{ok,[{"arne",40262}]}
ping(Node) -> pong | pang
Node = atom()
Sets up a connection to . Returns
pong if it is successful, otherwise pang.
world() -> [node()]
world(Arg) -> [node()]
Arg = verbosity()
verbosity() = silent | verbose
Calls names(Host) for all hosts that
are specified in the Erlang host file .hosts.erlang,
collects the replies, and then evaluates ping(Node) on
all those nodes. Returns the list of all nodes that are
successfully pinged.
defaults to silent.
If , the function writes
information about which nodes it is pinging to stdout.
This function can be useful when a node is started, and the names of the other network nodes are not initially known.
Returns {error, Reason} if host_file()
returns {error, Reason}.
world_list(Hosts) -> [node()]
Hosts = [atom()]
world_list(Hosts, Arg) -> [node()]
Hosts = [atom()]Arg = verbosity()
verbosity() = silent | verbose
Same as world/0,1,
but the hosts are specified as argument
instead of being read from .hosts.erlang.
Files
File .hosts.erlang consists of a number of host names
written as Erlang terms. It is looked for in the current work
directory, the user's home directory, and $OTP_ROOT
(the root directory of Erlang/OTP), in that order.
The format of file .hosts.erlang must be one host
name per line. The host names must be within quotes.
Example:
'super.eua.ericsson.se'. 'renat.eua.ericsson.se'. 'grouse.eua.ericsson.se'. 'gauffin1.eua.ericsson.se'. ^ (new line)