Toon posts:

Bandwidth throttling over een geforwarde poort

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

ik heb een netwerk van twee computers, 1 win2k en 1 linuxbox die op internet is aangesloten. Beiden machines zijn verbonden met een kabel. Ik heb op de linuxbox port 412 geforward naar de win2kbox met iptables. Op de windowsbox draait een programma dat data upload over deze poort.

Nu probeer ik upload over deze poort te beperken met 'tc' en 'iptables' maar het lijkt alsof dat gewoon genegeerd wordt. Met 'iptraf' kan ik wel zien dat er data over poort 412 gaat.

Ik gebruik dit script:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#! /bin/sh

# Change this to your link bandwidth
# (for cable modem, DSL links, etc. put the maximal bandwidth you can
# get, not the speed of a local Ethernet link)
REAL_BW='100Mbit'

# Change this to the bandwidth you want to allocate to FTP.
# We're talking about megabits, not megabytes, so 80Kbit is
# 10 Kilobytes/s
FTP_BW='80Kbit'

# Change this to your physical network device (or 'ppp0')
NIC='eth0'

# clean existing down- and uplink qdiscs, hide errors
tc qdisc del dev $DEV root    2> /dev/null > /dev/null
tc qdisc del dev $DEV ingress 2> /dev/null > /dev/null

tc qdisc add dev "$NIC" root handle 1: cbq \
bandwidth "$REAL_BW" avpkt 1000

tc class add dev "$NIC" parent 1: classid 1:1 cbq bandwidth "$REAL_BW" \
rate "$REAL_BW" maxburst 5 avpkt 1000

tc class add dev "$NIC" parent 1:1 classid 1:10 cbq \
bandwidth "$REAL_BW" rate "$FTP_BW" maxburst 5 avpkt 1000 bounded

tc qdisc add dev "$NIC" parent 1:10 sfq quantum 1514b

tc filter add dev "$NIC" parent 1: protocol ip handle 1 fw flowid 1:10

iptables -t mangle -A OUTPUT -p tcp --sport 412 -j MARK --set-mark 1


Het vreemde is dat als ik dit probeer op een andere poort (zoals die van de ftp-server), dat het dan wel werkt. Die ftpserver draait dan wel op de linuxbox zelf. Misschien dat het daar iets mee te maken heeft?

[ Voor 10% gewijzigd door Verwijderd op 01-01-2003 12:42 ]


  • mardan
  • Registratie: September 2000
  • Laatst online: 05-03 19:39
Je zou is bij de laatste regel ipv --sport --dport kunnen gebruiken.
Aangezien port 412 niet echt de source port is van het datapakketje maar het kan elke willekeurige poort zijn en je destination staat zeker vast, nl. port 412.

  • twiekert
  • Registratie: Februari 2001
  • Laatst online: 09-05 12:41
je doet -A OUTPUT. input and output zijn voor lokaal (de doos zelf) verkeer

je zal de chain FORWARD moeten gebruiken.