Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Feb 2010 18:03:28 -0800
From:      "Li, Qing" <qing.li@bluecoat.com>
To:        "Brett Glass" <brett@lariat.net>
Cc:        "Li, Qing" <qing.li@bluecoat.com>, Luiz Otavio O Souza <lists.br@gmail.com>, net@freebsd.org
Subject:   RE: Routing problems on VPN servers running FreeBSD 8.0-RELEASE
Message-ID:  <B583FBF374231F4A89607B4D08578A4306932687@bcs-mail03.internal.cacheflow.com>
In-Reply-To: <201002130041.RAA18639@lariat.net>
References:  <201002122133.OAA16835@lariat.net> <25ff90d61002121409m6a9d7639qf254a754644a60ca@mail.gmail.com> <201002122240.PAA17544@lariat.net> <B583FBF374231F4A89607B4D08578A43046737C2@bcs-mail03.internal.cacheflow.com> <201002130004.RAA18387@lariat.net> <B583FBF374231F4A89607B4D08578A43046737C3@bcs-mail03.internal.cacheflow.com> <201002130041.RAA18639@lariat.net>

next in thread | previous in thread | raw e-mail | index | archive | help
>=20
> It'd be good to resolve this as soon as possible, because I have
> two clients who need servers installed this weekend. (They wanted
> them last week, but I was trapped away from the office by a
snowstorm.)
>=20

Luiz Otavio and I have been discussing offline about an issue with
the file /usr.sbin/ppp/arp.c in the past week or so. The ARP related=20
code in arp.c was missing a flag bit called "RTF_LLDATA".=20

Luiz Otavio and I just had a debug session on your issue. He was
able to reproduce it, and due to the missing RTF_LLDATA bit, the
proxy-arp entry made it into the routing table, which was not
suppose to happen. Since there is already a PPP host entry
for the remote end, you get the FILE EXIST error.
I believe the reason was due to its confusing the kernel code as=20
if mpd is installing a routing entry as in=20
"route add x.x.x.x/y -iface em0".

So you can wait for Luiz's patch, or you could do it yourself
and try the following 1 line fix:

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=3D=3D=3D=3D=3D=3D=3D=3D
-- usr.sbin/ppp/arp.c	(revision 203430)
+++ usr.sbin/ppp/arp.c	(working copy)
@@ -119,7 +119,7 @@
     return 0;
   }
   arpmsg.hdr.rtm_type =3D add ? RTM_ADD : RTM_DELETE;
-  arpmsg.hdr.rtm_flags =3D RTF_ANNOUNCE | RTF_HOST | RTF_STATIC;
+  arpmsg.hdr.rtm_flags =3D RTF_ANNOUNCE | RTF_HOST | RTF_STATIC |
RTF_LLDATA;
   arpmsg.hdr.rtm_version =3D RTM_VERSION;
   arpmsg.hdr.rtm_seq =3D ++bundle->routing_seq;
   arpmsg.hdr.rtm_addrs =3D RTA_DST | RTA_GATEWAY;
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=3D=3D=3D=3D=3D=3D=3D=3D

I had to reintroduce the RTF_LLDATA flag for compatibility in r187094
back
in Jan. 2009. This change appears to be missing from the ppp port.

Please give the above fix a try and see if it resolves your issue.

-- Qing








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