fix
This commit is contained in:
parent
24cbbe0940
commit
d735f29c2f
@ -256,7 +256,7 @@ handle_event(internal, {frame, <<?PACKET_ARP_REQUEST, Body/binary>>}, registered
|
||||
#sdl_arp_request{pkt_id = PktId, target_ip = TargetIp} = sdlan_pb:decode_msg(Body, sdl_arp_request),
|
||||
case sdlan_network:arp_request(NetworkPid, TargetIp) of
|
||||
error ->
|
||||
logger:debug("[sdlan_channel] network: ~p, arp_request target_ip: ~p, mac not found", [NetworkId, TargetIp]),
|
||||
logger:debug("[sdlan_channel] network: ~p, arp_request target_ip: ~p, mac not found", [NetworkId, sdlan_util:int_to_ipv4(TargetIp)]),
|
||||
EmptyArpResponsePkt = sdlan_pb:encode_msg(#sdl_arp_response{
|
||||
pkt_id = PktId,
|
||||
target_ip = TargetIp,
|
||||
|
||||
@ -293,14 +293,14 @@ handle_cast({forward, Sock, SrcMac, DstMac, Packet}, State = #state{network_id =
|
||||
|
||||
PacketBytes = byte_size(Packet),
|
||||
case maps:find(DstMac, Endpoints) of
|
||||
{ok, #endpoint{hole = #hole{peer = Peer = {Ip, Port}}}} ->
|
||||
{ok, #endpoint{hole = #hole{peer = Peer = {NatIp, NatPort}}}} ->
|
||||
case limiting_check(ThrottleKey) of
|
||||
pass ->
|
||||
%% client和stun之间必须有心跳机制保持nat映射可用,并且通过服务转发的udp包肯定可以到达对端的nat
|
||||
logger:debug("[sdlan_network] forward data networkd_id: ~p, src_mac: ~p, dst_mac: ~p, hole: ~p",
|
||||
[NetworkId, sdlan_util:format_mac(SrcMac), sdlan_util:format_mac(DstMac), Peer]),
|
||||
|
||||
gen_udp:send(Sock, Ip, Port, Packet),
|
||||
gen_udp:send(Sock, NatIp, NatPort, Packet),
|
||||
{noreply, State#state{forward_bytes = ForwardBytes + PacketBytes}};
|
||||
denied ->
|
||||
logger:notice("[sdlan_network] networkd_id: ~p, src_mac: ~p, dst_mac: ~p, rate limited, discard",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user