I have configured a 4-stable machine to be a router, routing ipv4, ipv6
and ipx. To be able to do Ethernet_II framing on one interface and 802.3
on another I have used if_ef.ko.

I then noticed that "... kernel: nd6_storelladdr failed" gets logged
often and after a while all mbufs are used. It turned out that in
sys/net/if_ethersubr.c in ether_output() when nd6_storelladdr() fails,
it does a return(0) and does not free the mbuf. I checked -current
and it is still like that.

Now the reason it fails is that the ef(4) device use an ifp->if_type
(IFT_XETHER) that nd6_storelladdr() does not expect.

Oh as a workaround I have configured route6d to ignore fxp1f0.

John
-- 
John Hay -- [EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to