From owner-freebsd-questions@FreeBSD.ORG Thu Apr 23 02:07:22 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9F08F106566B for ; Thu, 23 Apr 2009 02:07:22 +0000 (UTC) (envelope-from jeff@visionarytechnical.com) Received: from smtp124.sbc.mail.sp1.yahoo.com (smtp124.sbc.mail.sp1.yahoo.com [69.147.64.97]) by mx1.freebsd.org (Postfix) with SMTP id 88B378FC12 for ; Thu, 23 Apr 2009 02:07:22 +0000 (UTC) (envelope-from jeff@visionarytechnical.com) Received: (qmail 94982 invoked from network); 23 Apr 2009 01:40:42 -0000 Received: from unknown (HELO ?192.168.42.11?) (jeff@76.211.224.253 with plain) by smtp124.sbc.mail.sp1.yahoo.com with SMTP; 23 Apr 2009 01:40:42 -0000 X-YMail-OSG: QRKCcXYVM1laKV5IsvFIzcxc9D3ABjluBqbP6jPec6op7swnVl4wUnWXbwQPxI3w3DVLQfk0cWjn_VErswm3irGt1WAeXEvu5xI_ex_EbEe_aMRtV0RnMn1No0ljfMPYA_e0PGobvBT_sK35EpceHdE3xmaCmZQKuZLt4o8yMZVdsvEGpYpb_iSuYkopTwzpPkwwns8cE1soIhj3t1UrdiOVw11THsEJNUrjXINsKcb9qmV4eGsebOsLlX5bLJthSYCCKCVgAIaKHgBRgBSZFerFa1RHO7vuOca7CZuVQ.m5SdjXOJM- X-Yahoo-Newman-Property: ymail-3 Message-Id: <0E40EC5D-8DC1-4DD9-9047-01212E98BE1A@visionarytechnical.com> From: Jeff Croft To: freebsd-questions@freebsd.org Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.4) Date: Wed, 22 Apr 2009 18:40:39 -0700 X-Mailer: Apple Mail (2.930.4) Subject: multiple PPPoE connections on one machine (DSL load balancing) X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Apr 2009 02:07:22 -0000 Hello -- I'm configuring FreeBSD 7.1 as a router/load-balancer and I just got stuck. I know this sounds like a newbie question, but hear me out. I have three DSL line (AT&T in SF Bay Area, business class) connected via ethernet to the box, and one more ethernet connected to an internal network. The idea is to do some clever kind of load-balancing and/or logging of DSL connections using pf. All three DSL lines are configured to use PPPoE. I can successfully bring any one of them up individually, but when I try to bring more than one up, using either ppp or mpd5, I get an error that looks like this (example from ppp): ppp : tun0: Warning: iface add: ioctl(SIOCAIFADDR, X.X.X.X -> D.D.D.D ): File exists and then the 2nd link goes down. mpd5 says the same thing, but the error is slightly different. For all three point-to-point links the remote side of the point to point (D.D.D.D) is always the same IP address, so naturally it doesn't want to add multiple routing table entries which point to the same destination. The vendor claims to be unable to change the value of D.D.D.D because "everyone in your region has the same remote address." They also don't support mlppp, so multilink is out. Also, I would like easy, real-time, programmatic access to the IP address of each individual DSL line. So far, I've thought of the following workarounds: 1. Use cheap linksys boxen to hang off each DSL line so the FreeBSD network stack doesn't have to do the PPPoE. I'm concerned that they'll be able to handle the volume of individual connections I'm planning on, even with the firmware replaced with something decent. Plus it's three extra devices on my network! 2. Use network virtualization such as this. I don't have any experience with it, but I'm guessing it would do everything I want. http://imunes.tel.fer.hr/virtnet/ Does anyone have any ideas how to solve this problem more elegantly? Thanks much, Jeff Croft Linux admin who is thrilled to have some FreeBSD time