查看源代码 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
读取。