Obrigado pela defesa 1929, Os cara, vem aqui dizem que fazem mas não contam nada ! Aí não vale ! hehe
Se propõem uma solução proponha completa ! certo ! Grande Abraço !
Versão Imprimível
Os companheiros que postaram os procedimentos, foram ajustando e tal. O balance em linhas gerais está fazendo. Só estou em dúvidas se este delay que acontece, se esta mensagem de pag não ser encontrada, etc poderia ser do balance.
Alguém mais está encontrando este problema. Relatem aqui para que se for realmente assim, uma solução seja encontrada.
Ou balance por rotas dinâmicas pode mesmo acontecer isso.
Não quero tirar o mérito dos companheiros que postaram as regras. Pelo contrário, um dos que contribuiram para facilitar o emprego das regras foi o ViniciusAge que não por acaso mas por uma programação que começou lá em 1970 deu origem a mãe dele que é minha filha, e ele é meu neto. hehehe!!! Ele fez um tutorialzinho para facilitar. EStá postado mais atrás no tópico.
Só estou mesmo relatando o que estou passando.
Se mais alguém estiver na mesma que se apresente para o bem de todos. Eu entendo muito pouco de MK, mas estou sempre em cima para descobrir algo. Daí passo para o Vinicius e deixo que ele quebre a cabeça.
gostaria de saber se consigo repassarr ips validos depois do pcc
Ola amigos venho acompanhando o topico, bom tive um problema da seguinte forma, usei o PCC pra ativar 13 links ADSL, e 2 Dedicados, fico maravilha durante uns 8 meses, mas faz 3 dias q to apanhando pra descobri o pq ta acontecendo de algumas paginas nao abrir sendo q abria... ate orkut, nextel.combr. afff nao sei mais, ai coloco os sites numa rota so, ele funciona... alguem passo por isso, ou ta tendo isso?? vi q o 1929 esta tendo o mesmo problema.
Me veio agora uma coisa na mente. Li alguma coisa sobre mudança de portas para alguns serviços e que isso se daria no mês de maio.
Poderia ser isso? Pois no meu caso também estava funcionando beleza. Programação desconfigurar o balanceamento não creio, mas parece que houve uma mudança em algum sistema de funcionamento geral na net.
Pessoal, estou testando aqui uma forma de redirecionar alguns sites, youtube por exemplo, para qualquer link que eu queira e está dando certo, mas como minha rede é pequena, com poucos clientes, não tenho certeza de seu real aproveitamento. Vou postas aqui as regras para analise , e se estiverem corretas , poderão ser incluidas no programa.
/ip firewall mangle
add action=mark-routing chain=prerouting comment="WINDOWS UPDATE LINK 2" \
content=windowsupdate.com disabled=no in-interface=ether5 \
new-routing-mark=to_ether2adsl passthrough=yes
add action=mark-routing chain=prerouting comment="Orkut Link 1" content=\
orkut.com disabled=no in-interface=ether5 new-routing-mark=to_ether1adsl \
passthrough=yes
add action=mark-routing chain=prerouting comment="Youtube link 2" content=\
youtube.com disabled=no in-interface=ether5 new-routing-mark=\
to_ether2adsl passthrough=yes
Aparentemente as regras estão funcionando por aqui, mas sou iniciante no MK para avaliar com precisão
lembrando que uso uma rb750 só para balanceamento e a ether5 está conectada ao servidor MK. Uma possibilidade que estou usando é determinar antes da RB750, no caso , no servidor, marcar os pacotes desejados, aplicar uma queue tree para controlar a velocidade de um determinado serviço e na RB750 determinar o link de saída.
Pensei nesse material, por que , sempre temos que passar algumas coisas pela rota default, o que faz um link ter um consumo maior do que outros, então serviria para equilibrar o consumo entre links, e ainda nos dá para direcionar algo considerado como lixo para uma ADSL permanentemente e coisas do tipo. Serviria como ajuste fino. No Programa , a address list conta com videos do terra, globo e com rapidshare, o que fará o consumo deste link subir.
So lembrando o content verifica cada pacote que passa pelo mikrotik, e fazendo o nivel de processamento subindo um pouco.
Sei como a regra content aumenta o consumo de processamento, por isso estou testando a melhor configuração para equilibrar os links e ter a menos quantidade de regras deste tipo. No momento de pico , meu consumo de processamento está por volta de 7% em média com 200 p/s
Bom voltando a TONA, o balanceamento PCC, eu tive um problema e nao sei a soluçao correta.
Estrutura:
LinkA = dedicado 2 megas
LinkB = adsl 1 mega
LinkC = adsl 4 megas
Pelo balanceamento PCC, usamos em mangle prerouting o esquema de 3/0, 3/1, 3/2 certo.. na marcaçao de pacotes, no perr connection...
Bom sendo um link de 2, outro de 1, e outro de 4, o certo nao é fazer na soma de links... em vez de 3 PCC, somar por MEGA, sendo no total 7 megas ai sim dividir no PCC pra q utilize certo o calculo dele??
EU fiz isso aki, utilizando 7 marcações, fico bom, o uso fico por igual, so q duns dias pra ca, a erro de navegaçao, paginas nao abrem as vezes, ai voltei pra somente 3 rotas e nada.
Realmente não gosto de usar K7 para server, heheheheh, esse processamento é na RB750 que só faz o balance por PCC. Como server prefiro a linha da Intel. Como tenho menos de 100 clientes , uso a carroça de um Celeron 2 GHz com 512 de RAM. Nesta máquina faço todo o resto, hotspot, firewall, webproxy(10Gb somente), etc, com somente 20% de processamento o que não está mal, heheh. Estou investindo primeiro na aquisição de link dedicado, o que está muito dificil pelo preço que estão me ofertando, depois de adquirir o link, vou investir num RB1000 e num cache externo. Quero sair primeiro do ADSL para poder me legalizar
Um detalhe nas minhas configurações do PCC:
usando both address and ports, tive problemas com páginas não atualizando e não encontradas, passei a utilizar dst address and port e o problema foi solucionado
Aqui utilizo Both Adress somente. Tava normal, mas duns dia pra ca vi q paginas nao abriam, ai reduzi de 7 balancemento pra somente 3. Só um detalhe, em Rotas, sao marcadas 3, e em Marcaçao de Rotas 3 tbm, ai criei a mais na marcaçao de Rotas, pra usar a mesmas criadas ja, so as 3... sera q tenho q cria 7 marcaçoes, ??? essa é a duvida.
Eu estou com um dedicado e duas adsl todos da mesma capacidade. Mas tambem em alguns tem dado estas mensagens. E nunca chegou no limite da capacidade somada dos 3 links.
O que fiz ontem foi diminuir o valor do burst, que estava bem generoso. Parece que ficou mais estável. Mas o burst não teria nada a ver com as regras do balanceamento.
O burst pode influenciar a abertura de páginas se um dos links do balance estiver congestionado, no começo passei por isso, um link ia a full momentâneamente e quem estava direcionado a este link parava de navegar até descongestionar, monitorei os links individualmente e vi que o link 1 estava congestionando em momentos de pico, por isso usei a regra content para direcionar uns serviços para o link 2 e parou , se diminuir o burst vai acontecer o mesmo.
Esta pode ser uma possibilidade. Mas quando saber se um adsl da vida está congestionado? Na verdade não podemos contar com os picos dele. Por isso que o AKA havia sugerido baixar o valor do adsl no somatório.
Aqui os adsl raramente chegam no pico. Mas como eles não tem garantia de banda, na verdade perdemos os parâmetros.
1929, lidar com adsl é muito complicado causa das variações aqui também utilizo os adsl pra loadbalance em pcc, so que ate hoje não apresentou nenhum problema. Aqui os adsl é de 4 megas, eu conto como 2 megas. Mais mesmo assim quando a velocidade cai la para os 10% de banda garantida fica tudo lento de qualquer jeito, rsrs. Mais quando ta bom fica uma beleza. Muito complicado lidar com adsl.
Meu problema agora com balance PCC, é q utilizo repetiçao das regras pra somar na quantidade dos links, como eu disse antes, so q surgiu a duvida, como tenho 3 links, marco a rota 3x.. e no prerouting, no PCC, eu faço 7 classificaçao. Sendo o LinkA = 2 megas eu repito ele 2x, o LinkB=4megas, repito 4x, e o LinkC=1mega, dexo 1x.... totalizando 7 PCC,, o problema é q marco a rota somente 3x, um pra cada link, queria ver se preciso marca 7x, ou so as 3 estao corretas????
Código :
/ip firewall mangle add action=mark-connection chain=input connection-state=new disabled=no in-interface=LinkA new-connection-mark=etherA_conn passthrough=yes add action=mark-connection chain=input connection-state=new disabled=no in-interface=LinkB new-connection-mark=etherB_conn passthrough=yes add action=mark-connection chain=input connection-state=new disabled=no in-interface=LinkC new-connection-mark=etherC_conn passthrough=yes add action=mark-routing chain=output connection-mark=etherA_conn disabled=no new-routing-mark=to_LinkA passthrough=no add action=mark-routing chain=output connection-mark=etherB_conn disabled=no new-routing-mark=to_LinkB passthrough=no add action=mark-routing chain=output connection-mark=etherC_conn disabled=no new-routing-mark=to_LinkC passthrough=no # Inicio do PCC # add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkA_conn passthrough=yes per-connection-classifier=both-addresses:7/0 add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkA_conn passthrough=yes per-connection-classifier=both-addresses:7/1 add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkB_conn passthrough=yes per-connection-classifier=both-addresses:7/2 add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkB_conn passthrough=yes per-connection-classifier=both-addresses:7/3 add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkB_conn passthrough=yes per-connection-classifier=both-addresses:7/4 add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkB_conn passthrough=yes per-connection-classifier=both-addresses:7/5 add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkA_conn passthrough=yes per-connection-classifier=both-addresses:7/6 # Saida do PCC add action=mark-routing chain=prerouting connection-mark=LinkA_conn disabled=no in-interface="ether1-Clientes" new-routing-mark=to_LinkA passthrough=no add action=mark-routing chain=prerouting connection-mark=LinkB_conn disabled=no in-interface="ether1-Clientes" new-routing-mark=to_LinkB passthrough=no add action=mark-routing chain=prerouting connection-mark=LinkC_conn disabled=no in-interface="ether1-Clientes" new-routing-mark=to_LinkC passthrough=no
Aqui o ADSL é relativamente estável, tenho dois de 1 mbps que estão sempre na casa de 900kbps e utilizo este valor para os calculos do PCC, mas temos a possibilidade de variações malucas do ADSL, essas não tem como se precaver mesmo , heheheh
aka, não seria algo deste tipo?????
LinkA = dedicado 2 megas 7/4
LinkB = adsl 1 mega 7/6
LinkC = adsl 4 megas 7/0
Eu também não entendi muito bem como se faz a distribuição das conexões, estendi desta maneira:
conexões 0,1,2,3 para o link C, conexões 4,5 para o link A e conexão 6 para o link B.
Veja bem , meu entendimento pode estar errado, foi como eu entendi o funcionamento do PCC
Isso mesmo amigo o calculo, como tenho um link de 1 mega, e os outros acima, calculo tudo pra 1 mega, entao repetindo isso ai, LinkC, 0 1 2 3, LinkA 4, 5 linkB 6.
add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkC_conn passthrough=yes per-connection-classifier=both-addresses:7/0
add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkA_conn passthrough=yes per-connection-classifier=both-addresses:7/4
add action=mark-connection chain=prerouting disabled=no dst-address-type=!local in-interface="ether1-Clientes" new-connection-mark=LinkBconn passthrough=yes per-connection-classifier=both-addresses:7/6
Então as regras ficariam assim, no meu entender
Isso mesmo, so q tenho q por 7/1, 7/2, 7/3 e 7/5 tambem,,, mas o problema nao esta ai no PCC, dequise minha duvida nao esta ai, sendo q eu uso 3 Links, e to balanceando em 7 marcaçoes, eu fiz a 7/1, 7/2 usar a ROTA e marcaçao do LinkC, fiz a 7/5 usar a Marcaçao de ROTA e Pacote da LinkA... é justamente essa duvida minha, aki funciono ate esses dias, mas agora da erro, em alguns sites nao abre, ai tenho q tira eles do balanceamento, pra passa direto por um so link... Ai vem a duvida, ta certo faze igual eu fiz, ou tenho q cria marcaçoes secundarias pra da to tanto q eu quero no caso 7 ?? la em MANGLE em INPUT e OUTPUT, e PREROUTINJ OUT-PUT,.. éssa é minha duvida.
se eu fizer com um adsl e um dedicado vai funcionar ?!
Funciona sim marlon, so você fazer o calculo do pcc, se eu nao me engano voce soma eles e dividi pelo menor.
By Pcram:
Se tivessemos links assimétricos onde por exemplo:
LinkX de 512k
LinkY de 1024k
LinkZ de 2048k
somariamos todos os links e dividiriamos pelo valor do menor link então teriamos 3584k/512k=7 então teriamos 7 marcações de pcc indo de 7/0 até 7/6 das quais devemos direcionar a primeira pro link X, a segunda e terceira pro link Y e as quatro restantes para o link Z fazendo nosso sistema perfeitamente equilibrado.
Uma coisa q me surgiu... em questao de quando um link cai, ai temos q ir nas regras e recalcula elas e mudar,, alguem ja monto um sistema de LINK FAILOVER? pra monitorar quando um dos links cai, ele refaz o MANGLE???? eu montei um aki, mas nao axei a formula de calcular os valores do Per Conection... pra automatico adicionar e fazer sozinho....
boa noite!
Uma pequena observação, se for usado 3, 4, 5, 6, etc links de mesma velocidade, o programa pcc vai gerar script um para um, ou seja, como todos tem mesma velocidade não tem porque fazer outros pear, mas tem um problema:
* caso seja 3 links dedicados de 2048, não teremos nenhum problemas, mas,
* caso seja 3 links dedicados de 2048 e 1 adsl 2048, teremos problemas por que o link adsl apessar de ser de mesma velocidade é inferior em qualidade em relação aos dedicados, ou seja, link sem garantia.
caso o seja colocado os 3 links dedicados + 1 adsl no programa pcc, o mesmo vai gerar um para um, o que poderia acarretar lerdesa de internet pois o pcc mandaria requisições assim como ele manda para o dedicado e o adsl não iria suportar a demanda "ou garantir a velocidade", neste caso é aconselhavel que seja feito testes de velocidade no adsl e colocar no programa pcc a velocidade mais indicada para o adsl, com isso o programa pcc vai gerar os pear corretos para sua realidade...
* caso os 3 links sejam dedicados, vc poderá ou não ter problemas, pois se vc tiver um link adsl melhor que outro pode gerar ai uma lerdeza, por isso é aconselhavel testar os 3 links adsl e verificar a capacidade dos mesmos...
at.: Scan
Uma das melhores ideias que ja vi. Muito bom o programa. Não sou programador, minha especialidade é redes, mais gostaria de me candidatar para ajudar a homologar as versões de teste. Caso precise de ajuda é claro.
Excelente trabalho.
Bom dia amigo primeiramente parabéns pelo seu trabalho...
Estou fazendo uns teste aki e percebir ki este errozinho citado acima não foi corrigido na versão nova...
seria interesante se vc add tb a regras de agendamento para o script ... Pelo ki entendir este script e para quando um link cair o outro asumir correto ? mas quando o link volta ele joga ele denovo tb ???
Esse script ativa e desativa a regra do MANGLE, quando o link cai certo... mas nao calcula os valores do Peer Conection, la tem q ser manualmente trocado, sera q nao tem uma formula pra montar um script pra fazer isso, so falta isso pro programa fica show... to procurando e testando aki mas ate agora nada..
Coloquei estas regras acima de todas, mas como disse, minha rede é pequena , não sei se com uma rede maior funcionaria a contento. Para sites com o IP conhecido , é só acrescentar na address list , mas o youtube não se encaixaria devido ao número enorme de servidores
Minha rede tb e pequena e não fuciono esta regra...
Alguém tem alguma solução melhor ???
Essas regras funcionando pra 2 ou mais links. pow.. o q da de erro pra vc eduarlei?
com testes ki fiz aki coloquei ela em baixo estou testando com ela encima das regras do pcc..
Ve se estou certo.. estou usando esta regra ki para redirecionar o link para um derteminado site.. esta certo ?
add action=mark-routing chain=prerouting comment="FORA DO LOADBALACED LINK-2" disabled=no dst-address-list=Link-2 \
in-interface=Local new-routing-mark=to_Link-2 passthrough=yes
boa tarde Eduarlei!
Tipo, o código gerado pelo programa é para ser utilizado em uma máquina a parte ou RB, e não em seu MK principal, pois a lógica é usar um pc ou RB somente para o balanceamento e depois conectar no pc que controla sua rede PCC -> MK principal -> rede clientes, o programa gera script para o loopback "ou seja, sites que vc deseja que não passa pelo pcc e sim pela rota principal", no programa basta marcar a opção para que o programa gere o mesmo, caso o que deseja é realmente definir qual rota cada site deve ir, este programa não gera script para esta função, pois sai do foco de balanceamento dinamico e o que vc quer é stático..
t++
boa tarde Eduarlei!
quanto as correções sitadas a cima, estarei analizando e adicionando as mesmas...
t++
scan, eu uso um servidor so para load balancer aki mas nada nele.
Muito obrigado amigo... fiz os testes a aki e esta 100% fucionando...
Outra coisa "lacierdias" se não sabe responder fica queto ki e bem melhor do q ja sair criticando quem vc não conhece, tive uma duvida e axei melhor compartilha aki no tópico, visto ki esta duvida outra pessoa pode ter tb, e ja tendo a solução aki fica melhor, este forum e para compartilha conhecimentos e não criticas.
Valeu "lacierdias".
bom dia!
se entendi a pergunta, ao adicionar o site na Address List, a regra que fica em Mangle vai aceitar os endereços contidos em Address List na rota principal, onde a mesma não é preciso criar pois é a rota que fica sem marcação em ip router "ou seja, tudo que não cai no filtro do mangle, vai para rota principal", fassa o teste e adicione o site meuip.com.br na address list, vc vai verificar que o ip que vai aparecer neste sita vai ser sempre o da sua rota principal....
t++