Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. #1
    rowdy
    Visitante

    Padrão Migrando para controle de banda no FreeBSD

    Olá pessoal,

    Aqui na empresa, tinhamos "2 servidores" para controle de banda, na verdade uma das torres fazia o controle de banda de 3 AP´s, e o restante era feito aqui no provedor mesmo, querem centralizar isto, e eu quero migrar do HTB do Fedorento, para o FreeBSD, qual a melhor opção, seria ipfw+dummynet mesmo ?
    Por favor, se obtiverem textos/tutoriais, principalmente em pt-br, mas pode ser em en_US também, eu aceito.


    Obrigado!

  2. #2
    chipmaster
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    Eu uso ipfw+dummynet

  3. #3
    rowdy
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    Sim amigo Schneider, mas eu utilizo de um script para as regras de firewall e o NAT, entre outros. E um arquivo SOMENTE com os ips de clientes, na seguinte formação de linhas: ip|download|upload|Liberado/Bloqueado.

    Se alguém puder me ajudar, obrigado!

  4. #4
    etherlink
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    vc pode usa ipfw+wf2q+ e fazendo controle de mac e ip +ou- assim um exemplo
    # limpando as chains existentes
    /sbin/ipfw -f flush

    #Bloqueando NetBios
    /sbin/ipfw add 100 deny log all from any 135-139,445 to any
    /sbin/ipfw add 101 deny log all from any to any 135-139,445

    #Limitando a velocidade de down e up do rede 192.168.10 toda. (todos os ips vao ter upload de 64 e download de 128.

    /sbin/ipfw pipe 1 mask src-ip 0x000000ff bw 64Kbps queue 5.4
    /sbin/ipfw pipe 2 mask dst-ip 0x000000ff bw 128Kbps queue 10.6

    # controle de banda por cliente
    ipfw -q pipe 30009 config bw 512Kbit/s queue 8Kbytes # IN
    ipfw -q pipe 30010 config bw 512Kbit/s queue 8Kbytes # OUT
    ipfw -q add pipe 30009 all from IP_CLIENTE to any in via IF_Y
    ipfw -q add pipe 30010 all from any to IP_CLIENTE out via IF_Y

    #Definindo os pipes para a rede.
    add 100 pipe 1 all from 192.168.10.0/24 to any in layer2
    add 101 pipe 2 all from any to 192.168.10.0/24 out layer2

    #Definindo quem pode trafegar ( IP X MAC )
    ## 192.168.10.5
    add 200 allow all from any to 192.168.10.5 MAC 00:01:02:03:04:05 any layer2
    add 201 allow all from 192.168.10.5 to any MAC any 00:01:02:03:04:05 layer2

    ## 192.168.10.8
    add 202 allow all from any to 192.168.10.8 MAC 00:05:04:03:02:01 any layer2
    add 203 allow all from 192.168.10.8 to any MAC any 00:05:04:03:02:01 layer2

    #fechando tudo
    add 65000 deny all from any to any layer2

  5. #5
    rowdy
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    Obrigado amigos, mas eu utilizei-me de uma solução embarcada, obtida dentro de uma compact flash, e com ela, faço meu controle de banda e firewall. Se alguém quiser saber, pode me enviar uma msg.

  6. #6

    Padrão Re: Migrando para controle de banda no FreeBSD

    Me diz uma coisa essa regra ta certa ??? Estou tendo problemas ao subir as regras, e um erro relacionado a MASK.

    /sbin/ipfw pipe 1 mask src-ip 0x000000ff bw 64Kbps queue 5.4
    /sbin/ipfw pipe 2 mask dst-ip 0x000000ff bw 128Kbps queue 10.6

    Abraçao

  7. #7
    etherlink
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    cara para vc saber qual mascara vc esta usando simplesmente roda
    %ifconfig
    sis0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=8<VLAN_MTU>
    inet 192.168.0.254 netmask 0xffffff00 broadcast 192.168.0.255
    inet6 fe80::206:4fff:fe0b:158e%sis0 prefixlen 64 scopeid 0x1
    ether 00:06:4f:0b:15:8e
    media: Ethernet autoselect (100baseTX <full-duplex>)
    status: active
    ai vc vai saber qual mascara a minha 0xffffff00 vai ficar assim no controle de banda
    /sbin/ipfw pipe 1 mask src-ip 0xffffff00 bw 64Kbps queue 5.4
    /sbin/ipfw pipe 2 mask dst-ip 0xffffff00 bw 128Kbps queue 10.6
    entendeu agora...

  8. #8

    Padrão Re: Migrando para controle de banda no FreeBSD

    Sim agora ficou mais claro, na verdade ja tinha notado isso mas achei melhor confirmar.

    Obrigado


    Abraçao

  9. #9

    Padrão Re: Migrando para controle de banda no FreeBSD

    A ideia nao está certa. Na verdade quando voce deu o ifconfig e apareceu o 0xffffff00, essa é a mascara em hexadecimal.
    O "0x" significa o inicio de um numero hexadecimal.

    Exemplo:

    Em C, se voce colocar o numero 13, o compilador ira entender que é um numero decimal 13.
    Mas se colocar 013, irá entender que seria um numero octal.
    Mas se colocar "0x", esse 0x eh o inicio de um numero hexadecimal.

    Entao, simplificando tudo, os f ali de começo, está sendo setado o bit como 1, fechando as casas.
    Os ultimos 00, seriam como a rede aberta em .0

    Quando tiver um tempinho, explico melhor pra entenderem....

  10. #10

    Padrão Re: Migrando para controle de banda no FreeBSD

    Li muito o man do ipfw e descobri que o erro ta no seguinte:
    /sbin/ipfw pipe 1 config mask src-ip 0xffffff00 bw 64Kbps queue 5.4
    /sbin/ipfw pipe 2 config mask dst-ip 0xffffff00 bw 128Kbps queue 10.6

    So que o bloqueio por mac/ip nao ta funcionando e o controle de banda tambem nao ta muito certo, vou postar meu firewall.sh:

    #!/bin/sh
    #
    #desativando passagem unica
    /sbin/ipfw disable one_pass

    # limpando as chains existentes
    /sbin/ipfw -f flush

    # Ativando repasse dos pacotes
    /sbin/ipfw add 00010 divert natd all from any to any via vr0
    /sbin/natd -l -f /etc/natd.conf

    #Bloqueando NetBios
    /sbin/ipfw add 100 deny log all from any 135-139,445 to any
    /sbin/ipfw add 101 deny log all from any to any 135-139,445

    #Limitando a velocidade da rede 192.168.0.0/24
    /sbin/ipfw pipe 1 config mask src-ip 0xffffff00 bw 64Kbps queue 5.4
    /sbin/ipfw pipe 2 config mask dst-ip 0xffffff00 bw 128Kbps queue 10.6

    #Definindo os pipes para a rede
    /sbin/ipfw add 100 pipe 1 all from 192.168.0.0/24 to any in layer2
    /sbin/ipfw add 101 pipe 2 all from any to 192.168.0.0/24 out layer2

    #Definindo quem pode trafegar
    ## 192.168.0.2 gatoseco
    /sbin/ipfw add 200 allow all from any to 192.168.0.2 MAC 00:01:02:03:04:05 any layer2
    /sbin/ipfw add 201 allow all from 192.168.0.2 to any MAC any 00:01:02:03:04:05 layer2

    #fechando tudo
    /sbin/ipfw add 65000 deny all from any to any layer2

    Tambem adicionei no sysctl.conf a linha sysctl net.link.ether.ipfw=1, Se algum dos nossos feras em freebsd puder dar uma mao agradeço, estou usando o freebsd 5.4 !!!

    Abraçao

  11. #11
    etherlink
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    vc nao adicionou no final da regra a interface da sua rede local ficando assim
    #Definindo quem pode trafegar
    ## 192.168.0.2 gatoseco
    /sbin/ipfw add 200 allow all from any to 192.168.0.2 MAC 00:01:02:03:04:05 any layer2
    /sbin/ipfw add 201 allow all from 192.168.0.2 to any MAC any 00:01:02:03:04:05 layer2

    #fechando tudo
    /sbin/ipfw add 65000 deny all from any to any layer2 in via rl0
    desta forma a galera de sua rede interna so vai ter acesso depois que vc liberar so isso
    testa ai de depois nos avise.


  12. #12

    Padrão Re: Migrando para controle de banda no FreeBSD

    blz vou testar !!!

    Obrigado

    Abraçao

  13. #13

    Padrão Re: Migrando para controle de banda no FreeBSD

    To com um errinho aqui que na verdade nao ta fazendo com que a internet nao funcione, apenas ela aparece quando levanto as regras,mas gostaria de saber se o pessoal tem ideia do que seja, segue abaixo a mensagem:

    NATD:unable to bind divert socket.:address already in use

    Obrigado a todos

    Abraçao

  14. #14
    etherlink
    Visitante

    Padrão Re: Migrando para controle de banda no FreeBSD

    vc compilou o kernel com a opcao
    options IPDIVERT para habilitar o natd.
    qualquer coisa usa o pf para fazer natd.

  15. #15

    Padrão Re: Migrando para controle de banda no FreeBSD

    Provavelmente voce está tentando levantar o daemon com outro já rodando.
    Se quiser deixar 2 daemons rodando, nao esqueça de trocar a porta que o natd vai dar o bind.

    Exemplo:

    bash# /sbin/natd -p 8668 -s -m -n rl0
    bash# /sbin/natd -p 8669 -s -m -n rl1

    E outra coisinha, pra corrigir, o pf pode fazer "nat" e nao fazer "natd".
    A conotaçao seria Network Address Translation.

    Saudações

  16. #16

    Padrão Re: Migrando para controle de banda no FreeBSD

    Olá amigo Gatoseco....
    Eu estou com esse problema tambem..

    NATD:unable to bind divert socket.:address already in use

    vc conseguiu resolver de qual forma? poderia citar os passos? Desde ja agradeço.

  17. #17

    Padrão Re: Migrando para controle de banda no FreeBSD

    Ola, gostei muito do sistema do bandlimit, aqui em meu provedor uso o ipfw para controle dos clientes, mas crei que seria interessante de se gerar um arquivo a partir do php contendo os dados como ip:up:down do que um arquivo com todo o script, agora preciso saber se existe algum script no formato do bandlimit ou ateh mesmo o proprio bandlimit para IPFW, se ainda nao tiver estou disposto a ajudar no desenvolvimento de um, pois aqui o tecnico que desenvolveu os script do meu servidor (nao deixou os fontes claro) mas deixou uma configuracao legal, onde tenhos os seguintes arquivos:
    - clientes.ip (onde tenho o cadastro dos clientes da seguinte forma (mac|ip|down|up|se o ip eh valido ou nao|nome cliente)
    - clientes.adm (onde cadastro os ips com acesso a alguns serviços do meu servidor, como ssh, que eh o caso dos ips do escritorio)
    - sites.sp (onde tenho os ips de sites onde nao passarao pelo proxy, como caixa, bradesco)

    ficou muito bom, mas gostaria de desenvolver algo semelhante e aprimorar para uso com administracao web e futuro uso em mysql

    vlw e t+

  18. #18

    Padrão Re: Migrando para controle de banda no FreeBSD

    claro que usando o FreeBSD, pois quando comecei a usar até estranhava algumas diferencinhas dos comandos do linux, mas depois que acostuma, fica dificil de retornar, nao despresando o linux de forma alguma, pois me ajudou muito e creio que se precisar posso estar retornando a ele.


  19. #19

    Padrão Re: Migrando para controle de banda no FreeBSD

    NATD:unable to bind divert socket.:address already in use

    vc conseguiu resolver de qual forma? poderia citar os passos? Desde ja agradeço.




  20. #20

    Padrão Re: Migrando para controle de banda no FreeBSD

    este erro ocorre quando se tenta carregar o nat e ele jah esta eh uso digite

    ps ax | grep natd

    que vai aparecer se o natd esta em uso se nao aparecer linha nenhuma ele esta desativado