/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
[FreeBSD] Begrænse upload med dummynet
Fra : Lars Stokholm


Dato : 16-08-06 00:31

Jeg vil gerne begrænse upload på min FreeBSD server med dummynet,
til 20kB/s. Handler det bare om at køre disse to kommandoer?

# ipfw pipe 1 config bw 20KByte/s
# ipfw add 1 pipe 1 ip from 10.0.0.10 to any

Hvis ikke, så er det altså for langhåret for mig, og så må jeg
ha' noget hjælp.

 
 
Lars Stokholm (16-08-2006)
Kommentar
Fra : Lars Stokholm


Dato : 16-08-06 10:14

On 2006-08-15, Lars Stokholm <this@is.invalid> wrote:
> Jeg vil gerne begrænse upload på min FreeBSD server med dummynet,
> til 20kB/s. Handler det bare om at køre disse to kommandoer?
>
> # ipfw pipe 1 config bw 20KByte/s
> # ipfw add 1 pipe 1 ip from 10.0.0.10 to any
>
> Hvis ikke, så er det altså for langhåret for mig, og så må jeg
> ha' noget hjælp.

Efter lidt startvanskeligheder (jeg ved ikke hvad der skete),
så tror jeg nu det virker. Hvordan ser det her ud(?):

# ipfw list
00001 pipe 1 ip from 10.0.0.10 to any
01000 allow ip from any to any
65535 deny ip from any to any

# ipfw pipe list
00001: 40.000 Kbit/s 0 ms 50 sl. 1 queues (1 buckets) droptail
mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
0 tcp 10.0.0.10/22 10.0.0.2/45528 19246 3096235 16 12736 73

Men jeg vil ikke have at trafikken i lokalnetværket skal pipes.
Hvordan undgår jeg det? Skal det så være noget i stil med(?):

00001 allow ip from 10.0.0.10 to 10.0.0/XX
00002 pipe 1 ip from 10.0.0.10 to any
01000 allow ip from any to any
65535 deny ip from any to any

....og hvad skal XX være? Det skal vel inkludere alle IPer fra
10.0.0.0 til 10.0.0.255.

Christian Laursen (16-08-2006)
Kommentar
Fra : Christian Laursen


Dato : 16-08-06 12:55

Lars Stokholm <this@is.invalid> writes:

> Efter lidt startvanskeligheder (jeg ved ikke hvad der skete),
> så tror jeg nu det virker. Hvordan ser det her ud(?):
>
> # ipfw list
> 00001 pipe 1 ip from 10.0.0.10 to any
> 01000 allow ip from any to any
> 65535 deny ip from any to any
>
> # ipfw pipe list
> 00001: 40.000 Kbit/s 0 ms 50 sl. 1 queues (1 buckets) droptail
> mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
> BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
> 0 tcp 10.0.0.10/22 10.0.0.2/45528 19246 3096235 16 12736 73

Det ser umiddelbart fint ud.

> Men jeg vil ikke have at trafikken i lokalnetværket skal pipes.
> Hvordan undgår jeg det? Skal det så være noget i stil med(?):
>
> 00001 allow ip from 10.0.0.10 to 10.0.0/XX
> 00002 pipe 1 ip from 10.0.0.10 to any
> 01000 allow ip from any to any
> 65535 deny ip from any to any
>
> ...og hvad skal XX være? Det skal vel inkludere alle IPer fra
> 10.0.0.0 til 10.0.0.255.

allow ip from 10.0.0.10 to 10.0.0.0/24

Er det i øvrigt på maskinen som skal begrænses, du har disse regler?

I givet fald kan du nok nøjes med en enkelt:
pipe 1 ip from me to not 10.0.0.0/24

--
Christian Laursen

Lars Stokholm (16-08-2006)
Kommentar
Fra : Lars Stokholm


Dato : 16-08-06 15:17

On 2006-08-16, Christian Laursen <xi@borderworlds.dk> wrote:
> Er det i øvrigt på maskinen som skal begrænses, du har disse regler?
>
> I givet fald kan du nok nøjes med en enkelt:
> pipe 1 ip from me to not 10.0.0.0/24

Det er det. Tak en masse. ;) Nu virker det som det skal.

Lars Stokholm (16-08-2006)
Kommentar
Fra : Lars Stokholm


Dato : 16-08-06 15:54

On 2006-08-16, Lars Stokholm <this@is.invalid> wrote:
> Det er det. Tak en masse. ;) Nu virker det som det skal.

Well, næsten.

# cat /etc/ipfw.rules
ipfw -q -f flush
ipfw -q pipe 1 config bw 15KByte/s
add="ipfw -q add"
$add 00001 pipe 1 ip from me to not 10.0.0.0/24
$add 01000 allow ip from any to any

Når jeg fra samme LAN går ind på webserveren der kører på maskinen,
ved brug af WAN IPen, så bliver det jo "from me to WAN_IP" og WAN_IP
er som bekendt ligeså godt som "not 10.0.0.0/24", så forbindelsen
pipes og det skal den ikke.

Derfor ville jeg bruge:

$add 00001 pipe 1 ip from me to ( not WAN_IP and not 10.0.0.0/24 )

Men den brokker sig naturligvis over paranteserne. Og escaper jeg
dem, ja så brokker den sig også:

$add 00001 pipe 1 ip from me to \( not WAN_IP and not 10.0.0.0/24 \)

Hvad skal der stå? Jeg kan ikke engang se hvordan jeg skulle kunne
dele den op i to linjer, men det er sikkert bare mig.

Christian Laursen (16-08-2006)
Kommentar
Fra : Christian Laursen


Dato : 16-08-06 18:21

Lars Stokholm <this@is.invalid> writes:

> Derfor ville jeg bruge:
>
> $add 00001 pipe 1 ip from me to ( not WAN_IP and not 10.0.0.0/24 )

Prøv med:

$add 00001 pipe 1 ip from me to not {WAN_IP, 10.0.0.0/24}

--
Christian Laursen

Lars Stokholm (16-08-2006)
Kommentar
Fra : Lars Stokholm


Dato : 16-08-06 18:54

On 2006-08-16, Christian Laursen <xi@borderworlds.dk> wrote:
>> Derfor ville jeg bruge:
>>
>> $add 00001 pipe 1 ip from me to ( not WAN_IP and not 10.0.0.0/24 )
>
> Prøv med:
>
> $add 00001 pipe 1 ip from me to not {WAN_IP, 10.0.0.0/24}

Så siger den:

ipfw: hostname ``'' unknown

Lars Stokholm (16-08-2006)
Kommentar
Fra : Lars Stokholm


Dato : 16-08-06 20:23

On 2006-08-16, Lars Stokholm <this@is.invalid> wrote:
>> $add 00001 pipe 1 ip from me to not {WAN_IP, 10.0.0.0/24}
>
> Så siger den:
>
> ipfw: hostname ``'' unknown

Sådan:

$add 00001 pipe 1 ip from me to not WAN_IP,10.0.0.0/24

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408928
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste