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>