diff --git a/node/Peer.cpp b/node/Peer.cpp index 106b4350c..5a59031d2 100644 --- a/node/Peer.cpp +++ b/node/Peer.cpp @@ -87,32 +87,19 @@ void Peer::onReceive( WanPath *const wp = (remoteAddr.isV4() ? &_ipv4p : &_ipv6p); wp->lastReceive = now; wp->localPort = ((localPort) ? localPort : Demarc::ANY_PORT); + if (!wp->fixed) + wp->addr = remoteAddr; - // Do things like learn latency or endpoints on OK or ERROR replies + // Learn latency from replies if (inReVerb != Packet::VERB_NOP) { for(unsigned int p=0;pfixed) { - wp->addr = remoteAddr; - TRACE("peer %s learned endpoint %s from %s(%s)",address().toString().c_str(),remoteAddr.toString().c_str(),Packet::verbString(verb),Packet::verbString(inReVerb)); - } - _requestHistory[p].timestamp = 0; break; } } } - - // If we get a valid packet with a different address that is not a response - // to a request, send a PROBE to authenticate this endpoint and determine if - // it is reachable. - if ((!wp->fixed)&&(wp->addr != remoteAddr)) - _r->sw->sendPROBE(SharedPtr(this),localPort,remoteAddr); } if (verb == Packet::VERB_FRAME) { diff --git a/version.h b/version.h index bd2543e6c..93fb165e3 100644 --- a/version.h +++ b/version.h @@ -41,6 +41,6 @@ /** * Revision */ -#define ZEROTIER_ONE_VERSION_REVISION 6 +#define ZEROTIER_ONE_VERSION_REVISION 7 #endif