查看源代码 net_adm (内核 v10.2)
各种 Erlang 网络管理例程。
此模块包含各种网络实用函数。
文件
文件 .hosts.erlang 由多个主机名组成,这些主机名以 Erlang 术语的形式编写。它按顺序在当前工作目录、用户的主目录和 $OTPROOT(Erlang/OTP 的根目录)中查找。
文件 .hosts.erlang 的格式必须是每行一个主机名。主机名必须用引号引起来。
示例
'super.eua.ericsson.se'.
'renat.eua.ericsson.se'.
'grouse.eua.ericsson.se'.
'gauffin1.eua.ericsson.se'.
^ (new line)
概要
函数
返回 Host 的官方名称,如果未找到此类名称,则返回 {error, Host}。另请参阅 inet。
读取文件 .hosts.erlang,请参阅 文件 部分。将此文件中的主机作为列表返回。如果无法读取文件或无法解释文件中的 Erlang 术语,则返回 {error, Reason}。
返回本地主机的名称。如果 Erlang 启动时带有命令行标志 -name,则 Name 是完全限定的名称。
返回 epmd 在指定主机上注册的 Erlang 节点的名称和关联端口号。
设置与 Node 的连接。如果成功,则返回 pong,否则返回 pang。
等效于 world(silent)。
为 Erlang 主机文件 .hosts.erlang 中指定的所有主机调用 names(Host),收集回复,然后在所有这些节点上评估 ping(Node)。返回成功 ping 的所有节点的列表。
与 world/0,1 相同,但主机作为参数指定,而不是从 .hosts.erlang 读取。
类型
函数
-spec dns_hostname(Host) -> {ok, Name} | {error, Host} when Host :: atom() | string(), Name :: string().
返回 Host 的官方名称,如果未找到此类名称,则返回 {error, Host}。另请参阅 inet。
-spec host_file() -> Hosts | {error, Reason} when Hosts :: [Host :: atom()], Reason :: file:posix() | badarg | terminated | system_limit | {Line :: integer(), Mod :: module(), Term :: term()}.
读取文件 .hosts.erlang,请参阅 文件 部分。将此文件中的主机作为列表返回。如果无法读取文件或无法解释文件中的 Erlang 术语,则返回 {error, Reason}。
-spec localhost() -> Name when Name :: string().
返回本地主机的名称。如果 Erlang 启动时带有命令行标志 -name,则 Name 是完全限定的名称。
-spec names() -> {ok, [{Name, Port}]} | {error, Reason} when Name :: string(), Port :: non_neg_integer(), Reason :: address | file:posix().
-spec names(Host) -> {ok, [{Name, Port}]} | {error, Reason} when Host :: atom() | string() | inet:ip_address(), Name :: string(), Port :: non_neg_integer(), Reason :: address | file:posix().
返回 epmd 在指定主机上注册的 Erlang 节点的名称和关联端口号。
类似于 epmd -names,请参阅 erts:epmd。
如果 epmd 未运行,则返回 {error, address}。
示例
(arne@dunn)1> net_adm:names().
{ok,[{"arne",40262}]}
-spec ping(Node) -> pong | pang when Node :: atom().
设置与 Node 的连接。如果成功,则返回 pong,否则返回 pang。
-spec world() -> [node()].
等效于 world(silent)。
为 Erlang 主机文件 .hosts.erlang 中指定的所有主机调用 names(Host),收集回复,然后在所有这些节点上评估 ping(Node)。返回成功 ping 的所有节点的列表。
如果 Arg == verbose,则该函数将有关正在 ping 的节点的信息写入 stdout。
当启动节点时,并且最初不知道其他网络节点的名称时,此函数很有用。
如果 host_file/0 返回 {error, Reason},则返回 {error, Reason}。
与 world/0,1 相同,但主机作为参数指定,而不是从 .hosts.erlang 读取。