# Diferent upload channel



## Rhodand (May 27, 2009)

Hi, first to all thanks for any answer you may post here, and also for read this post.

Now about the issue, I have 2 Internet conections, A- Dedicated Line 1024/1024 kbps, and B- ADSL 4096/768 kbps.

Line A is used for Internet access over the network and a for hosting a Small App Web Server.

Line B is idle.

Also I use a FreeBSD 7.0 to share and control internet access over the network (IPFW, Squid).

Now I want to use the line B (ADSL) for Internet Access and Line A for hosting web server app. The only problem with this is that Line B S**ks for sharing the internet over the network, works nicely when I use it at my Laptop only, but when i Share it at the bsd box is just too slow.

I think (please correct me if im wrong) maybe the problem is the UP load channel (768kbps). I think maybe is too slow for all the trafic it needs to handle (about 30 to 50 {tops} users) and that is causing a bottle neck in my network.maybe the slow connection asking for data from the internet makes the download speed to feel slower.

Now if is this the case, I can set the BSD to download by line B, but upload by line A (routed from another server/gateway maybe)?

IÂ´m correct about my theory? if not, what can be the cause?

Again thanks for any help you can give me.


----------



## SirDice (May 27, 2009)

Rhodand said:
			
		

> Now if is this the case, I can set the BSD to download by line B, but upload by line A (routed from another server/gateway maybe)?


The problem with that is traffic going out on one interface and coming back in on another is not a good idea. It'll probably not work anyway due to both ADSL connections having different IP addresses. You may be able to use ALTQ to load balance the 2 lines a bit more but I never tried that.

I think it would be wise to invest in a SDSL connection or something similar.


----------



## vivek (May 27, 2009)

This is not going to work without complex firewall configuration ruleset. If you need to load balance 2 internet connection with outbound and inbound load balancing you need to use PFsense (based upon freebsd). From the project feature list page:



> Outbound load balancing is used with multiple WAN connections to provide load balancing and failover capabilities. Traffic is directed to the desired gateway or load balancing pool on a per-firewall rule basis.
> 
> Inbound Load Balancing
> Inbound load balancing is used to distribute load between multiple servers. This is commonly used with web servers, mail servers, and others. Servers that fail to respond to ping requests or TCP port connections are removed from the pool.


Grab it here - http://www.pfsense.com/


----------



## SaveTheRbtz (Jun 2, 2009)

FreeBSD 8.x Supports 
option RADIX_MPATH

Earlier versions of FreeBSD supports pf. 
http://www.openbsd.org/faq/pf/index.html
You can route outbound traffic between links using route-to

```
pass in on $int_if route-to \
   { ($ext_if1 $ext_gw1), ($ext_if2 $ext_gw2) } round-robin \
   from $lan_net to any keep state
```

You can even NAT traffic using 2 ip's and source-hash directive


```
nat on $ext_if inet from any to any -> { 192.0.2.5, 192.0.2.10 } source-hash
```


----------

