Date: Wed, 11 Aug 2010 13:47:29 +0200 From: Luigi Rizzo <rizzo@iet.unipi.it> To: stable@freebsd.org Cc: net@freebsd.org Subject: 8.1R: ppp default route uses wrong Netif (with pppoe) Message-ID: <20100811114729.GA83355@onelab2.iet.unipi.it>
next in thread | raw e-mail | index | archive | help
Hi, I found the following problem with ppp after upgrading to 8.1 I am using ppp -ddial -nat ... over pppoe. The entry in ppp.conf has these lines (plus others not relevant here): my-provider: set line PPPoE:nfe0 ... add default HISADDR Up to 7.2 this sufficed to establish a route using 'tun0' as the device Destination Gateway Flags Refs Use Netif Expire default 81.174.0.1 UGS 0 1885 tun0 With the upgrade to 8.1R the default route points to 'nfe0', i.e. the device used to talk pppoe, instead of tun0. This causes a number of failures which prevent operation. I am not sure though whether the bug is in PPP or in the kernel, and why ppp now uses the wrong device to install the route entry. A functional workaround is the following (note you need all three lines!): add default HISADDR shell route delete default shell route add default -interface INTERFACE where the first line installs the bogus entry but supplies a default address for outgoing packets, and the other two entries fix the interface. I tried to remove the 'add default HISADDR' but it does not seem to work -- tcpdump shows outgoing packets carrying 0.0.0.0 as src-ip, which prevents replies from coming back. I'll submit a PR later, but would be curious to know if someone has ideas on what could be a proper fix. cheers luigi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100811114729.GA83355>