[FUG-BR] Packet loss com Layer2

Renata Dias renatchinha em gmail.com
Quarta Janeiro 6 17:01:49 BRST 2010


Alessandro,

Estou executando o ipfw disable one_pass, sim.

A minha regra:
01650 allow ip from any to any layer2 not mac-type 0x0800

É a mesma que a sua:
ipfw add 10 allow layer2 not mac-type ip

Essa regra para liberar tudo que não for do tipo IP.

Quanto ao controle de MAC e IP eu não faço, utilizo o layer2 apenas para
bloquear alguns MAC indesejaveis e em seguida as regras de PIPE para
controle de banda dos clientes.

Como não faço o controle de MAC eu não posso seguir o link que o Márcio me
enviou, pois esse coloca um deny layer2 antes de adicionar as regras de
PIPE. Se eu fizer isso irei bloquear todo o trafego dos clientes, pois o MAC
deles não está pré definido.

Nas regras de PIPE eu utilizo "not layer2" justamente para que o controle de
banda seja feito somente no protocolo IP e dessa forma a banda de navegação
não fique reduzida à metade do que for definido no PIPE.


Alguma idéia do porque das perdas de pacote?

Obrigada.



2010/1/6 Alessandro de Souza Rocha <etherlinkii em gmail.com>

> renata vc desativou a passagem unica outra coisa eu uso controle de
> mac e ip desta forma.
>
> ipfw disable one_pass
> #liberar a tabela arp
> ipfw add 10 allow layer2 not mac-type ip
>
>
> ##############################################
> #Controle de mac e ip de cada Cliente                              #
> ##############################################
> # Cliente: Cliente 1
> ipfw add 1 allow layer2 src-ip 192.168.0.1 mac any 00:11:09:d9:3f:6b in via
> rl0
>
> # Cliente: Cliente 2
> ipfw add 104 allow layer2 src-ip 10.1.1.2 MAC any 00:0b:d0:fe:00:d1 in via
> rl0
>
> # Cliente: Cliente 3
> ipfw add 5 allow layer2 src-ip  100.1.1.2 MAC any 00:0A:52:00:88:2D in via
> rl0
>
> #fechando tudo que não  tiver cadastro na tabela acima
> ipfw add 65000 deny all from any to any layer2 in via rl0
>
> 2010/1/6, Renata Dias <renatchinha em gmail.com>:
>  > Boa tarde!
> >
> >
> > Tenho um FreeBSD 7.2 STABLE rodando como router da minha rede e o trafego
> da
> > rede é de 34Mbps.
> >
> > Servidor HP:
> >
> > Intel(R) Xeon(R) CPU           E5520  @ 2.27GHz
> > usable memory = 6424711168 (6127 MB)
> > FreeBSD/SMP: Multiprocessor System Detected: 8 CPUs
> >  cpu0 (BSP): APIC ID:  0
> >  cpu1 (AP/HT): APIC ID:  1
> >  cpu2 (AP): APIC ID:  2
> >  cpu3 (AP/HT): APIC ID:  3
> >  cpu4 (AP): APIC ID:  4
> >  cpu5 (AP/HT): APIC ID:  5
> >  cpu6 (AP): APIC ID:  6
> >  cpu7 (AP/HT): APIC ID:  7
> > Kernel AMD64
> >
> > Opções adicionadas no kernel DEFAULT:
> >
> > options         HZ=2000
> > maxusers        6121
> >
> > options         ACCEPT_FILTER_DATA
> > options         DEVICE_POLLING
> > options         ACCEPT_FILTER_HTTP
> > options         IPSTEALTH
> > options         IPFIREWALL
> > options         IPFIREWALL_FORWARD
> > options         IPFIREWALL_VERBOSE
> > options         IPFIREWALL_VERBOSE_LIMIT=100
> > options         IPFIREWALL_DEFAULT_TO_ACCEPT
> > options         IPDIVERT
> > options         DUMMYNET
> >
> >
> > Quando eu habilito a sysctl net.link.ether.ipfw=1 toda minha rede passa a
> > apresentar tempo de latencia acima de 80ms (quando rede local deveria ser
> 0
> > ou 1ms) e perdas de pacote acima de 10%. É só eu voltar a sysctl
> > net.link.ether.ipfw para 0 (zero) e a rede volta a responder com 0ms e 0%
> de
> > perdas.
> >
> > No meu Firewall tenho algumas regras de bloqueio de MAC e em seguida
> regras
> > de controle de banda:
> >
> > 01608 deny log logamount 100 ip from any to any in via bge0 MAC any
> > 00:12:0e:a1:38:47 layer2
> > 01609 deny log logamount 100 ip from any to any in via bge0 MAC any
> > 00:e0:4c:fa:87:48 layer2
> > 01650 allow ip from any to any layer2 not mac-type 0x0800
> >
> > # Cliente 1
> > 20040 pipe 20040 ip from any to 200.200.200.243 out via bge0 not layer2
> > 20041 pipe 20041 ip from 200.200.200.243 to any in via bge0 not layer2
> > 20045 allow ip from any to 200.200.200.243
> > 20046 allow ip from 200.200.200.243 to any
> > # Cliente 2
> > 20060 pipe 20060 ip from any to 200.200.200.220 out via bge0 not layer2
> > 20061 pipe 20061 ip from 200.200.200.220 to any in via bge0 not layer2
> > 20065 allow ip from any to 200.200.200.220
> > 20066 allow ip from 200.200.200.220 to any
> >
> > Obrigada!
> >
> > --
> > Renata Dias
> > -------------------------
> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
>
>
> --
> Alessandro de Souza Rocha
> Administrador de Redes e Sistemas
> FreeBSD-BR User #117
>             Long live FreeBSD
>
>                     Powered by ....
>
>                                          (__)
>                                       \\\'',)
>                                         \/  \ ^
>                                         .\._/_)
>
>                                     www.FreeBSD.org<http://www.freebsd.org/>
>  -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>



-- 
Renata Dias


Mais detalhes sobre a lista de discussão freebsd