Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Apr 2013 16:01:10 -0400
From:      Juan Mojica <jmojica@gmail.com>
To:        Juan Mojica <jmojica@gmail.com>, FreeBSD Net <freebsd-net@freebsd.org>
Subject:   Re: ARP: Error Message in if_ether.c "arprequest: cannot find matching address"
Message-ID:  <CAPKuH-wjT4ZdJ4CxwRjDZYAcuq3JTHS3i3KgA8BjmVoMShA6kw@mail.gmail.com>
In-Reply-To: <20130422192127.GJ1620@verio.net>
References:  <CAPKuH-w4ugf4KSWBKMoURbNsSrs1O-XNmWdn47VKn9MkCOgRDw@mail.gmail.com> <20130422192127.GJ1620@verio.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--f46d043be18cbbf6b604daf887b3
Content-Type: text/plain; charset=ISO-8859-1

Hey David,

  That's not quite the scenario we're dealing with, but it is disconcerting
to here that it looks like this path can be triggered from an incoming
frame.  We had been seen it frequently when quickly
unconfiguring/configuring interfaces from a host.  An application would
receive the configure message, start trying to send out traffic, but not
get the unconfigure in time.  That was the working theory.  We've not hit
it recently - could just be a dormant race condition.

I have attach my proposed solution, which takes what Gleb provided, adds a
KASSERT, and wraps it all up with a sysctl so that it can be turned off.

Thanks,
Juan

On Mon, Apr 22, 2013 at 3:21 PM, David DeSimone <fox@verio.net> wrote:

> Juan Mojica <jmojica@gmail.com> wrote:
> >
> > We manage to hit the following message with some regularity.
> >
> > arprequest: cannot find matching address
> >
> > The code shows a printf:
> >
> > printf("%s: cannot find matching address\n", __func__);
> >
> >
> > Any reason this is a printf and not a
> >
> > log(LOG_ERR,
> >
> > The only things I can come up with are:
> >
> > a) it is a really severe and should be printed out, which if that is the
> > case why isn't there an assert there?
> > b) whoops, that should probably be a log(LOG_ERR,
> >
> > On our end we need to figure out exactly why we're intermittently hitting
> > this patch of code.
>
>
> We see this regularly on our network, because we have multiple overlaid
> subnets on the same VLAN.  The server sees an ARP request come in, but
> it does not match any of its confgired subnets, so it generates this
> error when trying to formulate an ARP reply.
>
> For example, the server might be configured to use 192.168.1.10/24 on an
> interface, but if it receives an ARP request for 172.31.250.249 on that
> interface, it won't know how to reply, and will generate this error.
>
>
> You might see this error if someone is inserting hosts with wrong IP's
> on your network, and they start trying to ARP for one another.
>
> --
> David DeSimone == Network Admin == fox@verio.net
>   "I don't like spinach, and I'm glad I don't, because if I
>    liked it I'd eat it, and I just hate it." -- Clarence Darrow
>
>
> This email message is intended for the use of the person to whom it has
> been sent, and may contain information that is confidential or legally
> protected. If you are not the intended recipient or have received this
> message in error, you are not authorized to copy, distribute, or otherwise
> use this message or its attachments. Please notify the sender immediately
> by return e-mail and permanently delete this message and any attachments.
> Verio Inc. makes no warranty that this email is error or virus free.  Thank
> you.
>



-- 
Juan Mojica
Email: jmojica@gmail.com

--f46d043be18cbbf6b604daf887b3
Content-Type: application/octet-stream; name="arp_no_int.diff"
Content-Disposition: attachment; filename="arp_no_int.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hfu2fp4o0

SW5kZXg6IHN5cy9uZXRpbmV0L2lmX2V0aGVyLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gc3lzL25ldGluZXQv
aWZfZXRoZXIuYwkocmV2aXNpb24gMjQ5Nzc2KQorKysgc3lzL25ldGluZXQvaWZfZXRoZXIuYwko
d29ya2luZyBjb3B5KQpAQCAtNTAsNiArNTAsNyBAQAogI2luY2x1ZGUgPHN5cy9wcm9jLmg+CiAj
aW5jbHVkZSA8c3lzL3NvY2tldC5oPgogI2luY2x1ZGUgPHN5cy9zeXNsb2cuaD4KKyNpbmNsdWRl
IDxzeXMvc3lzdG0uaD4KIAogI2luY2x1ZGUgPG5ldC9pZi5oPgogI2luY2x1ZGUgPG5ldC9pZl9k
bC5oPgpAQCAtMTIyLDYgKzEyMywxMSBAQAogCSZWTkVUX05BTUUoYXJwX21heGhvbGQpLCAwLAog
CSJOdW1iZXIgb2YgcGFja2V0cyB0byBob2xkIHBlciBBUlAgZW50cnkiKTsKIAorc3RhdGljIGlu
dCBsb2dfYXJwX25vX2lmYWNlID0gMTsKK1NZU0NUTF9JTlQoX25ldF9saW5rX2V0aGVyX2luZXQs
IE9JRF9BVVRPLCBsb2dfYXJwX25vX2lmYWNlLCBDVExGTEFHX1JXLAorCQkgICAmbG9nX2FycF9u
b19pZmFjZSwgMCwKKwkJICAgImxvZyBhcnAgcmVxdWVzdHMgd2l0aCBubyBjb3JyZXNwb25kaW5n
IGludGVyZmFjZSIpOworCiBzdGF0aWMgdm9pZAlhcnBfaW5pdCh2b2lkKTsKIHN0YXRpYyB2b2lk
CWFycGludHIoc3RydWN0IG1idWYgKik7CiBzdGF0aWMgdm9pZAlhcnB0aW1lcih2b2lkICopOwpA
QCAtMjUwLDcgKzI1NiwxMyBAQAogCQl9CiAJCUlGX0FERFJfUlVOTE9DSyhpZnApOwogCQlpZiAo
c2lwID09IE5VTEwpIHsKLQkJCXByaW50ZigiJXM6IGNhbm5vdCBmaW5kIG1hdGNoaW5nIGFkZHJl
c3NcbiIsIF9fZnVuY19fKTsKKwkJCWlmIChsb2dfYXJwX25vX2lmYWNlKSB7CisJCQkJS0FTU0VS
VChmYWxzZSwgKCIlczogY2Fubm90IGZpbmQgbWF0Y2hpbmcgYWRkcmVzcyBmb3IgIgorCQkJCQkJ
CQkiJXMgb24gJXNcbiIsIF9fZnVuY19fLCBpbmV0X250b2EoKnRpcCksCisJCQkJCQkJCWlmX25h
bWUoaWZwKSkpOworCQkJCWxvZyhMT0dfRVJSLCAiJXM6IGNhbm5vdCBmaW5kIG1hdGNoaW5nIGFk
ZHJlc3MgZm9yICIKKwkJCQkJIiVzIG9uICVzXG4iLCBfX2Z1bmNfXywgaW5ldF9udG9hKCp0aXAp
LCBpZl9uYW1lKGlmcCkpOworCQkJfQogCQkJcmV0dXJuOwogCQl9CiAJfQo=
--f46d043be18cbbf6b604daf887b3--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPKuH-wjT4ZdJ4CxwRjDZYAcuq3JTHS3i3KgA8BjmVoMShA6kw>