Primeiro você marca e depois você salva. Segunda opção. 2016-07-28 18:38 GMT-03:00 Keppler <[email protected]>:
> Olá Noilson, obrigado por me responder! > > Fui atrás da sua dica (iptables -A POSTROUTING -t mangle -j CONNMARK > --save-mark) e pesquisei sobre "CONNMARK" e "mark", mas para ser sincero > acabei ficando com mais dúvidas. > > Nesta parte do meu script onde trato os pacotes marcados: > iptables -I PREROUTING -t mangle -i $placa_rede_interna -s $rede_interna > -d 0/0 -p tcp -m multiport --dports 110,23,25,465,587 -j MARK --set-mark > 0x10 > iptables -I PREROUTING -t mangle -i $placa_rede_interna -s $rede_interna > -d 0/0 -p tcp -m multiport --dports 80,443 -j MARK --set-mark 0x20 > > Como ficaria com a sua sugestão? Seria algo neste sentido: > > *iptables -A PREROUTING -t mangle -j CONNMARK --restore-mark << Nesta > posição?* > iptables -I PREROUTING -t mangle -i $placa_rede_interna -s $rede_interna > -d 0/0 -p tcp -m multiport --dports 110,23,25,465,587 -j MARK --set-mark > 0x10 > iptables -I PREROUTING -t mangle -i $placa_rede_interna -s $rede_interna > -d 0/0 -p tcp -m multiport --dports 80,443 -j MARK --set-mark 0x20 > *iptables -A POSTROUTING -t mangle -j CONNMARK --save-mark** << Nesta > posição?* > > > > > > > Em 28-07-2016 08:36, Noilson Caio escreveu: > > Jurgen, beleza ? As métricas de rede/roteamento depois que saem de sua > caixa, saem de seu controle. Da origem até sua caixa, mesma coisa. =] . Só > para alinhar o pensamento. > Tem um macete com o alvo CONNMARK que armazena a marcação associada com a > conexão, que parece ser um ou uns dos seus problemas =] > > iptables -A POSTROUTING -t mangle -j CONNMARK --save-mark > > 2016-07-27 14:13 GMT-03:00 Keppler <[email protected]>: > >> Ola pessoal, tudo bem? >> >> Implementei um Load Balancing, que ainda está em ambiente de testes, e >> aparentemente está funcionando OK. >> O que notei é que após implementar o Load Balancing, o desempenho da >> internet parece ter caído. >> >> Vou explicar melhor: >> Quanto compartilho a conexão, da forma como normalmente se faz usando >> somente um link (com somente 1 Gateway), quando dou um "ping" de alguma >> estação Windows qualquer, o ping corre "lisinho". Por exemplo vejam a saída >> do comando abaixo: >> >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=10ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=8ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=10ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=10ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> Resposta de 200.147.67.142: bytes=32 tempo=9ms TTL=242 >> >> >> E também quando uso o comando "tracert" para verificar as rotas e por >> qual roteador estão saindo os pacotes, noto que os saltos entre os >> roteadores no caminho ocorrem bem mais rápido do que quanto o Load >> Balancing está ativo. >> >> >> Já quando ativo o Load Balancing (ativando as tabelas de roteamento em >> "/etc/iproute2/rt_table" para os 2 links e ativando as regras), quando dou >> o mesmo comando "ping" de alguma estação Windows, noto que o retorno do >> comando ping parece ficar mais lento o tempo de retorno dos pacotes também >> ficam mais lentos. >> Vejam abaixo a saída do comando ping (em uma estação Windows) após ativar >> o Load Balancing: >> >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Esgotado o tempo limite do pedido. >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Esgotado o tempo limite do pedido. >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=8ms TTL=52 >> Esgotado o tempo limite do pedido. >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=20ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=30ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Esgotado o tempo limite do pedido. >> Resposta de 200.221.2.45: bytes=32 tempo=10ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Resposta de 200.221.2.45: bytes=32 tempo=9ms TTL=52 >> Esgotado o tempo limite do pedido. >> >> E agora, se no prompt do Windows eu digitar o comando "tracert >> www.uol.com.br", observo que os saltos dos pacotes entre os roteadores >> pelo caminho percorrido se tornam mais lendo para retornar. >> >> Abaixo segue a configuração que estou usando para fazer o Load Balancing: >> >> # Dados da interfaces de rede conectadas com a internet - Link 1 >> placa_rede_1=eth1 >> tabela_1=nome_tabela_1 >> gateway_1=192.168.100.254 >> #peso_balanceamento_link_1=30 >> peso_balanceamento_link_1=10 >> >> # Dados da interfaces de rede conectadas com a internet - Link 2 >> placa_rede_2=eth2 >> tabela_2=nome_tabela_2 >> gateway_2=192.168.200.254 >> #peso_balanceamento_link_2=70 >> peso_balanceamento_link_2=10 >> >> # Dados da Rede Interna >> placa_rede_interna=eth0 >> rede_interna=192.168.50.0/24 >> >> ### Fim das Variáveis >> >> #Carregar Modulos >> echo "Carregando Modulos" >> modprobe iptable_nat >> modprobe ip_nat_ftp >> modprobe ipt_MARK >> echo 1 > /proc/sys/net/ipv4/tcp_syncookies >> echo 1 > /proc/sys/net/ipv4/ip_forward >> echo 1 > /proc/sys/net/ipv4/ip_dynaddr >> >> >> # Zero (0) para desativado e (1) para ativado >> echo "1" > /proc/sys/net/ipv4/conf/default/rp_filter >> echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter >> >> # Deletar a rota default >> echo "Deletando Rota Default" >> ip route del default >> >> # Limpa as regras das tabelas >> echo "Limpando Regras das Tabelas" >> ip route flush table $tabela_1 >> ip route flush table $tabela_2 >> >> # Define a rota para as tabelas >> echo "Definindo as Rotas para as Tabelas" >> ip route add default dev $placa_rede_1 via $gateway_1 table $tabela_1 >> ip route add default dev $placa_rede_2 via $gateway_2 table $tabela_2 >> >> # Define as regras para balanceamento dos links >> ip route add default scope global nexthop via $gateway_1 dev >> $placa_rede_1 weight $peso_balanceamento_link_1 nexthop via $gateway_2 dev >> $placa_rede_2 weight $peso_balanceamento_link_2 >> >> ## Regras >> echo "Definindo as Marcas dos para o Kernel" >> ip rule add fwmark 0x10 lookup $tabela_1 prio 3 >> ip rule add fwmark 0x20 lookup $tabela_2 prio 3 >> >> >> # Aplicar as regras >> echo "Aplicando as Regras" >> ip route flush cache >> >> >> # Compartilha a conexãi >> echo "Compartilhando a Conexao atravez das Interfaces de Rede" >> iptables -t nat -A POSTROUTING -o $placa_rede_1 -j MASQUERADE >> iptables -t nat -A POSTROUTING -o $placa_rede_2 -j MASQUERADE >> >> echo "Definindo quais pacotes saem por qual link" >> iptables -I PREROUTING -t mangle -i $placa_rede_interna -s $rede_interna >> -d 0/0 -p tcp -m multiport --dports 110,23,25,465,587 -j MARK --set-mark >> 0x10 >> iptables -I PREROUTING -t mangle -i $placa_rede_interna -s $rede_interna >> -d 0/0 -p tcp -m multiport --dports 80,443 -j MARK --set-mark 0x20 >> >> >> Enfim, me dúvida é se posso melhor o desempenho deste Loading Balancing >> ??? >> Ou quando usa-se um Loading Balancing, perde-se um pouco do desempenho >> quando se está roteando os pacotes por entre os Gateways? >> Ou, no caso do meu Script, se vocês observarem estou marcando >> determinados pacotes para saírem por um Gateway específico, ou seja, no meu >> exemplo que a "navegação comum" (portas 80 e 443) utilize o Gateway 2 (que >> é o Link 2). Em outras palavras, marcar pacotes para depois redirecioná-los >> para gateways específicos prejudicam o desempenho/fluxo das entradas e >> saídas dos pacotes? >> >> Espero ter sido claro! >> >> Alguém já passou por isso? Dá para melhorar? >> >> abraço, >> Jurgen >> >> -- >> GUS-BR - Grupo de Usuários de Slackware Brasil >> http://www.slackwarebrasil.org/ >> http://groups.google.com/group/slack-users-br >> >> Antes de perguntar: >> >> http://www.vivaolinux.com.br/artigo/Como-elaborar-perguntas-para-listas-de-discussao >> >> Para sair da lista envie um e-mail para: >> [email protected] >> --- Você está recebendo esta mensagem porque se inscreveu no grupo >> "Slackware Users Group - Brazil" dos Grupos do Google. >> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, >> envie um e-mail para [email protected]. >> Para obter mais opções, acesse https://groups.google.com/d/optout. >> > > > > -- > Noilson Caio Teixeira de Araújo > https://ncaio.wordpress.com > https://br.linkedin.com/in/ncaio > https://twitter.com/noilsoncaio > https://jammer4.wordpress.com/ > http://8bit.academy > > > -- > GUS-BR - Grupo de Usuários de Slackware Brasil > http://www.slackwarebrasil.org/ > http://groups.google.com/group/slack-users-br > > Antes de perguntar: > > http://www.vivaolinux.com.br/artigo/Como-elaborar-perguntas-para-listas-de-discussao > > Para sair da lista envie um e-mail para: > [email protected] > --- > Você recebeu essa mensagem porque está inscrito no grupo "Slackware Users > Group - Brazil" dos Grupos do Google. > Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie > um e-mail para [email protected]. > Para mais opções, acesse https://groups.google.com/d/optout. > > > -- > GUS-BR - Grupo de Usuários de Slackware Brasil > http://www.slackwarebrasil.org/ > http://groups.google.com/group/slack-users-br > > Antes de perguntar: > > http://www.vivaolinux.com.br/artigo/Como-elaborar-perguntas-para-listas-de-discussao > > Para sair da lista envie um e-mail para: > [email protected] > --- > Você recebeu essa mensagem porque está inscrito no grupo "Slackware Users > Group - Brazil" dos Grupos do Google. > Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie > um e-mail para [email protected]. > Para mais opções, acesse https://groups.google.com/d/optout. > -- Noilson Caio Teixeira de Araújo https://ncaio.wordpress.com https://br.linkedin.com/in/ncaio https://twitter.com/noilsoncaio https://jammer4.wordpress.com/ http://8bit.academy -- GUS-BR - Grupo de Usuários de Slackware Brasil http://www.slackwarebrasil.org/ http://groups.google.com/group/slack-users-br Antes de perguntar: http://www.vivaolinux.com.br/artigo/Como-elaborar-perguntas-para-listas-de-discussao Para sair da lista envie um e-mail para: [email protected] --- Você está recebendo esta mensagem porque se inscreveu no grupo "Slackware Users Group - Brazil" dos Grupos do Google. Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [email protected]. Para obter mais opções, acesse https://groups.google.com/d/optout.

