11
nov

[Projeto IPv6] O Início

{Nota do Autor} Este é o primeiro de uma série de artigos que irá apresentar um cenário de rede montado em cima de pilha dupla (IPv4 e IPv6) e IPv6 apenas. Irei retratar aqui experiências reais com este protocolo e mostrar como configurar a rede e os principais serviços. Não espere encontrar um guia teórico sobre o IPv6, ou qualquer um dos serviços configurados, pois parto do princípio que quem estiver acompanhando estes artigos já possui conhecimento básico sobre network e serviços de rede, como http, dns, email e etc. {/Nota do Autor}

Tudo começou com um curso de IPv6 na NIC.br que eu estava adiando há mais de ano. Até que parei de enrolar e fui fazer o curso em outubro. Não é que pra minha surpresa eu gostei muito mais do que parecia.

Mas como todos sabem quando eu gosto de uma coisa ou acho que seja realmente válido eu sou xiita mesmo, evangelizo com vontade e defendo até o fim. Pois é, com o IPv6 vai ser assim também.

Vamos lá, neste primeiro artigo vou falar de "tunnel broker", do cenário que estou utilizado e como você pode fazer algo semelhante

Convenções/Glossário

(v4): Refere-se a versão 4 do protocolo IP, utilizando tanto para serviços que rodam sob quanto para o protocolo em si
(v6): Idem ao anterior, mas para versão 6 do protocolo IP

ATA: Adaptador de Telefone Analógico para SIP
POP: Do inglês Ponto de Presença
 

O cenário Geral

Aqui em casa tenho uma estrutura de rede peculiar, o core dela é composto por:

  • 1 "switch" encore de 8 portas
  • 1 ATA 1FXS 1FXO
  • 1 ATA 2FXS
  • 1 Netbook ASUS eeePC 701 4G + 1 adaptador usb2ethernet
  • 1 Notebook Centrino 2G de RAM
  • 1 Notebook Dual Core 2G de RAM
  • 1 Roteador Wi-fi em Bridge

Os ATAs são para laboratórios de telefonia (nada haver com este artigo)

Com o netbook eu faço a borda da rede, ele recebe a conexão da NET e fecha o tunel IPv6 com a Sixxs[1] (já falo nisso), carrega um firewall, DHCP(v4), DNS(v4) e apenas para LAN, e mais alguns outros recursos.

Os dois notebooks possuem ubuntu desktop e virtualbox rodando. Para efeito dos artigos não importa em qual notebook está sendo executada cada máquina virtual, e TODOS os servidores são Debian Squeeze.

Por que ubuntu com virtualbox? Muito simples, porque eu ainda posso usa-los como estação de trabalho, pra alguém que venha me visitar e queira acessar a internet, ou até mesmo para em casos de pane no meu notebook de uso diário, se eu tiver uma boa rotina de backup (eu já tive, preciso reestabelecer).

Cenário para IPv6

O netbook fecha um tunel com a SIXXS através da CTBC em um POP localizado em Uberlândia, este tunel possui um IPv6 que me permite acesso a internet. Uma segunda interface de rede possui meu IPv4 privado e alguns IPv6 públicos de uma subnet /48 gentilmente cedida pela SIXXS/CTBC.

Existem:
um Quagga(versão 0.99.17) configurado com duas interfaces de rede roteando algumas subnets /64 do meu bloco para os meus servidores internet
{nota} Por que quagga? Por que num futuro próximo quero estudar OSPF e BGP, então por que não começar a montar a infra já pensando nisso? {/nota};

um servidor DNS com bind9 autoritativo sobre ipv6.langoni.net e futuramente sobre o reverso da minha subnet;

um servidor http com apache2, php5 e mysql responsável pela hospedagem de www.kadu.ipv6.langoni.net

um sistema cliente que será utilizado para testes internos e externos, falarei dele mais adiante.

Futuramente ainda será adicionado um serviço de ftp e um looking glass ao servidor http, um serviço de email (ainda não escolhi qual), a centralização da autenticação com LDAP, um servidor de  monitoramento para esta infra.

Fora os itens indicados com futuramente o restante já está todo em funcionamento.

Tunnel Broker

Segundo a wikipedia um tunnel broker, no contexto de computação, é um serviço que provê um tunel de rede. Estes tuneis podem prover conectividade encapsulada de uma infraestrutura existente para uma nova.[1]

No meu caso estou usando a SIXXS como provedor do tunnel por conta da parceria com a CTBC e um pop no Brasil. Lembre-se que você está encapsulando v6 sob v4, através de um túnel e tudo isso impacta na performance. Não venha dizer, minha conexão v6 está lenta, isso é esperado. O objetivo aqui é fazer testes de implementações, colocar redes locais em pilha dupla e ver o comportamento e por aí vai.

Vou falar mais um pouco sobre a SIXXS. Eles fornecem gratuitamente o acesso ao tunel e a todos os recursos necessários para se implementar pilha dupla pra quem não possui conectividade v6 nativa. Mas não é entrar e se cadastrar e pronto, e isso foi o que eu achei mais interessante.

Primeiro você cria uma entidade (ou usa uma já existente), se você fizer um whois CEL3-SIXXS encontrará informações sobre a minha entidade.

Segundo você tem que justificar o porque devem deixar você usar o túnel deles, e todas as solicitações futuras (subnet, dns e etc) devem ser justificadas também.

Além disso existe uma moeda local chamada ISK, sim tudo tem custo na SIXXS, solicitar um tunel, solicitar subnet e etc. Você ganha novos ISKs por conseguir provar que consegue manter o tunel online 24x7 ou o mais próximo disso, a cada semana você é remunerado com alguns ISKs por manter seu tunel funcionando. Pra vocês terem uma ideia somente depois de uma semana de funcionamento do tunel solicitado é que você terá ISKs para solicitar uma subnet. Não precisa haver tráfego no tunel, ele tem apenas que estar online. E o tunel pode ser feito em praticamente qualquer conexão de internet. Recomendo que todos leiam o FAQ no site deles antes de inciar a aventura.

Existem outros por aih, como o da he.net, este possui até uma certificação em IPv6 gratuita pra gente fazer depois que o lab estiver pronto. Maiores informações em [3]

E como eu, neste caso você, posso brincar também?

Vamos lá, primeiro passo, leia sobre o IPv6 (se ainda não o fez) e entenda como funciona a nova numeração IP. Mas tenha em mente o seguinte, analisando grossamente o IPv6 não houveram grandes mudanças, então tudo o que você pensa em v4 só precisa adicionar mais 96 bits e tá pronto! :p Ou seja o conceito todo do endereçamento de rede não mudou, só que o endereço deixou de ter 32 bits, passando para 128 e algumas coisas passaram a ser mais importantes dos que no v4, como o protocolo icmp.

Segundo passo, imagine sua infra, quantos servidores você quer subir e por que, qual hardware você vai ter disponível pra brincar, e pense em como você montaria em v4.

Terceiro passo, monte tudo em v4 e acrescente o v6, depois remova o v4 e veja como tudo funciona, ou não!

Sendo mais didático :)

Você precisa basicamente do seguinte, um computador (se for usar o tunel da sixxs ele tem que ficar ligado 24x7), um sistema de máquinas virtuais (eu gosto muito do virtualbox) e muita disposição. Lembre-se das palavras de Albert Einstein “Sucesso e genialidade, são 10 por cento de inspiração e 90 por cento de transpiração”.

Para ajudar um pouco mais vou citar como exemplo meu amigo e incentivador Thiago Oliveira. Ele topou a brincadeira e na estrutura da empresa onde ele trabalha está criando uma(s) máquina virtual para criarmos uma estrutura v6.
 

O maior problema são os testes, pra onde vou testar, como posso mandar um email, acessar uma página ou ainda, como posso saber se o que eu configurei aqui na minha rede está funcionando para o mundo?

Para isso ofereço um apoio e sugiro que outros procurem criar o mesmo. O cliente que identifiquei acima será uma máquina de acesso comportilhado em ambiente chroot. E eu ofereço o acesso a ela para quem quiser, basta entrar em contato comigo para acertar os detalhes. Lembrando que ela só oferece acesso IPv6 e que será monitorada o tempo todo se quiser brincar é pra brincar direito :D

Todo acesso dela e pra ela será feito em cima de IPv6, por isso somente com a sua estrutura v6 pronta é que será possível o acesso a ela. Existiram ping6, traceroute6, w3m (navegador em console), tcpdump e estou procurando um cliente de email pra console que seja "simples" de usar, indicações são bem vindas (tem que suportar pop3, smtp e imap e IPv6 é claro). Através dela você poderá testar o acesso a sua rede, navegação em páginas no seu webserver etc, etc, etc. Facilitando bastante a brincadeira :P

No próximo artigo irei falar mais sobre a configuração do tunel, da subnet e do DNS :D

Abraços a todos!

[1] http://www.sixxs.net
[2] http://en.wikipedia.org/wiki/Tunnel_broker
[3] http://en.wikipedia.org/wiki/List_of_IPv6_tunnel_brokers

17
out

[Dica do Dia] Gráficos de Consumo de Rede em Tempo Real

Olá para todos!

Vou explicar em detalhes, nas linhas abaixo, como  montar alguns gráficos de consumo de rede em tempo real. O principal objetivo é, como administrador de redes, ter uma visualização melhor do que acontece de tráfego, mas de forma simples, sem ter que acessar ao servidor e usar o iptraf ou sem ter que esperar o tempo médio de 5 muitos do cacti/MRTG. Sem mais demoras vamos lá!

Motivação

Há mais ou menos três anos atrás tive a oportunidade de trabalhar com equipamentos de rádio Nano Station da Ubitiqui e um detalhe sempre me chamou a atenção; o monitoramento de tráfego.
Ele traça um gráfico simples, com duas linhas, que apresentam o consumo de rede de cada interface.

Procurei no google, nestes últimos anos, uma forma semelhante de fazer, algum sistema pronto, e nada. Chegou o dia de colocar a mão na massa!

Primeiro eu tentei com RRD[1], o resultado ficou bom, mas bem aquem das minhas expectativas, eu queria fazer exatamente como no nano, o gráfico na tela, atualizando os pontos a cada X segundos, e não o reload de uma imagem a cada X segundos.

Resolvi então, através da engenharia reversa, criar um sistema semelhante.

Depois de alguns dias entendendo melhor javascript, jquery, flotr e outras coisinhas mais, consegui gerar um código funcional que permite fazer o gráfico de duas maneiras: usando o /proc/net/dev e usando regras do iptables.

Funcionamento

A ideia é bem simples, ler um contador e marcar pontos em um gráfico.

O download do código pode ser feito aqui.[2]

Você precisará de um servidor web com suporte a php.

O arquivo, após descompactado, irá criar o diretório monitor, que deve ser colocado onde possa ser acessado via navegador.

O sistema funciona com dois conjuntos de arquivos:
index.php e status.php - responsável por criar os gráficos da interface de rede
index2.php e status2.php - responsável por criar os gráficos baseado em regras do iptables.

index.php, no começo do arquivo tem a variável iface[]. Ajuste ela para a ou as interfaces que deseja monitorar. Está com eth1 e eth2 comentado (// no começo). Depois no arquivos status.php você ajusta a variável path com o caminho onde ele vai encontrar o script get_net_info.sh, que está na raiz do diretório monitor.

No index2.php você ajusta a variável $serie_nome de modo a informar
quantas são e quais são as origens de dados.
No status2.php você ajusta as variáveis de captura do iptables

no iptables crie duas chains personalizadas chamadas YLOG e YJUMP (o
nome é sugestivo, basta apenas modificar o status2.php de acordo com os
nomes que vc criar.
Eu fiz a seguinte adição de regras

$IPT -t filter -N YLOG
$IPT -t filter -N YJUMP
#WEB
iptables -t filter -A YLOG -m multiport -p tcp --sport 80,443 -j YJUMP
iptables -t filter -A YLOG -m multiport -p tcp --dport 80,443 -j YJUMP
#SMTP
iptables -t filter -A YLOG -m multiport -p tcp --sport 25,587 -j YJUMP
#POP/IMAP
iptables -t filter -A YLOG -m multiport -p tcp --sport 110,143,993,995 -j
YJUMP

iptables -t filter -I INPUT -j YLOG
iptables -t filter -I OUTPUT -j YLOG
iptables -t filter -I FORWARD -j YLOG

A segunda chain personalizada foi utilizada apenas para evitar o uso do
jump LOG, que encheu meu HD de um dia para o outro, desta modo a
contagem ainda funciona e não gera nenhuma interferência nas regras do
firewall.

É MANDATÓRIO que estas regras sejam as primeiras de cada uma das chains
da tabela filter.

Foi tudo preparado no fim de semana e pode conter bugs e código mal escrito. Quem quiser contribuir com modificações e sugestões deve se sentir a vontade!
Em [3] encontra-se a documentação da API que desenha os gráficos, você pode utilizá-la para personalizar a visualização dos gráficos.

Abraços a todos!

[1]http://oss.oetiker.ch/rrdtool/
[2]http://www.kadu.langoni.net/net_monitor-1.0.tgz
[3]http://flot.googlecode.com/svn/trunk/API.txt

 

19
set

[Comemoração] 6 anos de blog!!!!

Na última semana, mais precisamente dia 14 de setembro, o blog completou 6 anos de vida! É uma longa jornada, muitas histórias, muitos acontecimentos e fica difícil lembrar de todos.

Selecionei alguns dos fatos mais importantes que compartilhei com vocês ao longo destes 6 anos.

  • Quando descobri o sexo da Ana Luiza

[Paizão] Úlltimas Notícias

É meus caros amigos,

É chegada a hora da revelação.....
Enquanto o médico examinava o neném no ultrason eu estava muito apreensivo. Achei legal porque consegui identificar algumas pequenas partes do corpinho (como o bracinho).
Ele vira para Anamada e fala:
_ Está com aproximadamente 450g e tem cerca de 22cm de comprimento, crescendo direitinho sem problemas....
E se dirige a mim dizendo:
_ E você pode comprar um 38!

É UMA MENINAAAAAAA!!!!!!

 

  • Quando Ana Luiza Nasceu!!!

ana Luiza!

 

  • Muitas piadas

http://www.kadu.langoni.net/?q=node/305

  • Emiti opiniões

http://www.kadu.langoni.net/?q=node/382

 

Enfim, interagi com várias pessoas de várias formas.

Sofri um bocado com comentários que poderiam ter sido facilmente escritos por um jumento, mas isso faz parte.

O que pude tirar da re-leitura de seis anos de blog é que eu venho amadurecendo, venho mudando, com o passar dos anos, pontos de vista diferentes, experiências diferentes e por aí vai.

Não posso me queixar, eu gosto do meu blog e pretendo mante-lo como um pequeno registro da minha vida por um bom tempo!

Abraços a todos e parabéns ao blog!!!

13
set

[Dia Dia] Minha vida é andar por este país...

Boa noite! Eu tô morrendo de sono mas resolvi dar uma atualizadinha rápida aqui =D

Cheguei hoje por volta das 20:00 em Cachoeiro de Itapemirim/ES, minha terra natal. A viagem tem motivo duplo, como sempre visitar a família, mas desta vez viemos atender um cliente também, sim o Cleiton da netsoluções também veio.

A viagem foi boa, apesar de uns erros de percurso, e chegamos dentro do horário esperado. Cheguei recebendo um abraço do papai, apresentei ele ao Nelson e o Cleiton, depois mamãe veio me dar um abraço também foi devidamente apresentada.

Por incrível que pareça já estou morrendo de saudades da minha casa, sou uma criatura de hábitos, e essas mudanças repentinas me fazem pirar! Eu gosto mesmo é do meu cantinho :p

Atualização realizada, vou caçar rumo da cama que amanhã acordo cedo!

Abraços a todos!

11
set

[Dia a Dia] Castelando sobre nada =p

Domingo a tarde, depois de um sábado pra lá de legal, o que fazer?
Navegar na Internet, jogar video game, compor alguma coisa ou até tocar um violãozinho; todas opções muito boas.

Optei por iniciar pela internet, uma geral no facebook, estava ha mais de 24h sem acessa-lo, e resolvi ver o movimento no blog. Ao entrar dou de cara com um comentário de título "Wake up!"

Pensei, deve ser spam, vou apagar, ao clicar vejo que não era, me deparei com a seguinte mensagem:

"quando você acordar desse delírio de status medíocre que você quer mostrar aos outros,"

Só que está tachado, eu retirei pra melhorar a leitura. Não pude resistir a curiosidade e fui ver quem havia postado tamanha bobagem, sim como dono do blog eu vejo o que vcs preenchem no campo email. Não pra minha surpresa quem colocou isso usou um email e nome falso anyone(anyone@anyone.com). Já comecei a ter certeza que quem postou não sabe o que fala e ainda é covarde, mas não vem ao caso. Lembrei ainda que este mesmo nome já havia comentado uma das minhas divagações, no texto [Divagando] Das coisas que eu vejo ou Do modo que eu vejo, que na verdade eu havia pensando que era só mais um amontoado de palavras sem sentido (sim, nem sempre leio os comentários com a devida atenção). Resolvi rele-lo e como eu já esperava não se trata de um amontado de palavras inúteis, ao vento. O comentário era:

"Tudo nessa vida tem um preço e brincar com o sentimento custa muito caro. Hoje você não valoriza o amor que te é oferecido com tanta sinceridade e paixão, amanhã, quando você acordar desse delírio de status medíocre que você quer mostrar aos outros, pode perceber que destruiu esse amor com suas próprias atidudes. A longanimidade é uma qualidade que eu tenho, mas ela tem limite."

Pra mim é uma pessoa falando de si mesma, divagando também, e a única utilidade foi aprender o significado de longanimidade[1]:

s.f. Paciência para suportar as ofensas dos outros ou os próprios sofrimentos; generosidade, magnanimidade.

Aí olhei atentamente pra parte em destaque e pensei: Puta que o pariu!! Quem fez estes comentários pode até ser um covarde, mas devia ter conhecido minha ex-namorada e falado essas coisas pra ela. Juro que cheguei a considera-la o grande amor da minha vida, mas com um monte de atitudes idiotas, diversas vezes alertada de que estava fazendo merda, e um monte de palavras vazias, sentimentos mesquinhos e falta de visão ela conseguiu desfazer isso.

Eu sofri muito depois do último término, foquei muito no trabalho (este foi o lado positivo), eu fiquei mal mesmo, sem comer, sem dormir, fumando alucinadamente, mas agora passou. Eu cheguei a ficar com ela duas vezes depois que terminamos, mas na segunda fez me deparei no dia seguinte com uma completa ausência de sentimentos.
Com isso concluí que era só tesão e não valeria a pena reviver toda uma história de fracasso de um relacionamento só por causa de sexo. Sexo tudo mundo faz, todo mundo quer, é só ir tentando, uma hora outra parceira que te deixe louco.

Só acho uma pena que ela não tenha escutado o que eu dizia antes, enquanto ainda existia sentimento. É triste ver um sentimento tão bonito se desfazer assim. Mas não adiantava, por mais que eu jurasse, me declarasse e me entregasse ela nunca confiou em mim, basicamente por causa do meu passado e do passado dela. Eu ainda não entendo como alguém pode passar tanto tempo preso a algo que diz que está morto.

Depois que passou a tristeza e eu voltei a sair, reencontrei pessoas que não via há algum tempo, e percebi que essas pessoas me aceitam por quem eu sou, não pelo fui ou fiz. Como teria sido bom se minha ex pensasse assim. Mas paciência!! Passei por uma fase onde não valia nada, fiquei com algumas pessoas mas não tinha interesse de rever a pessoa, isso me era estranho, era culpa minha e não das pessoas.

Agora parece que a maré acalmou, estou mais tranquilo, mais sereno e mais feliz. Na verdade muito, mas muito feliz. A vida é boa pra mim, tenho saúde pra trabalhar muito e realizar meus sonhos, e também pra sair no fim de semana e tomar todas com os amigos. Por que cargas d'água deveria eu reclamar, ou ficar triste por que um amor acabou?

Sabe o que é mais engraçado?? O blog vai fazer 6 anos e eu estava relendo tudo para fazer um apanhado geral destes 6 anos de e-stórias[2] e no dia 12/05/2009, provavelmente a gente devia ter terminado, eu postei um texto que dizia:

"Amores vem, amores vão, essa é a maré da vida
As vezes ela está alta e cheia de felicidades
As vezes ela está baixa e tudo parece desmoronar
Mas o bom tempo sempre virá..."

O bom tempo sempre virá e o fim é sempre um novo começo!!!!

Já divaguei d+!

Abraços a todos!

[1]http://www.dicio.com.br/longanimidade/
[2]e-stória é uma música dos Engenheiros do Hawaii, achei legal a conotação que deu para o blog, e-stórias: histórias eletrônicas.

 

Páginas

Inscreva-se em www.kadu.langoni.net RSS