Tutorial load balance (paralelo) + Debian + ThunderCache + servidor MK 3.13~3.22
Ola galera,hoje completa 1 ano que trabalho com sistema linux e junto com ele o sistema RouterOs(MK).Então compartilhe de graça o que recebeu de graça!
Diante disso irei explicar detalhadamente como fazer um servidor para rodar um provedor estavel e com qualidade.
O cenário que iremos trabalhar sera o seguinte:
Versão testada: 3.13 e 3.22(32Bits~64Bits - RouterOs - Mikrotik)(32Bits RECOMENDADO)
Modo de autenticação no servidor: PPPoE
Distribuição de endereço por DHCP: Desativado
O servidor seguira o seguinte esquema:
LoadBalance Paralelo(1 PC Fazendo apenas o Gerenciamento de Links),
Distribuição Debian 5.1(32~64Bits) + Sistema ThunderCache (Software Free)
Servidor RouterOs - MK 3.13 ou 3.22 (Software Pago)
Através desse cenário montaremos nosso Provedor com Proxy + Sistema ThunderCache FULL + LoadBalance(101% Sem problemas de quedas ou paralisações de Sites,Messengers etc...).
LEMBRANDO QUE ESSE MODO DE CONFIGURAÇÃO NÃO É UMA REGRA E SIM UM MODO PRÁTICO PARA RESPONDER MUITAS QUESTÕES REFERÊNTES A TÓPICOS DO GENÊRO!!!
Como será uma passo a passo,irei postar seguindo este roteiro:
1º - Insalação do Debian 5.1 + Instalação do Sistema ThunderCache;
2º - Instalação do MK Paralelo para Gerenciamento dos Links;
3º - Instalação básica do Sistema MK 3.13 ou 3.22 em modo PPPoE;
--------------------------------------------------------------------------------------
Iniciando...
Vamos Descrever nosso Cenário:
http://img44.imageshack.us/img44/156/cenrio.jpg
1º Parte:
Instalando o Servidor Debian 5.1 versão 32Bits(O mesmo procedimento para a versão 64Bits)
"Créditos do vídeo - Luciano Rampanelli"
[ame="http://www.youtube.com/watch?v=gIrGOrgB9QY"]YouTube - Tutorial Debian para Integração com Mikrotik - 1ª Parte[/ame]
2º Parte:
Instalando o Servidor Web(Apache) + Sistema ThunderCache entre outros.
Para agilizar essa etapa,iremos rodar um script desenvolvido pelo nosso colega Luciano Rampanelli.
Digite assim no seu Debian:
wget http://www.pcram.com.br/conlinux/conlinuxZ4.sh
chmod +x conlinuxZ4.sh
./conlinuxZ4.sh
"Créditos do vídeo - Luciano Rampanelli"
[ame="http://www.youtube.com/watch?v=b8ZZm0RXuOU"]YouTube - Tutorial Debian para Integração com Mikrotik - 2ª Parte[/ame]
ATENÇÃO: Após rodar o script acima, nosso endereço de ip's no Debian(Proxy) sera:
Endereço de Ip: 192.168.10.250
Mascara: 255.255.255.0
Gateway: 192.168.10.253
3º Parte:
Após instalarmos o Debian e o sistema ThunderCache,teremos que iniciar a configuração do nosso Proxy.Para isso vamos adicionar algumas regras no Servidor MK(Controle),ao qual esta encarregado de fazer os serviços de Modo de autenticação,Controle de banda,Firewall etc.
Va até seu Servidor MK(Controle) e adicione as seguintes regras:
/Ip address:
192.168.10.253/24
/Ip Dns Static:
Name:Thunder
Address: 192.168.10.253
Apartir deste ponto você poderá pingar o Endereço do Debian "192.168.10.250" que respondera com ping 0ms se estiver tudo configurado conforme as orientações acima.
Prosseguindo...
Vamos colocar algumas regras em nosso Firewall.
/ip firewall filter
Chain: forward
Src. Address: 192.168.10.0/24
Action: Accept
Coment:Aceitar todas as Conexões vindas do Proxy-Thunder
Importante! Deixe esta regra acima de todas as outras.
Para quem usa regras de Conexões Simultâneas,cuidado!Ela pode comprometer drasticamente o desempenho do ThunderCache.
Mas para tudo na vida há uma solução!!!
Veja o Exemplo abaixo de uma regra de Conexões Simulãneas livrando nosso amigo ThunderCache do limite de conexões:
/ip firewall filter
add action=drop chain=forward comment="Limite de 15 conexoes simultaneas por cliente" connection-limit=15,32 disabled=no \
dst-address=!192.168.10.0/24 protocol=tcp src-address=192.168.2.0/24 tcp-flags=syn
Onde 192.168.2.0/24 é a faixa de rede!
/Ip Firewall Nat
Chain: srcnat
Src. Address: 192.168.10.0/24
Action: masquerade
Coment:Nat-Debian
Chain:dstnat
Src. Address: 192.168.2.0/24(Sua Faixa de Rede)
Dst. Address: !192.168.10.250 (Ip do Debian)
Protocol.: 6(tcp)
Dst. Port: 80
Action: dst-nat
To Address: 192.168.10.250
To Ports: 3128(Porta usada pelo Proxy)
Pronto!Apenas com essas regras você fara o Mikrotik ter conexão junto ao Debian.
Agora a parte que muita gente esta tendo problemas,que é a marcação de pacotes para que funcione corretamente o Cache Full.
Segue abaixo as regras:
/ip firewall mangle
add action=mark-connection chain=forward comment="Cache Full" content="X-Cache: HIT" disabled=no new-connection-mark=forward-hits \
passthrough=yes protocol=tcp
add action=mark-packet chain=forward comment="" connection-mark=forward-hits disabled=no new-packet-mark=cache-hits passthrough=yes
add action=mark-connection chain=postrouting comment="" disabled=no dscp=12 new-connection-mark=proxy-hits passthrough=yes
add action=mark-packet chain=postrouting comment="" connection-mark=proxy-hits disabled=no new-packet-mark=proxy-squid passthrough=yes
add action=mark-connection chain=forward comment="Thunder - Cache Full" disabled=no dst-address=192.168.10.250 dst-port=80 \
new-connection-mark=thunder-connection passthrough=yes protocol=tcp
add action=mark-packet chain=forward comment="" connection-mark=thunder-connection disabled=no new-packet-mark=thunder-packs \
passthrough=yes protocol=tcp
/queue tree
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=2000000 max-limit=3000000 name=Cache-Hits packet-mark=\
proxy-squid parent=global-out priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=2000000 max-limit=3000000 name=Cache-Old packet-mark=cache-hits \
parent=global-out priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=2000000 max-limit=3000000 name=ThunderCache packet-mark=\
thunder-packs parent=global-out priority=8 queue=default
Vai ficar enorme esse tutorial,então irei colocando aos poucos o conteudo.Lembrando que como não estou fazendo o processo CTRL+C,CTRL+V, é possivel que eu volte em alguma parte do tutorial para fazer alguma alteração,então qualquer duvida na configuração volte ao inicio do nosso post e reveja as explicações... Vamos que vamos!:itsme:
Vamos Começar a trabalhar agora em cima do nosso Debain-Proxy...
Bom.mesmo aos mais experientes no assunto,é muito chato fazer isso pela interface de prompt de comando,então aconselho aos colegas a usarem algum programa de FTP.Sugiro usar o programa FTP WINSCP, que ira agilizar muito essa etapa da configuração.
Então vamos mandar bala e baixar ele no link abaixo:
Download WinSCP from SourceForge.net (Link testado 09/07/2009 - 10:49hs)
4º Parte:
Instale o nosso programa FTP WINSCP,ele nós ajudara muito,pois trabalha como uma interface intuitiva e agilizara nossa configuração.Não irei detalhar a instalação do nosso programa ftp,póis uma instalação de modo default sem necessidades de configurações adicionais ira corresponder com o que iremos usar.
Após instalado o Ftp WinScp,configure conforme abaixo:
http://img269.imageshack.us/img269/9574/tutorial01.jpg
5º Parte:
Já com nosso programa ftp rodando,vamos iniciar o processo de configuração de seguintes itens:
Squid.config (/etc/squid/squid.config)
Thunder.config (/etc/squid/thunder.config)
Resolv.config (/etc/resolv.config)
Correções ortográficas,serão feitas durante as postagens e no decorrer dos dias!!!
------------------------------------------------------------------------------------
ATENÇÃO:
TUTORIAL EM FASE DE DESENVOLVIMENTO,POR TANTO PODERA HAVER MODIFICAÇÔES AO DECORRER DO PROCESSO!!! PRAZO ESTIMADO PARA O TÉRMINO 10/07/2009
------------------------------------------------------------------------------------
Uma Boa noite a todos e fiquem com Deus!!!:party:
Fiquem a vontade se quiserem clicar no BoOtãozinho "AGRADECER"
Tutorial load balance (paralelo)+Debian+ThunderCache+serv idor MK 3.13~3.22
6º Parte:
Vamos iniciar as configurações pelo arquivo Squid.conf.
Irei fazer alguns comentários sobre algumas das configurações,no entanto estão bem explicadas sobre qual função que cada uma delas faz.
http_port 3128 transparent (A porta pode ser alterada de acordo com as necessidades)
visible_hostname conprove (O nome pode ser alterado de acordo com as necessidades)
icp_port 0
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8
acl con_clients dst 192.168.2.0/24 (Faixa de rede que poderão acessar o proxy.Altere de acordo com suas necessidades)
acl purge method PURGE
acl CONNECT method CONNECT
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow manager localhost con_clients
http_access deny manager all
icp_access allow purge localhost con_clients
icp_access deny purge all
#memoria reservada para o cache, 40% ~ 50% por cento
cache_mem 1536 MB (Altere de acordo com as necessidades)
#máximo tamanho dos arquivo cache na memoria
maximum_object_size_in_memory 16 KB
#máximo tamanho dos arquivo cache no hd
maximum_object_size 40 MB (Altere de acordo com as necessidades)
minimum_object_size 0
#regra que começa a esvaziar / substituir arquivos no cache em 95%
cache_swap_low 80
cache_swap_high 95
#total em MB de espaço no hd a ser usado pelo cache, numero de pastas, e
#numero de subpastas do cache.
cache_dir ufs /var/spool/squid 300000 16 256 (Altere de acordo com suas necessidades)
cache_effective_user proxy
ftp_user [email protected]
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log
#access_log /var/log/squid/error.log
#O store.log exibe quais arquivos foram removidos do cache, quais objetos estão salvos, e o tempo que estão no cache
#entretanto, não existe uma utilidade real para esses dados, portanto é recomendável desativar essa flag.
cache_store_log none
#intervalos de tempos que o proxy verificara os arquivos dos site acessado
#conferem com o do cache, o valor 10080 significa aproximadamente 09 dias
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
#refresh_pattern (Release|Package(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
#Mantendo objetos recentes e pequenos na memoria
memory_replacement_policy heap GDSF
acl shoutcast rep_header X-HTTP09-First-Line ^ICY\s[0-9]
upgrade_http0.9 deny shoutcast
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
hosts_file /etc/hosts
coredump_dir /var/spool/squid
#acl ADSAdClient url_regex ADSAdClient31.dll (O "#",indica a anulação da função)
#http_access deny ADSAdClient
#deny_info http://www.conprove.com/banner_msn.html ADSAdClient (Altere de acordo com as necessidades)
#NEGA CACHE YOUTUBE
acl youtubecache dstdomain .youtube.com .avast.com .avg.com .windowsupdate.com .grisoft.com .avgate.net .googlevideo.com .gl$
cache deny youtubecache
server_persistent_connections off
# Marca Penalty HIT
zph_mode tos
zph_local 0x30
zph_option 136
zph_parent 0
url_rewrite_children 100 (Valor Default é 10.Altere de acordo com as sua necessidades)
url_rewrite_program /etc/squid/loader.php
acl thundercache_allow_url url_regex -i \.youtube\.com\/get_video\?
acl thundercache_allow_url url_regex -i \.googlevideo\.com\/videoplayback \.googlevideo\.com\/videoplay \.googlevideo\.com\/get_video\?
acl thundercache_allow_url url_regex -i \.google\.com\/videoplayback \.google\.com\/videoplay \.google\.com\/get_video\?
acl thundercache_allow_url url_regex -i \.google\.[a-z][a-z]\/videoplayback \.google\.[a-z][a-z]\/videoplay \.google\.[a-z][a-z]\/get_video\?
acl thundercache_allow_url url_regex -i (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/videoplayback\?
acl thundercache_allow_url url_regex -i (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/videoplay\?
acl thundercache_allow_url url_regex -i (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/get_video\?
acl thundercache_allow_url url_regex -i media[a-z0-9]?[a-z0-9]?[a-z0-9]?\.tube8\.com\/
acl thundercache_allow_url url_regex -i \.mais\.uol\.com\.br\/(.*)\.flv
acl thundercache_allow_dom dstdomain .terra.com.br dl.redtube.com .orkut.com .avast.com .avg.com .windowsupdate.com .grisoft.com .avgate.net .globo.com .terra.com .eset.com
acl thundercache_deny_url url_regex -i http:\/\/[a-z][a-z]\.youtube\.com http:\/\/www\.youtube\.com
url_rewrite_access allow thundercache_allow_url
url_rewrite_access allow thundercache_allow_dom
redirector_bypass on
url_rewrite_access deny all
#nega cache local para não haver duplicação
acl servercache dstdomain 192.168.10.2 (Ip do Debian.Altere de acordo com suas necessidades)
cache deny servercache
Obs.:
#máximo tamanho dos arquivo cache no hd
maximum_object_size 40 MB (Altere de acordo com as necessidades)
minimum_object_size 0
Esta opção serve apenas para os arquivos que serão cacheados pelo squid.O thunder vai cachear arquivos de qualuqer tamanho.Então não se espante se ver vídeos de 400MB,500MB em cache!
Então fica aberto este assunto à opiniões dos colegas!
Tutorial load balance (paralelo)+Debian+ThunderCache+serv idor MK 3.13~3.22
7º Parte:
Agora vamos configurar o arquivo thunder.config:
<?php
/**
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Library General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* (C) Copyright 2008-2009 Thunder Cache
*
* For more information check THUNDERCAHE.ORG
*
* Configurations of system
*
* @autor rodrigo manga <[email protected]>
*/
$cache_dir = "/var/www/thunder"; (Diretório usado pelo ThunderCache)
$disk_max = 98; // in percent (Uso máximo do tamanho do HD)
$cache_scr = "/etc/squid";
$server_ip = "192.168.10.250"; (Ip do Debian.Altere de acordo com as suas necessidades)
$cache_url = "http://$server_ip/thunder";
$download_speed = 512; // kbytes (Velocidade do Download feita pelo thunder)
$logadd_on = false;
$redir = "301:"; // keep empty if you need a internal rewriter (O valor padrão é 302)
$proxy_host = ""; // keep it empty if you dont need proxy
$proxy_port = "3128"; (Porta usada pelo Proxy)
// advanced params - IF YOU DONT KNOW, DONT TOUCH!
$packet_size = 200; // in bytes
$packet_delay = 2000; // time in micro second
$download_timeout = 10;
?>
Obs.:
$download_speed = 512; // kbytes (Velocidade do Download feita pelo thunder)
Esta opção decide qual a velocidade do download dos arquivos que serão cacheados.
Exemplo:Um cliente clica em um vídeo(youtube,uol,globo,etc...)e então o thunder entra em ação para fazer o download do arquivo(Na velocidade estipulada em $download_speed = 512; // kbytes.Mas atenção mesmo que o cliente cancele o download o arquivo continua a ser tranferido para o cache usando o link de internet.Após cancelar o download a banda do cliente fica liberada para ele continuar navegando,fazer downloads etc.Então cuidado em setar velocidade alta nesta opção,a não ser que você tenha muito Link de Internet sobrando,mas isso você vai configurando aos poucos conforme suas necessidades.
Observando o valor setado no $download_speed = 512; // kbytes percebi que mesmo você colocando outros valores,o thunder faz os downs em média à 80~100kbps.Então uma sugestão de um valor que trabalha (meio) fixo é o valor 5 (sugestão de um colega do forum).O valor "5" fara com que o thunder faça os downs em média de 35kbps (280kbytes).
$redir = "301:"; // keep empty if you need a internal rewriter (O valor padrão é 302)
Esta opção por default vem setada em "302".Mas basta seta-la em 301 para evitar de ter que fazer algumas configurações adicionais nos redirecionamentos das url's para o ThunderCache.
Tutorial load balance (paralelo)+Debian+ThunderCache+serv idor MK 3.13~3.22
8º Parte:
Bom,para não haver problemas na configuração do nosso sistema,siga algumas das orientações abaixo:
- Instale o Sistema Mikrotik apenas com as configurações básicas,Controle de banda,Nat,Sistema de autenticação PPPoE(Recomendado)
- Cuidado com as configurações em suas regras no MK,principalmente as regras no Firewall Rules,pois regras incorretas/desnecessarias nessa area poderão comprometer totamente o desempenho do Proxy.
- Não altere nenhuma configuração no Debian-Proxy além das mencionadas acima,(A não ser que você saiba exatamente o que esta fazendo)
Continuando...
Vamos agora para o 3º e ultimo arquivo.Na verdade em nosso proxy existem mais arquivos que poderão ser alterados,mas através desses 3 ja poderemos fazer nosso sistema proxy funcionar sem problemas.
Vamos agora editar o Resolv.config
Bom,nesse momento você ja devera estar conectado em sua rede e navegando normalmente,então vamos fazer a seguinte etapa:
No Windows Xp,em executar digite: nslookup
No Windows Vista,em iniciar pesquisa digite: nslookup
Pós isso irá lhe retornar uma janela com a seguinte mensagem:
http://img132.imageshack.us/img132/9288/tutorial02.jpg
Então...
Abra o resolv.config e apague o ip que você encontrar la dentro(Somente apague o ip)e onde estava o ip coloque o novo endereço de ip que nos foi apresentado na imagem acima.
Ficara assim:
http://img22.imageshack.us/img22/5708/tutorial03l.jpg
Pronto! Salve e Feche...
"Através de testes mais longos/especificos,fica aqui uma sugestão: coloque em nameserver o gateway do debian"
Bom pessoal,apartir daqui nosso sistema estara funcionando tranquilamente.
Os arquivos ja estarão sendo armazenados no cache,você podera testar isso fazendo um download de um determinado arquivo(Desde que ele esteja dentro dos padrões de tamanho setado anteriormente)e depois limpando seu navegador(Se não sabe qual opção usar para limpar,então escolha "escluir tudo" desde que esteja usando o internet explorer7,mas não vou entrar muito em detalhes nessa area,pois acredito que você não tera problemas quanto a isso rsrs).Então faça novamente o download do arquivo e repare que ele vira em uma velocidade maior que o tamanho da banda contratada pelo cliente.O uso do link ja que o arquivo esta vindo do proxy,sera apenas o uso do link de rede e não o uso do link de internet.Bom veja em queue tree as velocidades setadas para o cache full e ajuste conforme suas necessidades.
Tutorial load balance (paralelo)+Debian+ThunderCache+serv idor MK 3.13-3.22
9º Parte:
Problemas causados por nós mesmos!
Problemas que ocorrem com muita frequencia e que neste topico que estamos fazendo não irão ocorrer:
Veja abaixo um tópico que acabei de ler,este problema não ocorre necessariamente por um prolblema de LoadBalance,o mesmo pode ocorrer por uma configuração mal feita no proxy ou mikrotik.
Ajuda!,Loadbalance,Youtube ==>> An error occurred, please try again later.
Então como citei anteriormente,só faça as alterações que postei(Recomendado),e deixe seu MK totalmente limpo de regras mirabolantes e verão que funcionara tudo nas mais perfeitas condições.Depois que o sistema estiver implantado e você estiver usando-o,ai sim você vai adicionando regras e fazendo testes e caso surja algum problema no desempenho do proxy,ficará facil você deduzir quem esta causando o problema,"A nova regra ou o Sistema implantado anteriormente e que sem a nova regra funcionava perfeitamente?"Ficou fácil de entender né!
Bom,amanhã continua...
Entraremos na parte de fazer um LoadBalance que fuinciona prefeitamente,sem problemas do cliente ter que ficar preso a somente um link,sem quedas de messengers ou restrições em sites seguros.E ainda de quebra se livrando dos temídos P2P.
Calma,não pense que vou passar uma regra que bloqueia o acesso a acesses programas,pelo contrario,deixaremos eles funcionarem tranquilamente e você não tera problemas com clientes ligando e perguntando:
- PORQUE MEU ARES NUMCA CONECTA???
- PORQUE MEU EMULE TAMBÉM NÃO CONECTA???
- PORQUE MEU MSN FICA CAINDO TODA HORA???
Por hoje é sóh...Até mais passoal!!!
Fiquem todos com Deus :adore:
Tutorial load balance (paralelo)+Debian+ThunderCache+serv idor MK 3.13-3.22
10º Parte:
LoadBalance:
Servidor Mikrotik LoadBalance:
Primeiramente vamos nomear nossas interfaces,lembre-se que estamos seguindo o cenário descrito no inicio do topico!
Interfaces:
Ficara parecido com a figura abaixo:
http://img29.imageshack.us/img29/4194/tutorial04r.jpg
Certo...
O Cenário dos modens sera:
1 Modem em Modo Bridge com DHCP Desativado e Endereço de IP: 192.168.1.1 Mascara 24/30...
1 Modem em Modo Router com DHCP Desativado e Endereço de IP: 192.168.2.1 Mascara 24/30...
1 Modem em Modo Router com DHCP Desativado e Endereço de IP: 192.168.3.1 Mascara 24/30...
Agora em Ip address vamos adicionar nossos modens:
"Iremos adicionar apenas os 2 modens que estão em router!"
http://img269.imageshack.us/img269/4928/tutorial05.jpg
e...
http://img522.imageshack.us/img522/5834/tutorial06.jpg
Tudo certo,então vamos criar um endereço para o novo Servidor Mikrotik LB:
Ex.:
http://img18.imageshack.us/img18/7788/tutorial07.jpg
Criado os endereços em /ip address,iremos adicionar nossos modens no /ip routes
Ficara conforme abaixo:
http://img199.imageshack.us/img199/570/tutorial08.jpg
e...
http://img32.imageshack.us/img32/3696/tutorial09.jpg
Pronto!Routes adicionados...
Ow,pera ae... ta faltando um modem nessa história ai!!!
E esta mesmo é o nosso modem em modo bridge 192.168.1.1,então vamos adiciona-lo!
Básicamente o PPPoE Client,vamos mandar o MK discar...
http://img20.imageshack.us/img20/4241/tutorial10.jpg
Resumindo...
Nesse Servidor Mikrotik LB teremos 4 placas de rede que serão distribuidas da seguinte forma:
1 Placa de rede para nosso servidor LB se conectar ao Servidor Controle;
3 Placas de rede para os modens.
Então esse nosso servidor LB atuara como um modem,ou seja ele recebera os links e controlara as rotas de saida para cada serviço.
Vamos fazer uma marcação de rotas e portas.
Continua...:itsme:
Tutorial load balance (paralelo) + Debian + ThunderCache + servidor MK 3.13-3.22
Então pessoal,iria continuar agora a noite o tuto,mas a energia akee ficou num vai e vem maluco,tive que desligar akee lagumas coisas para o meu nobreak segurar a onda...infelizmente normalizou muito tarde,então amanhã continuarei o trabalho...
Uma Dica!
Estava fazendo uns testes e me deparei com a seguinte cena:
Conectado à rede como um cliente,eu tinha acesso aos modens que estavão roteados,ja que eles também estavão adicionados ao MK Controle e MK LB.Então eu podia pingar e até mesmo acessa-los via browser ou qualquer outro programa que busca redes.
Então para resolver o problema bloquiei o acesso aos ip's dos modens e tudo ficou resolvido!
Bom,comentarei isso amanhã durante a outra parte do tuto..
Boa noite a todos...
E aos amigos que quiserem comentar algo sobre o tuto ou até mesmo fazer alguma correção ou dar alguma dica,fique a vontade,que eu farei a alteração caso necessário...
Tutorial load balance (paralelo) + Debian + ThunderCache + servidor MK 3.13-3.22
11º Parte:
Regras para o LoadBalance:
É isso ai pessoal,tamuh ae em pé acordado e deitado sem dormir!!!
Vamos continuar com o tuto...
Bom,nesse momento ja temos nosso servidor MK LB ou BL como preferir,então vamos às regras:
/ip firewall filter
add action=drop chain=forward comment="Bloqueio de acesso ao modem DSL2 pela rede." \
disabled=no src-address=192.168.2.1
add action=drop chain=forward comment="Bloqueio de acesso ao modem DSL3 pela rede." \
disabled=no src-address=192.168.3.1
add action=accept chain=forward comment=\
"Total do Trafego gerado entre todos os Links" disabled=no out-interface=\
Link-Gerenciado
Regras 1 e 2: São para impedir o acesso ao modem pela rede.
(Nosso amigo Demo Bill,sugeriu logo acima um tipo de regra um pouco mais complexa para o bloqueio de acesso aos modens.Estas citadas por mim estão correspondendo perfeitamente.).
Regra 3: É para mostrar apenas o trafego total gerado pelos links.(Opcional)
Vejam que não adicionei o modem DSL1 para a regra de bloqueio,uma vez que não consegui acessa-lo via browser nem pinga-lo.Deve ser pelo fato dele estar em modo bridge ou até mesmo porque não foi adicionado ao /ip address(Por estar sendo discado pelo MK,não é necessário adicionar ao /ip address).Irei fazer mais alguns testes e caso necessário teremos que adicionar ele às regras de bloqueio.
Obs.:
REGRAS ABERTAS A COMENTÁRIOS
/ip firewall nat
add action=masquerade chain=srcnat comment="NAT - Modem DSL-1" disabled=no \
out-interface=Internet
add action=masquerade chain=srcnat comment="NAT - Modem DSL-2" disabled=no \
out-interface=Modem-DSL2
add action=masquerade chain=srcnat comment="NAT - Modem DSL-3" disabled=no \
out-interface=Modem-DSL3
/ip firewall mangle
add action=mark-routing chain=prerouting comment="Navegacao em FTP-Downloads" \
disabled=no dst-port=21 new-routing-mark=Link-2 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment="" disabled=no dst-port=22 \
new-routing-mark=Link-2 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment="" disabled=no dst-port=23 \
new-routing-mark=Link-2 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment="" disabled=no dst-port=25 \
new-routing-mark=Link-2 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment=\
"Protocolo responsavel por resolucao de DNS" disabled=yes dst-port=53 \
new-routing-mark=Link-2 passthrough=yes protocol=udp
add action=mark-routing chain=prerouting comment=\
"Navegacao em sites http e downloads" disabled=no dst-port=80 new-routing-mark=\
Link-2 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment="" disabled=no dst-port=110 \
new-routing-mark=Link-2 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment="" disabled=no dst-port=1080 \
new-routing-mark=Link-2 passthrough=yes protocol=tcp
add action=mark-packet chain=prerouting comment="Pacotes marcados para o Link-2" \
disabled=no new-packet-mark=Link-2 passthrough=yes routing-mark=Link-2
add action=mark-routing chain=prerouting comment=\
"Navegacao em sites https-encriptados" disabled=no dst-port=443 new-routing-mark=\
Link-3 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment=\
"Navegacao em messenger - Windows Lime Messenger" disabled=no dst-port=1863 \
new-routing-mark=Link-3 passthrough=yes protocol=tcp
add action=mark-routing chain=prerouting comment=\
"Navegacao em WebCam - Windows Live Messenger" disabled=no dst-port=6891 \
new-routing-mark=Link-3 passthrough=yes protocol=tcp
add action=mark-packet chain=prerouting comment="Pacotes marcados para o Link-3" \
disabled=no new-packet-mark=Link-3 passthrough=yes routing-mark=Link-3
Repare que a marcação para a regra da porta 53 esta desativada,em testes que estou realizando aqui,achei por bem deixar esta porta saindo pelo link default mesmo.REGRA EM TESTES
Veja abaixo como ficara nossa tabela filter rules:
http://img132.imageshack.us/img132/2785/tutorial14.jpg
e...
Veja abaixo como ficara nossa tabela Nat:
http://img7.imageshack.us/img7/5981/tutorial13hrc.jpg
e...
Veja abaixo como ficara nossa tabela mangle:
http://img406.imageshack.us/img406/6260/tutorial12.jpg
Foi adicionando alguns comentários em algumas portas,então os colegas podem sugerir comentários para as que estão sem e até mesmo alguma correção para algum comentário feito.
"Sugiro desabilitar o redirecionamento da porta 21(FTP),em testes aqui,percebi que alguns downs não estavam sendo iniciados devido a este redirecionamento,então caso alguém encontre problemas com FTP,deixe esta porta saindo pelo link default mesmo,ou seja,não faça nenhum redirecionamento desta porta"
Continua...
Tutorial load balance (paralelo) + Debian + ThunderCache + servidor MK 3.13-3.22
12º Parte:
Bom,não sei se sera necessário essa dica,então fica a pergunta:
Devo colocar as regras para redirecionamento de Downloads???
:itsme:
Tutorial load balance (paralelo) + Debian + ThunderCache + servidor MK 3.13-3.22
13º Parte:
Bom pessoal, a idéia de redirecionar os downloads funcionaria da seguinte forma:
Na marcação seria usado o modo content,onde iriamos simplesmente marcar as extensões dos arquivos que serão redirecionados para um link especeficado no mangle.
Então podemos marcar arquivos do tipo:
- exe (Encontrado em 90% dos arquivos disponíveis para Down).
- rar (Encontrado mais em sites de hospedagem ,megaupload por exemplo").
- zip (Pessoalmente tenho encontrado pouco,ja que o .rar tomou conta do mercado).
- iso (Mais difícil de encontrar).
- mp3 (Em muitos sites que podemos baixar o arquivo mp3,a extensão no final do link fica como html,então não estranhe se alguns mp3 não baixarem no link especificado.Por favor não va sair marcando extensão HTML).
Essas são apenas algumas das estensões que podemos redirecionar.
Da para fazer isso pelo squid também,porém não sei como,caso alguém se cantidate a disponibilizar a informação ,esteja a vontade!
Abaixo segue uma amostra do balanceamento dos links.Só para relembrar a nossa marcação do mangle, as portas distribuidas na figura abaixo são:
LINK1: Porta 53 e tudo o que não for marcado para os outros links,por exemplo:P2P,Jogos Online,Serviços de Audio e Vídeo(desde que esses serviços não usem as portas que estejam marcadas para outros links) etc.
LINK2: Portas 21,22,23,25,80,110 e 1080 (Basicamente a navegação limpa)
LINK3: Portas 443,1863,6891-6901(Essas creio que não estão exatas)
Veja abaixo como ficaria essa divisão na pratica:
http://img13.imageshack.us/img13/6061/tutorial16.jpg
Onde: 3.3Mpbs / 380.1kbps é a velocidade total dos links de Internet,ja o proxy esta la do outro lado fazendo a parte dele.
Coloquei em testes ontem as regras e até agora obtive exelentes resultados.
Mas fica um detalhe no ar,e o Thunder??? Ele puxa muito não é!!!
Então nos deparamos na situação em que ele vai usar muito do nosso link 2,link o qual esta nossa navegação "limpa",então como marcariamos os downs feitos por ele,uma vez que por exetensao do tipo flv não adiantaria,ja que um link de vídeo por exemplo do youtube seria sem extensão com final .flv:
http://www.youtube.com/watch?v=rjFxS26sAgQ
[ame]http://www.youtube.com/watch?v=rjFxS26sAgQ[/ame]
O Content não identifica a extensão flv,ele identifica apenas o final do link,então teriamos que marcar na fonte dele ,nesse caso o google.com.
Então teriamos uma marcação para os vídeos do youtube usando no content:google.com
Obs.:
Na imagem acima,apenas extensões .exe , .rar , .iso , .zip estão redirecionadas para o Link3.
Caso alguém discorde do que foi descrito acima,por favor é só dizer.Pois estou aqui para aprender junto com vocês!!!
Amanhã se eu tiver pouco serviço coloco as regras...
Tutorial load balance (paralelo) + Debian + ThunderCache + servidor MK 3.13-3.22
Falando em conteúdo,ta meio corrido akee nesses ultimos dias.
Estou devendo a regra de redirecionamento de downloads,então amanhã vou postar akee...
:itsme: