Overcoming cap problems

LethalChicken

Expert Member
Joined
Sep 14, 2004
Messages
1,340
Reaction score
3
Location
00-07-E9-13-97-54
Hi All,

I'm not sure if anybody has brought this up or if it's a fasible idea, but one way to save on your cap could be.

Get 2 3GB accounts, use the 1st one till it's finished then switch between this one and the other one. Use the empty one for all your local stuff and whenever you need INT stuff use the new one ...

obviously this is not a perfect solution and it might help with the local b/w ...

Has anybody tried this and would this be a feasible option ?



We are Telkom - Resistance is Futile - You will be Assimilated
 
it is extremely feasable this is what you will require ...

1)a system that can distigush local from international traffic (BGP is the awnswer here)
2)a system that can talk BGP and route traffic accross multiple links ...(linux with zebra)
3)and the tricky thing is to find a route server that you can collect updates from (hoping to set one up real soon)

currently i am able to run multiple connections and shape them and limit them and pass different types of traffic down them but if the cap gets reached i dont have a way (see 3 above) to abuse the local ...
 
The way I was thinking was more of a manual for now ... but I agree with you that some nice routing software would be excellent here ... btw do you know if there are any APIs or other methods to connect to the modem admin programatically ... I mean IF someone would be interested in that sort of thing :)


We are Telkom - Resistance is Futile - You will be Assimilated
 
you mean connecting to the modem managemnet ??

if so i dont bother my adsl router is sitting collecting dust but is configured for pppoe operation in bridge mode .... i do all admin from the OS dialer in this case pppd-2.4.2 with RP plugin and run upto 5 managed sessions simultaneously
 
saix,is and uunet have looking glass servers ... manually extract data and sync data sets ...

Getting raw BGP annoucements are ALWAYS a fight ;-(
 
my dear friend that fight my have been won :) i do have a ace up my sleeve that i could be playing soon ...

the plan is to set up a server that will be able to be used by the community ...
 
Hmmmm this sounds pimping good, possibly I should go and abuse those who work near me, or at least nag (never underestimate the power of annoyance)
 
well the means to get these routes to flow down a capped link are puzzleing me at the moment ...
i can get all the routes into a nice table but now to set the gateway is the problem ...

iptables/iproute2 are gonna need to play nicely ... looking at man pages ...
 
I'm also really looking for someone to write a ZA specific script to set this up.

I believe Rodent is working on a mini-distro to do this.

I tried to fathom this stuff myself but its far too complex for cluebie like me.

So atm I'm just switching accounts manually on my Debian firewall/router box.

Got to know the pppd command quite well [;)]

BTW: I do about 10 GB int and 120 GB local with my two accounts per month :)

-Information anarchist-
www.sentechhatesfreespeech.org.za
I support:
www.telkom.fokkensuig.co.za
www.poopband.co.za
www.hellkom.co.za
Read about MaD of hellkom being sued for R5million by Telkom:
http://www.myadsl.co.za/forum/topic.asp?TOPIC_ID=4316
 
yeah i get em routes in a table ... but to make sure they go out the right path is where the fun is ... im thinking a patch to zebra that sets a mark value in the route-map ... to allow iptables to mangle it as needed ...

this may not even be needed im busy experimenting ATM ...
 
ok this is looking promising and more testing is required but it looks like it will do the trick with no further hacks ...

what i have done is set up zebra on a ADSL machine with the same AS as me and added plenty routes to populate the system ...

here is a look at the routing table zebra sets up ...

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote">
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
B - BGP, &gt; - selected route, * - FIB route

K&gt;* 0.0.0.0/0 via 66.18.87.50, ppp0
O&gt;* 10.10.10.0/24 [110/20] via 10.10.255.122, eth0, 01:24:28
O&gt;* 10.10.12.0/24 [110/20] via 10.10.255.122, eth0, 01:24:28
O&gt;* 10.10.13.0/24 [110/20] via 10.10.255.122, eth0, 01:24:28
O&gt;* 10.10.14.0/24 [110/20] via 10.10.255.122, eth0, 01:24:28
O&gt;* 10.10.15.0/24 [110/20] via 10.10.255.122, eth0, 01:24:28
O 10.10.255.0/24 [110/10] is directly connected, eth0, 01:24:31
C&gt;* 10.10.255.0/24 is directly connected, eth0
C&gt;* 66.18.87.50/32 is directly connected, ppp0
C&gt;* 127.0.0.0/8 is directly connected, lo
C&gt;* 127.0.0.2/32 is directly connected, lo
B&gt;* 165.165.128.1/32 [200/0] via 165.165.133.93 (recursive via 66.18.87.50), 00:06:48
B&gt;* 192.168.0.0/24 [200/0] via 165.165.133.93 (recursive via 66.18.87.50), 00:06:48
C&gt;* 192.168.0.23/32 is directly connected, ppp87
B&gt;* 192.168.1.0/24 [200/0] via 192.168.0.254 (recursive via 66.18.87.50), 00:06:48
B&gt;* 192.168.2.0/24 [200/0] via 192.168.0.254 (recursive via 66.18.87.50), 00:06:48
C&gt;* 192.168.2.0/30 is directly connected, eth1
K&gt;* 192.168.20.0/30 via 10.10.255.44, eth0
O&gt;* 192.168.25.0/24 [110/20] via 10.10.255.109, eth0, 01:24:28
O&gt;* 192.168.50.0/24 [110/20] via 10.10.255.251, eth0, 01:24:28
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">

from ip route 2

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote">
165.165.128.1 via 66.18.87.50 dev ppp0 proto zebra equalize
192.168.50.0/24 via 10.10.255.251 dev eth0 proto zebra metric 20 equalize
192.168.2.0/24 via 66.18.87.50 dev ppp0 proto zebra equalize
192.168.1.0/24 via 66.18.87.50 dev ppp0 proto zebra equalize
192.168.0.0/24 via 66.18.87.50 dev ppp0 proto zebra equalize
10.10.14.0/24 via 10.10.255.122 dev eth0 proto zebra metric 20 equalize
10.10.15.0/24 via 10.10.255.122 dev eth0 proto zebra metric 20 equalize
10.10.12.0/24 via 10.10.255.122 dev eth0 proto zebra metric 20 equalize
10.10.13.0/24 via 10.10.255.122 dev eth0 proto zebra metric 20 equalize
10.10.10.0/24 via 10.10.255.122 dev eth0 proto zebra metric 20 equalize
192.168.25.0/24 via 10.10.255.109 dev eth0 proto zebra metric 20 equalize
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">

here is the routing table on the remote PC (zebra)
<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote">
K&gt;* 0.0.0.0/0 via 165.165.128.1, ppp0
B&gt;* 10.10.10.0/24 [200/20] via 10.10.255.122 (recursive via 165.165.128.1), 00:03:58
B&gt;* 10.10.12.0/24 [200/20] via 10.10.255.122 (recursive via 165.165.128.1), 00:03:58
B&gt;* 10.10.13.0/24 [200/20] via 10.10.255.122 (recursive via 165.165.128.1), 00:03:58
B&gt;* 10.10.14.0/24 [200/20] via 10.10.255.122 (recursive via 165.165.128.1), 00:03:58
B&gt;* 10.10.15.0/24 [200/20] via 10.10.255.122 (recursive via 165.165.128.1), 00:03:58
B&gt;* 10.10.255.0/24 [200/0] via 66.18.86.82 (recursive via 165.165.128.1), 00:03:58
B&gt;* 66.18.87.50/32 [200/0] via 66.18.86.82 (recursive via 165.165.128.1), 00:03:58
C&gt;* 127.0.0.0/8 is directly connected, lo
C&gt;* 127.0.0.2/32 is directly connected, lo
C&gt;* 165.165.128.1/32 is directly connected, ppp0
O 192.168.0.0/24 [110/10] is directly connected, eth0, 00:08:41
C&gt;* 192.168.0.0/24 is directly connected, eth0
B&gt;* 192.168.0.23/32 [200/0] via 66.18.86.82 (recursive via 165.165.128.1), 00:03:58
K&gt;* 192.168.1.0/24 via 192.168.0.254, eth0
K&gt;* 192.168.2.0/24 via 192.168.0.254, eth0
B&gt;* 192.168.2.0/30 [200/0] via 66.18.86.82 (recursive via 165.165.128.1), 00:03:58
B&gt;* 192.168.20.0/30 [200/0] via 10.10.255.44 (recursive via 165.165.128.1), 00:03:58
B&gt;* 192.168.25.0/24 [200/20] via 10.10.255.109 (recursive via 165.165.128.1), 00:03:58
B&gt;* 192.168.50.0/24 [200/20] via 10.10.255.251 (recursive via 165.165.128.1), 00:03:58
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">

now i am guessing that to get it down any other link we will need to simply route the BGP server down that link in the kernel routing table and all trafic will go down that link when zebra inserts its routes it will set the device to go down ...

this is much easier than i thought ... ....
 
Currently I'm using straight IP route with multiple tables... no zebra.

Decision is based on fw packet marking on my traffic shaper ... not quite as elegant as yours but it sort of works ;-) ...
 
well here is what i have so far ...

1)a proposed route server that will be running zebra and hooking into live BGP on a cisco ...
2)clients will create a GRE tunnel to the server to get arround dyn IP's in the zebra config (setting up the GRE tunnel is currently a nightmare as GRE does not like dyn IP's)
3)clients using zebra will connect to this server and obtain routes that get placed into a iproute table (currently table 75) as seen above

now with the tunnel involved iptables will have to be called upon to mark traffic going out the tunnel as this will be the path for these routes (see 2/3 above) and a further table with higher priority that matches these packets must forward them down the interface of choice ...

it is getting messy ... i have a script that will detect changes in the tunnel IP and restart it
 
Uh ... pm me as soon as your script has Clippy(TM) implemented.

TIA [;)]

-Information anarchist-
www.sentechhatesfreespeech.org.za
I support:
www.telkom.fokkensuig.co.za
www.poopband.co.za
www.hellkom.co.za
Read about MaD of hellkom being sued for R5million by Telkom:
http://www.myadsl.co.za/forum/topic.asp?TOPIC_ID=4316
 
Hmmm this is sounding like trickiness of the highest order, time to rtfm some more, I'd be keen to implement it on FreeBSD
 
well i am making progress on the GRE side of things and can now build gre tunnels between two points with a small (/30) private subnet to keep things uncomplicated

this will be able to be done on a freebsd box as all you need is bgp software GRE tunnel and a way of rerouting traffic down a specified link im pretty sure free bsd has all this ...

we are still ontrac to get a route server it will be hosted on ADSL so i might have to charge a bit for this service ..

im starting to think GRE is a good way to help set up inter mesh networking so have JHB/CPT WLANS inter connected ...but that is a project for another day ...
 
All u need to know about BGP. Well alot u need to know http://rodent.za.net/BGPInformation

There is no peace without war!!!
 
It's just an order of magnitude trickier than what I do at work, not impossible, just requiring a lot of reading :). Once one has the list it should be possible to generate a perl script to add routes. Hmmmm I may have a use for those used accounts at work then :P.
 
Top
Sign up to the MyBroadband newsletter
X