====== Balanceamento de carga e Rotas ====== ===== Balanceamento de Carga ===== O balanceamento de carga (load balance) é um recurso que permite que você utilize mais de um link de internet simultaneamente.\\ \\ O sistema sorteará algumas conexões de alguns usuários para cada um dos links, isso vai proporcionar dois efeitos interessantes: - Os usuários terão a "impressão" que a banda dos dois links foi somada. - Quando um dos links cair, a internet deverá continuar funcionando através do(s) outro(s).\\ ==== Weight (peso) ==== O Weight (peso) indica a PROPORÇÃO de conexões que o load balance irá sortear para cada links. Se os seus links são iguais, então você pode usar o valor default = 1 para todos eles.\\ \\ **//Exemplos://** * Dois links de 512 (peso = 1 para os dois) * Uma conexão pra lá, uma conexão pra cá, uma conexão pra lá, uma conexão pra cá........ * Tres links de 8 megas (peso = 1 para os tres) * Uma conexão pra link 1, uma conexão pro link 2, uma conexão pro link 3, uma conexão pra link 1, uma conexão pro link 2, uma conexão pro link 3...\\ Perceba que o peso não tem nada a ver com a velocidade do link. Peso é a //COMPARAÇÃO// entre um link e outro.\\ Agora veja exemplos com links de velocidades diferentes: * Um link de 256 (peso = 1) e outro de 512 (peso = 2): * Uma pra lá, duas pra cá, uma prá lá, duas pra cá..... * Como o link de 512 é DUAS VEZES mais rápido que o link de 256 então ele deve ter peso 2\\ ---- ==== Balanceamento de Carga ==== Balanceamento de Carga no BrazilFW 3.x **//Importante://** Antes, quando se tinha dois ou mais links da mesma operadora para se usar o Load Balance você tinha que rotear os modens. Ao usar os mesmos como bridge (modem em PPPoE) tinha-se problemas pois o gateway dos links eram os mesmos por se tratar de links de mesma operadora. Na Versão 3.0.199 o Woshman implantou o **//BFG//** (**//Bridge Fake Gateway//**) que suporta até 255 conexões em modo bridge, assim é possível adicionar conexões em modo bridge (adsl/3g) sendo da mesma operadora sem conflitos. Agora pode-se usar os modems tanto como router como bridge para o Load Balance em links de mesma operadora.\\ ---- ==== Configurar Interfaces ==== Para configurar as interfaces físicas e lógicas vá em [[http://wiki.brazilfw.com.br/network#conexoes|]].\\ ---- ==== Vários links, uma placa de rede ==== Vários links em somente uma placa de rede É possível usar vários links em somente uma placa de rede. Tanto com modens em Bridge como em Router. Para isso o Woshman implantou o recurso da eth virtual (veth). ==== Modens em modo router ==== {{ :wiki:veths_router.png |}} Para usar os modens em router com as veth's as interfaces lógicas são as mesmas usadas quando cada Link usa uma placa de rede. Não há nenhuma diferença. \\ ---- ==== Modens em modo bridge ==== {{ :wiki:veths_bridge.png |}}\\ ---- ==== Observação ==== Estando o Squid habilitado basta entrar com http://192.168.1.254 e http://192.168.2.254 em um navegador que se terá acesso ao webadmin do respectivo Modem em Bridge. ---- ===== Rotas ===== Para uma máquina ser capaz de encontrar outra através de uma rede, é necessário um mecanismo que descreva como ir de uma para a outra. Isto é chamado roteamento. Uma "rota" é um par definido de endereços: um "destino" e um "gateway". O par indica que se você estiver tentando alcançar este destino, deve se comunicar através deste gateway. Existem três tipos de destinos: máquinas individuais, subredes e "padrão". A "rota padrão" é usada se nenhuma das outras rotas for aplicável. Vamos falar um pouco mais sobre rotas padrão mais tarde. Também existem três tipos de gateways: máquinas individuais, interfaces (também chamadas de "enlaces") e endereços físicos de hardware Ethernet (endereços MAC). - //Coranth Gryphon// ---- ==== Rotas ==== Rotas para Balanceamento de Carga A Rota do BFW 3.x é para quando se tem mais de um link de internet no mesmo Servidor (Load Balance).\\ O link é verificado a cada 10 segundos, havendo alteração o **''squid''** e as **''rotas''** são recarregados.\\ Quando um link cai (''down''), a **//''Rota''//** redireciona as conexões ''para um novo link'', tanto o download como o upload individualmente.\\ ---- ==== Gerenciar Rotas ==== Na opção **//webamin => Configurações => Rotas => Gerenciar//** gerencie as rotas para balanceamento de carga do BFW 3.x. {{ :wiki:routes-01-pt-br.png |}}\\ **//Tem-se a tela abaixo de Gerenciamento de Rotas do BFW 3.x//** {{ :wiki:routes-02-pt-br.png |}}\\ **//Clicando em tem-se a tela abaixo para adição de rotas//** {{ :wiki:routes-03-pt-br.png |}} ---- ==== Opções de Rotas ==== Na tela de Adição ou Edição de rotas os campos são explicativos mas abaixo será descrito opções existentes. O campo **''"Comentário"''** é comum a todas as telas e é para descrição da regra. ^ Opção ^ Valor ^ Descrição ^ ^ Ativo | Sim | Ativa a Regra de "roteamento"| ^ ::: | Não | Desativa a Regra de "roteamento"| ^ Regra | Estático | Se a conexão cair, ela não será realocada| ^ ::: | Dinâmico | Se a conexão cair, o próximo link assumirá, ou o LoadBalance| \\ Na regra "Estático" temos as seguintes opções:\\ O **''''** //é onde a regra será aplicada//.Nos exemplos abaixo, nas regras que tem o campo conexão, foi usado os "apelidos" **//internet//** e **//internet2//**. Deverão ser trocados pelos os de sua rede. ^ Local ^ Comando ^ Exemplo/Descrição ^ | Rede | Rota | ''** <192.168.0.5> <10.0.0.11>**''\\ \\ ''** <192.168.0.0/24> <10.0.0.16>**''\\ \\ ''** <192.168.0.5,192.168.0.18,192.168.0.50> <10.0.0.19>**''\\ //Adiciona uma rota estática para rede. Terá com origem IP e como Destino Dominio ou IP// | | ::: | Gateway | ''** <192.168.0.15>**''\\ \\ ''** <192.168.0.0/24>**''\\ \\ ''** <192.168.0.5,192.168.0.3,192.168.0.50>**''\\ //Força um ou mais IPs a sair por um gateway. No Campo Origem coloque o(s) IP(s) que sairão na conexão lógica do campo Conexão// | | ::: | Origem | Força a saída de IP(s) x pelo link Y para qualquer ou determinado destino.\\ \\ ''** <192.168.0.18> <0.0.0.0> <0> <0>**''\\ //Força a saída do IP 192.168.0.18 pelo link internet para qualquer destino//\\ \\ ''** <192.168.0.16> <0> <0>**''\\ //Força a saída do IP 192.168.0.16 pelo link internet para o destino www.google.com.br//\\ \\ ''** <192.168.0.13> <443> <443>**''\\ //Força a saída do IP 192.168.0.13 pelo link internet para o destino www2.bancodobrasil.com.br pela porta 443 (https)//\\ \\ ''** <192.168.0.14> <6000> <8000>**''\\ //Força a saída do IP 192.168.0.14 pelo link internet para o destino www.terra.com.br// | | ::: | Conteúdo | ''** <0.0.0.0> <0.0.0.0> **''\\ //Força o conteúdo (string "x-msn") a sair pelo link internet// | | ::: | Desviar | ''** **''\\ //Acessa-se a página www.google.com.br sem que nenhuma regra das Rotas do BFW 3.x interfira. Esta regra Desviar (bypass) "pula" todas as regras de Rotas.// | | Cache | Origem | ''** <192.168.0.0/24>**''\\ //Força a saída pelo proxy da range citada pelo link internet// | |::: | Domínio | ''** **''\\ //Força a saída do domínio www.google.com.br pelo link internet// | |::: | Extensão | ''** <.com,.bat,.exe>**''\\ //Força as extensões citadas a saírem pelo link internet// | | VPN | Rota | ''** <192.168.0.0/24> <10.0.0.1>**''\\ //Adiciona uma rota estática para a VPN. Terá com origem IP e como Destino Dominio ou IP// | \\ Na regra "Dinâmico temos as seguintes opções:\\ O **''''** //é onde a regra será aplicada//. Nos exemplos abaixo, nas regras que tem o campo conexão, foi usado os "apelidos" **//internet//** e **//internet2//**. Deverão ser trocados pelos os de sua rede. ^ Local ^ Comando ^ Exemplo/Descrição ^ | Rede | Origem | ''** <0.0.0.0> <0.0.0.0> <53> <53>**''\\ //Força a saída da porta 53 (DNS) para todos os Ips pelo o link internet2 (Caindo o link internet2, o link internet assumirá)//\\ \\ ''** <0.0.0.0> <0.0.0.0> <443> <443>**''\\ //Força a saída da porta 443 (https) para todos os Ips pelo o link internet2 (Caindo o link internet2, o link internet assumirá)//\\ \\ ''** <192.168.0.11> <0.0.0.0> <0> <0>**''\\ //Força a saída do IP 192.168.0.11 pelo link internet para qualquer destino (Caindo o link internet, o link internet2 assumirá)//\\ \\ ''** <192.168.0.13> <0> <0>**''\\ //Força a saída do IP 192.168.0.13 pelo link internet para o destino www.google.com.br (Caindo o link internet, o link internet2 assumirá)//\\ \\ ''** <192.168.0.19> <443> <443>**''\\ //Força a saída do IP 192.168.0.19 pelo link internet para o destino www2.bancodobrasil.com.br pela porta 443 (https) (Caindo o link internet, o link internet2 assumirá)//\\ \\ ''** <192.168.0.21> <6000> <8000>**''\\ //Força a saída do IP 192.168.0.21 pelo link internet para o destino www.terra.com.br pela faixa de portas de 6000 ate 8000. (Caindo o link internet, o link internet2 assumirá)// | | ::: | Conteúdo | ''** <0.0.0.0> <0.0.0.0> **''\\ //Força o conteúdo (string "x-msn") a sair pelo link internet (Caindo o link internet, o link internet2 assumirá)// | | Cache | Origem | ''** <192.168.0.21>**''\\ //Força a saída pelo proxy do IP 192.168.0.21 para o link internet (Caindo o link internet, o link internet2 assumirá)//\\ \\ ''** <192.168.0.11,192.168.0.23,192.168.0.35>**''\\ //Força a saída pelo proxy dos IPs citados para o link internet (Caindo o link internet, o link internet2 assumirá)//\\ \\ ''** <192.168.0.1,192.168.0.2,192.168.0.3>**''\\ \\ ''** <192.168.0.0/24>**''\\ //Força a saída pelo proxy da range citada pelo link internet (Caindo o link internet, o link internet2 assumirá)// | |::: | Domínio | ''** <.google.com.br,.cade.com.br,yahoo.com.br>**''\\ //Força a saída desses domínios para o link internet (Caindo o link internet, o link internet2 assumirá)// | |::: | Extensão | ''** <.exe,.bat,.mpeg,.tar.bz2>**''\\ //Força as extensões citadas a saírem pelo link internet (Caindo o link internet, o link internet2 assumirá)// | \\ **//Depois de criadas as rotas tem-se a tela abaixo. Clique em para "rodar" as rotas criadas//** {{ :wiki:routes-04-pt-br.png |}}\\ **//Ao Clicar em tem-se a tela abaixo em que acessa-se o arquivo /etc/brazilfw/route.cfg//** {{ :wiki:routes-05-pt-br.png |}} ---- ==== Visualizar Rotas ==== Na opção **//webamin => Confiragurações => Rotas => Visualizar//** visualiza-se as rotas existentes. {{ :wiki:routes-view-01-pt-br.png |}}\\ Abaixo visualiza-se as rotas que foram definidas no arquivo **''/etc/brazilfw/route.cfg''** de exemplo: | yes dynamic network source internet,internet2 0.0.0.0 0.0.0.0 53 53 #dns | | yes dynamic network source internet,internet2 0.0.0.0 0.0.0.0 443 443 #https (bancos) | | yes dynamic proxy source internet,internet2 10.0.0.0/8 #rede geral | | yes dynamic proxy source internet,internet2 172.16.0.4 #micro bancada | | yes dynamic proxy source internet2,internet 172.16.0.0/28,192.168.0.0/24 #sub-redes | {{ :wiki:routes-view-02-pt-br.png |}} ---- ====== Fontes ====== * http://pt.wikipedia.org/wiki/Balanceamento_de_carga * http://pt.wikipedia.org/wiki/Rota_padr%C3%A3o * http://www.openit.com.br/freebsd-hb/network-routing.html --- //[[reginaldo@brazilfw.com.br|Reginaldo Sousa Melo]] 2013/10/31 09:06//