From owner-freebsd-net@FreeBSD.ORG Mon Mar 1 09:56:32 2004 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F3DA516A4CE for ; Mon, 1 Mar 2004 09:56:31 -0800 (PST) Received: from relay2.mecon.ar (relay2.mecon.gov.ar [168.101.16.11]) by mx1.FreeBSD.org (Postfix) with ESMTP id 804A943D41 for ; Mon, 1 Mar 2004 09:56:30 -0800 (PST) (envelope-from juan@mecon.gov.ar) Received: from racing.mecon.ar (racing.mecon.gov.ar [168.101.133.15]) by relay2.mecon.ar (8.12.8p2/8.12.8) with ESMTP id i21HuSpf079862 for ; Mon, 1 Mar 2004 14:56:28 -0300 (ART) (envelope-from juan@mecon.gov.ar) Received: from racing.mecon.ar (meyosp.mecon.gov.ar [10.11.0.149]) by racing.mecon.ar (8.12.8p2/8.12.8) with ESMTP id i21HuSDR097614 for ; Mon, 1 Mar 2004 14:56:28 -0300 (ART) (envelope-from juan@mecon.gov.ar) Received: from bal740v0.mecon.gov.ar (bal740v0.mecon.ar [10.11.1.26]) by racing.mecon.ar (8.12.8p2/8.12.8) with ESMTP id i21HuR5T097597 for ; Mon, 1 Mar 2004 14:56:27 -0300 (ART) (envelope-from juan@mecon.gov.ar) Message-Id: <5.2.1.1.2.20040301142850.01edaf20@10.11.0.173> X-Sender: juan@10.11.0.173 (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 5.2.1 Date: Mon, 01 Mar 2004 14:56:26 -0300 To: freebsd-net@freebsd.org From: Juan Angel Menendez Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Subject: Multipath patches for FreeBSD 4.8, working on a single interface X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2004 17:56:32 -0000 Hi everyone I've just applied Tanzer's multipath routing patches over FreeBSD 4.8, compiled the kernel and everything worked fine. Basically, my idea is to load share default outgoing traffic over 2 redundant routers which are on the same LAN. I've tried the following: #test route add default -pathmetric 1 -gateway 10.10.16.2 -pathmetric 1 -gateway 10.10.17.2 add net default test# netstat -nr Routing tables Internet: Destination Gateway Flags/ Refs/ Use Netif Expire metric left default UGSc 114 100 xl0 10.10.16.2 1 0 xl0 *10.10.17.2 1 0 0 xl0 127.0.0.1 127.0.0.1 UH 10 1000001 lo0 10.10.16/21 link#1 UC 8 0 xl0 test# route -n get default route to: default destination: default mask: default cur gateway: 10.10.17.2 multipaths: 10.10.16.2 metric: 1 10.10.17.2 metric: 1 interface: xl0 flags: recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire 0 0 0 0 0 0 1500 0 sockaddrs: test# ifconfig xl0 xl0: flags=8843 mtu 1500 inet 10.10.16.11 netmask 0xfffff800 broadcast 10.10.23.255 inet6 fe80::260:8ff:fecc:bc81%xl0 prefixlen 64 scopeid 0x1 ether 00:60:08:cc:bc:81 media: Ethernet autoselect (100baseTX ) status: active I've tried getting a file from the server using ftp, but the kernel always seems to choose the same path, it doesn't round robin over different paths. I checked that watching the routers interface's counters. I've also tried -pathmetric 10 and no -pathmetric at all without luck. Configuration examples showed how to make it to work using 2 different NICs, has anyone managed to make it to work using a single NIC ? Maybe using aliasing ? Any help will be appreciated. Juan