Determining IP address and port of an incoming TCP

2019-03-27 01:47发布

I would like to fetch the IP address and port number of an incoming TCP/IP connection. Unfortunately gen_tcp's accept and recv functions only give back a socket, while gen_udp's recv function also gives back the address information. Is there a straightforward way to collect address information belonging to a socket in Erlang?

1条回答
Explosion°爆炸
2楼-- · 2019-03-27 02:21

You need inet/peername 1. From the Erlang inet docs:

peername(Socket) -> {ok, {Address, Port}} | {error, posix()}

Types:

Socket = socket() Address = ip_address() Port = int()

Returns the address and port for the other end of a connection.

查看更多
登录 后发表回答