NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: PR/44032 CVS commit: src/sys/net



>  Log Message:
>  PR/44032: Proxy entries stopped working with pppd. The issue here is that
>  the route entry was added, but the RTF_LLINFO bit was not set, making arp -a
>  not showing the entry, but netstat -rn -f inet showing it with the missing
>  L bit. The order of resolution in ifa_ifwithroute() is that if a destination
>  address is found, then the interface chosen for the route is that of the
>  destination. This does not work for link-level addresses since the ppp
>  interface does not arp (uses link_rtrequest, not arp_rtrequest), so the
>  bit is never set. The easy solution here is to check that the gateway is
>  a link address, and use the interface which we chose for the link address
>  as opposed to the interface that routes to the destination. This restores
>  the previous behavior, but is it correct?

Thank you very much for your work.

I have pulled the following files:

usr.sbin/arp/arp.c,v 1.51
usr.sbin/pppd/pppd/sys-bsd.c,v 1.66
sys/net/route.c,v 1.127

Results:
| pppd[799]: found interface wm0 for proxy arp

The correct interface is called vlan10 (with parent: wm0)
- previously pppd found vlan10. Is this intentional?

# arp 10.0.0.192
arp: 10.0.0.192 (10.0.0.192) -- no entry

# netstat -rn -f inet | grep 10.0.0.192
10.0.0.192         10.0.0.1           UH          0       52      -  ppp0
10.0.0.192         11:22:33:44:55:66  UHSp        0        0      -  wm0

Still no good response to ARP who-has requests.

-- 
Egerváry Gergely
Datacast Rendszerház Kft



Home | Main Index | Thread Index | Old Index