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

| 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
arp: ( -- no entry

# netstat -rn -f inet | grep           UH          0       52      -  ppp0         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