There are a Local Network and a ISP Network coming to MT:
Local Network: on ether2 - 10/100Mbit LAN 192.168.0.0/24
ISP Network: on ether1 - 10/100Mbit LAN with PPPoE service, no IP address on the interface required.
There are three "users" connecting to MT via local ether2, wich means three PCs, each with its own MAC address (no authentication other than MAC address should be used)
Help me set this up:
- step 1: Setup the MT as a PPPoE client for the ISP connection, with autoredial if
disconnected (forever redial until conn is established). With this, Setup the MT run a NAT
on ether2 for one user - User1, to use the internet through it. Also to run the UPnP
service. (The ISP gives dynamic IP address with each connect. Also forces reconnect each 24
hours.)
- step 2: Filter/drop (firewall) all packets from ISP Network. Only the PPPoE
service is used on the ISP network - ether1, all other packets must be dropped and none must
be sent out. Also on the PPPoE internet connection - run a firewall that would protect MT,
close open ports, etc. Also on the local net - ether2 - make MT invisible for all others -
drop all packets not coming from Users' MAC addresses. Turn off neighbour broadcast, etc.
- step 3: This is the hard part. Setup bandwidth allocation. Three users will be
using the internet. They are on the local network wich is connected on ether2. This should
work almost like "equal bandwidth allocation amongst users" from the manual... When there's
only one user making connections to the internet - he gets all the bandwidth since it's
free. Let's suppose this is User1. Then User3 makes connections to the internet. He should
be given at least 64kbps right away. If his connection is less than 64kbps, he should be
given no more than he requires. If he leaves some of his 64kbps free they should be
immediately be free for use by User1. If User1 leaves some bandwidth free it should be
immediately given to User3 if his connections require it. So far - exactly like the
mentioned chapter in the manual, only User3 gets not the half of all but as much as 64kbps
when both users are using the internet. OK, now for User2 - he will be sharing his
connection with User1. User1 and User2 will be in one group. Let's suppose User1 is using
all of his bandwidht and User3 is also using all of his. Now User2 makes connections to the
inetrnet. He should be given 32kbps of what User1 has and what User3 is currenlty using should
not be lowered bu User2, only User1's bandwidth should be shared with User2. If User1 and
User3 are currently not making any connections to the internet (e.g. there is some free
bandwidht) it should be all given to User2.
- step 4: Priority for Web, Web caching, priority for Skype, priority for
Counter-Strike. When connections to port 80/other ports for mentioned services are made they
should get 95% of users bandiwdth and packets should get higher priority and not wait as
much in queues as other packets. Also if it's possible, a HTTP caching proxy servcie setup on MT wich has no speed limit when getting objects from the cache but when the proxy starts getting objects from the internet to deliver to the requesting user, the bandwidth allocation of that conenction (proxy<->internet) should have the same rules described in step 3. If User3 makes the connection, the proxy should start getting him the objects with no more than what his speed settings are. (described in step 3)
Please help witht these for now, more steps coming soon...
Post edited - step 4 caching added.