feat: add rpc server listener bind ip config

This commit is contained in:
DDDHuang 2022-06-01 15:35:09 +08:00
parent 43b56e82bd
commit f900e4ea3f
3 changed files with 28 additions and 2 deletions

View File

@ -352,7 +352,16 @@ rpc.async_batch_size = 256
## Defaults to `stateless`.
rpc.port_discovery = stateless
rpc.tcp_server_ip = 0.0.0.0
## If the host of an Erlang node has many network interfaces,
## this parameter specifies which one for RPC server to listen on.
## For the type definition of ip_address(), see inet(3).
##
## See: http://www.erlang.org/doc/man/kernel_app.html
##
## Value: IP Address, [0-255].[0-255].[0-255].[0-255]
## Default: 0.0.0.0
## 0.0.0.0 means all network interfaces.
#rpc.tcp_server_ip = 0.0.0.0
## TCP port number for RPC server to listen on.
##

View File

@ -406,6 +406,23 @@ end}.
{datatype, integer}
]}.
%% RPC server, network interface.
{mapping, "rpc.tcp_server_ip", "gen_rpc.socket_ip", [
{default, "0.0.0.0"},
{datatype, string}
]}.
{translation, "gen_rpc.socket_ip",
fun(Conf) ->
Addr = cuttlefish:conf_get("rpc.tcp_server_ip", Conf, "0.0.0.0"),
case inet:parse_address(Addr) of
{ok, IP} ->
IP;
_ ->
error({bad_gen_rpc_socket_ip, Addr})
end
end}.
%% Number of tcp connections when connecting to RPC server
{mapping, "rpc.tcp_client_num", "gen_rpc.tcp_client_num", [
{default, 0},

View File

@ -46,7 +46,7 @@
, {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.8.2"}}}
, {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.8.5"}}}
, {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.8.1.10"}}}
, {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "2.5.1"}}}
, {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "2.5.2"}}}
, {cuttlefish, {git, "https://github.com/emqx/cuttlefish", {tag, "v3.3.6"}}}
, {minirest, {git, "https://github.com/emqx/minirest", {tag, "0.3.7"}}}
, {ecpool, {git, "https://github.com/emqx/ecpool", {tag, "0.5.2"}}}