Re: [FUG-BR] Opcao keep-state do PF

2008-10-02 Por tôpico Matheus Cucoloto
Lembrando que ALTQ e PF só fazem limitação na SAIDA(output) da
interface, ele não controla ENTRADA(input).

Para isso a gente faz um jogo de regras.

(mais ou menos isso, algumas).

#INTERFACE INTERNA
altq on em0 hfsc bandwidth 102400Kb queue{  qraizem0 }
  queue qraizem0 bandwidth 72749Kb hfsc( linkshare 72749Kb  )  {  grp97em0 }
  qeue grp97em0 bandwidth 4Kb hfsc( upperlimit 256Kb , realtime 4Kb , red )

#INTERFACE EXTERNA
altq on bge0 hfsc bandwidth 102400Kb queue{  qraizbge0 }
  queue qraizbge0 bandwidth 4098Kb hfsc( linkshare 4098Kb  )  { qlojasout2  }
 queue qlojasout2 bandwidth 1022Kb hfsc( upperlimit 1024Kb ,
linkshare 1022Kb  )  { grp97bge0 } )
   qeue grp97bge0 bandwidth 4Kb hfsc( upperlimit 256Kb , realtime
4Kb , red )

#TUDO QUE SAIR DA INTERFACE INTERNA COM DESTINO O CLIENTE CONTABILIZAR
NA QUEUE DA INTERFACE INTERNA COMO DOWNLOAD
pass out quick on em0 from any to 192.168.11.228 queue grp97em0 no state

#TUDO QUE ENTRAR NA INTERFACE INTERNA COM ORIGEM O CLIENTE
CONTABILIZAR NA QUEUE DA INTERFACE EXTERNA COMO UPLOAD
pass in quick on em0 from 192.168.11.228 to any queue grp97bge0 no state

Abraços



-- 
Matheus Cucoloto
System Admin.
Net Admin.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


[FUG-BR] Opcao keep-state do PF

2008-10-01 Por tôpico Fabiano Carlos Heringer
Pessoal, alguem poderia me explicar para que serve realmente a opcao
keep-state no PF?

pelo que entendi eh o seguinte: quando um pacote casa com um regra que
tem uma opcao keep-state ele cria um estado desse pacote, sendo assim,
se o pacote retornar ele vai entrar por essa mesma regra, é isso?

Seria o mesmo que colocar as seguintes regras:

pass bla bla bla from x.x.x.x to any
pass bla bla bla from any to x.x.x.x

so que com o keep-state somente uma regra seria suficiente, pois o
retorno do pacote seria pela mesma, eh isso mesmo ou to viajando na
maionese?

O que acontece,

tenho dois servidores aqui, os dois sao identicos no tipo de conexao
(fazem NAT, tem uma fila em CBQ), acontece que em um deles consigo fazer
tanto o controle do download, quanto do upload (interfaces interna e
externa) e no outro servidor nao consigo fazer o upload, e a unica coisa
que vi diferente nos dois sao o keep-state flags S/SA ..

ai voce me diria, tira o keep-state pra testar...esse eh o problema, nao
coloquei nenhuma dessas opcoes, o que percebi que a partir de um release
do FreeBSD ele ja vem por padrao essa opcao nas regras do PF...

e agora? sera que eh isso mesmo que esta dando o problema?

Obrigado

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Opcao keep-state do PF

2008-10-01 Por tôpico João Paulo Just
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Fabiano Carlos Heringer wrote:
| Pessoal, alguem poderia me explicar para que serve realmente a opcao
| keep-state no PF?
|
| pelo que entendi eh o seguinte: quando um pacote casa com um regra que
| tem uma opcao keep-state ele cria um estado desse pacote, sendo assim,
| se o pacote retornar ele vai entrar por essa mesma regra, é isso?
|
| Seria o mesmo que colocar as seguintes regras:
|
| pass bla bla bla from x.x.x.x to any
| pass bla bla bla from any to x.x.x.x
|
| so que com o keep-state somente uma regra seria suficiente, pois o
| retorno do pacote seria pela mesma, eh isso mesmo ou to viajando na
| maionese?

Pelo que entendo, é isso mesmo, mas o pessoal poderia complementar mais :)

| O que acontece,
|
| tenho dois servidores aqui, os dois sao identicos no tipo de conexao
| (fazem NAT, tem uma fila em CBQ), acontece que em um deles consigo fazer
| tanto o controle do download, quanto do upload (interfaces interna e
| externa) e no outro servidor nao consigo fazer o upload, e a unica coisa
| que vi diferente nos dois sao o keep-state flags S/SA ..
|
| ai voce me diria, tira o keep-state pra testar...esse eh o problema, nao
| coloquei nenhuma dessas opcoes, o que percebi que a partir de um release
| do FreeBSD ele ja vem por padrao essa opcao nas regras do PF...
|
| e agora? sera que eh isso mesmo que esta dando o problema?

Se já vem como padrão, não tem como remover?

- --
João Paulo Just
Diretor Executivo - Justsoft Informática Ltda.
http://www.justsoft.com.br/
- --
Feira de Santana, BA, Brasil.
+55 75 8104 8473
Blog: http://just.rg3.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFI40SOXL+vuN2d7ZwRAkOVAJ98yNnsm4cepkr6IITq9akvAzHkZgCfcaS6
WWmVSc7nEAwkDDV6gH42r9g=
=qvf1
-END PGP SIGNATURE-
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Opcao keep-state do PF

2008-10-01 Por tôpico Matheus Cucoloto
No FreeBSD 7.0 foi portado o novo PF e no novo PF ele automaticamente
coloca o keep-state

Para tirar essa flag em cada regra adicione  no state

Ex:

pass out quick on em0 inet from any to 192.168.10.2 no state queue grp109fxp0
pass in quick on em0 inet from 192.168.10.2 to any no state queue grp109fxp2

Abraços.


On Wed, Oct 1, 2008 at 8:13 AM, Fabiano Carlos Heringer
[EMAIL PROTECTED] wrote:
 Pessoal, alguem poderia me explicar para que serve realmente a opcao
 keep-state no PF?

 pelo que entendi eh o seguinte: quando um pacote casa com um regra que
 tem uma opcao keep-state ele cria um estado desse pacote, sendo assim,
 se o pacote retornar ele vai entrar por essa mesma regra, é isso?

 Seria o mesmo que colocar as seguintes regras:

 pass bla bla bla from x.x.x.x to any
 pass bla bla bla from any to x.x.x.x

 so que com o keep-state somente uma regra seria suficiente, pois o
 retorno do pacote seria pela mesma, eh isso mesmo ou to viajando na
 maionese?

 O que acontece,

 tenho dois servidores aqui, os dois sao identicos no tipo de conexao
 (fazem NAT, tem uma fila em CBQ), acontece que em um deles consigo fazer
 tanto o controle do download, quanto do upload (interfaces interna e
 externa) e no outro servidor nao consigo fazer o upload, e a unica coisa
 que vi diferente nos dois sao o keep-state flags S/SA ..

 ai voce me diria, tira o keep-state pra testar...esse eh o problema, nao
 coloquei nenhuma dessas opcoes, o que percebi que a partir de um release
 do FreeBSD ele ja vem por padrao essa opcao nas regras do PF...

 e agora? sera que eh isso mesmo que esta dando o problema?

 Obrigado

 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd




-- 
Matheus Cucoloto
System Admin.
Net Admin.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Opcao keep-state do PF

2008-10-01 Por tôpico Fabiano Carlos Heringer
opa, beleza...

tirei o keep state, mas estranhamente nao se comporta como no outro 
servidor...
quando coloco o keep state no servidor em que esta funcionando, ele se 
comporta como o outro que esta com problema, provando ser o keep state

mas quando coloco o no state no que nao esta funcionando, continua com o 
mesmo problema...

vou mandar as regras dos dois servidores para se ter uma ideia:

SERVIDOR 1 (esta funcionando da maneira que eu quero)

set optimization normal
set loginterface xl0
set loginterface nve0
set skip on lo0

scrub in all
scrub out all

nat on $ext_if from x.x.x.x/24 to any - y.y.y.y

altq on { $int_if } cbq bandwidth 4Mb queue { std_in, rede_in }

queue std_in bandwidth 1Mb priority 1 \
cbq(default)
   queue rede_in bandwidth 256Kb priority 1 \
  cbq(red ecn)


altq on { $ext_if } cbq bandwidth 4Mb queue { std_out, rede_out }
queue std_out bandwidth 1Mb priority 1 \
cbq(default)
   queue rede_out bandwidth 56Kb priority 1 \
  cbq(red ecn)


pass quick proto tcp from x.x.x.x to any queue rede_out
pass quick proto tcp from any to x.x.x.x queue rede_in

OBS: Neste Servidor estou com a versao 6.2 (portanto o keep state nao 
vem por default)

Olhas as estatisticas no PFTOP com essas regras:

pfTop: Up Queue 1-6/6, View: queue, Cache: 
1   
 
12:21:49

QUEUE BW SCH  PRIO PKTSBYTES   
DROP_P   DROP_B QLEN BORROW SUSPEN P/S B/S
root_nve0  4000K cbq 0   589940  380403K
000  0  0
 std_in1000K cbq 589936  380403K   
57374450  0   5265
 rede_in256K cbq  4  262
000  0  0
root_xl0   4000K cbq 0   559760  110156K
000  0  0
 std_out   1000K cbq 555246  108803K   
22115880  0   4694
 rede_out  56000 cbq   4514  1385063
000  0179

notem que rede_in e rede_out estao recebendo o trafego (aqui o controle 
esta funcionando perfeitamente, tanto down quanto Up)

 SERVIDOR 2 (ONDE NAO ESTA FUNCIONANDO)

set optimization normal
set loginterface em0
set loginterface sk0

scrub in all
scrub out all

altq on $int_if bandwidth 2Gb cbq queue { def_in_em0, q000Iem0 }
   queue def_in_em0 bandwidth 1Mb priority 0 cbq(default borrow)
   queue q000Iem0 bandwidth 128Kb

altq on $ext_if bandwidth 2Gb cbq queue { def_in_sk0, q000Osk0 }
   queue def_in_sk0 bandwidth 1Mb priority 0 cbq(default borrow)
   queue q000Osk0 bandwidth 128Kb


pass quick log from x.x.x.x to any no state queue q007Iem0
pass quick log from any to x.x.x.x no state queue q007Osk0

Neste estou usando um FreeBSd 7.0

Notem como ficam as filas (utilizei o pftop):

QUEUE BW SCH  PRIO PKTSBYTES   
DROP_P   DROP_B QLEN BORROW SUSPEN P/S B/S
root_em0   2000M cbq 050256 69906080
000  0  0  89  125753
 def_in_em01000K cbq 043704 60277928
000  10865  0  88  125665
 q000Iem0   128K cbq   6384  9594503
3 45420  0   3157   0   0
root_sk0   2000M cbq 036002  2900567
000  0  0  695755
 def_out_sk0   1000K cbq 036002  2900567
000  0  0  695755
 q000Osk0   128K cbq  00
000  0  0   0   0

notem que nao há trafego nenhum na fila q000Osk0


Desculpem pelo tamanho do email, so nao estou entendendo porque isso 
esta acontecendo...

Abracos


Matheus Cucoloto escreveu:
 No FreeBSD 7.0 foi portado o novo PF e no novo PF ele automaticamente
 coloca o keep-state

 Para tirar essa flag em cada regra adicione  no state

 Ex:

 pass out quick on em0 inet from any to 192.168.10.2 no state queue grp109fxp0
 pass in quick on em0 inet from 192.168.10.2 to any no state queue grp109fxp2

 Abraços.


 On Wed, Oct 1, 2008 at 8:13 AM, Fabiano Carlos Heringer
 [EMAIL PROTECTED] wrote:
   
 Pessoal, alguem poderia me explicar para que serve realmente a opcao
 keep-state no PF?

 pelo que entendi eh o seguinte: quando um pacote casa com um regra que
 tem uma opcao keep-state ele cria um estado desse pacote, sendo assim,
 se o pacote retornar ele vai entrar por essa mesma regra, é isso?

 Seria o mesmo que colocar as seguintes regras:

 pass bla bla bla from x.x.x.x to any
 pass bla bla bla from any to x.x.x.x

 so que com o keep-state somente uma regra seria suficiente, pois o
 retorno do pacote seria pela mesma, eh isso mesmo ou to 

Re: [FUG-BR] Opcao keep-state do PF

2008-10-01 Por tôpico Ricardo Barroso Perin
 Seria o mesmo que colocar as seguintes regras:

 
  pass bla bla bla from x.x.x.x to any
  pass bla bla bla from any to x.x.x.x



Seria sim, mas a vantagem do keep-state é que vc não precisa deixar tudo
aberto, como no exemplo, geralmente vc fecha a entrada, e libera a saida. Se
foi vc que solicitou a conexão, independentemente de pra onde, ele guarda
isso em uma tabela de estado e deixa os demais pacotes entrarem, sacou? Pra
quem manja de (ptables (não é o meu caso) e fazendo um paralelo ele , é a
mesma coisa de --state STABILISHED
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Opcao keep-state do PF

2008-10-01 Por tôpico Fabiano Carlos Heringer
sim ricardo, entendi..o problema que com o keep state nao sei como 
controlar o trafego de entraida e saida em queues diferentes

creio que deve havar um jeito, mas nao encontrei como
Ricardo Barroso Perin escreveu:
 Seria o mesmo que colocar as seguintes regras:
 

   
 pass bla bla bla from x.x.x.x to any
 pass bla bla bla from any to x.x.x.x
   


 Seria sim, mas a vantagem do keep-state é que vc não precisa deixar tudo
 aberto, como no exemplo, geralmente vc fecha a entrada, e libera a saida. Se
 foi vc que solicitou a conexão, independentemente de pra onde, ele guarda
 isso em uma tabela de estado e deixa os demais pacotes entrarem, sacou? Pra
 quem manja de (ptables (não é o meu caso) e fazendo um paralelo ele , é a
 mesma coisa de --state STABILISHED
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

 __ Information from ESET NOD32 Antivirus, version of virus signature 
 database 3485 (20081001) __

 The message was checked by ESET NOD32 Antivirus.

 http://www.eset.com



   

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd