<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Petryx :: &#187; Dicas Linux</title>
	<atom:link href="http://petryx.blogrs.com.br/category/dicaslinux/feed/" rel="self" type="application/rss+xml" />
	<link>http://petryx.blogrs.com.br</link>
	<description>Linux,Java,Postgresql,Banco de dados, Processamento de imagens</description>
	<lastBuildDate>Fri, 30 Jul 2010 11:11:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>K3b o retorno</title>
		<link>http://petryx.blogrs.com.br/2009/11/08/k3b-o-retorno/</link>
		<comments>http://petryx.blogrs.com.br/2009/11/08/k3b-o-retorno/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 20:55:56 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[k3b]]></category>
		<category><![CDATA[kde4]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=200</guid>
		<description><![CDATA[Quando comecei a utilizar o Kde 4.2, senti muita falta do k3b para mim uma das melhores interfaces gráficas para gravar CDs/DVDs. O k3b foi recentemente portado para o Kde4 na versão K3b 1.68.0 alpha3, embora seja alpha funciona super bem. Então vamos colocar os comandos no shell e fazer esse bichinho funcionar. Dependências - [...]]]></description>
			<content:encoded><![CDATA[<p>Quando comecei a utilizar o Kde 4.2, senti muita falta do k3b para mim uma das melhores interfaces gráficas para gravar CDs/DVDs. O k3b foi recentemente portado para o Kde4 na versão K3b 1.68.0 alpha3, embora seja alpha funciona super bem.</p>
<p>Então vamos colocar os comandos no shell e fazer esse bichinho funcionar.</p>
<p><strong>Dependências</strong></p>
<p>- KDE >= 3.2<br />
- QT >= 3.2 Compilado com suporte a threads<br />
- cdrecord/mkisofs<br />
- dvd+rw-tools versão >= 0.7</p>
<p><strong>Baixando</strong></p>
<p>localhost ~#wget https://sourceforge.net/project/downloading.php?group_id=26138&#038;filename=k3b-1.68.0alpha3.tar.bz2</p>
<p><strong>Compilando à moda antiga &#8211; Passo a Passo -</strong></p>
<p>localhost ~ # tar -xjvf k3b-1.68.0alpha3.tar.bz2<br />
localhost ~ # cd k3b-1.68.0/<br />
localhost ~ # mkdir build<br />
localhost ~ # cd build/<br />
localhost ~ # cmake ..<br />
localhost ~ # make<br />
localhost ~ # make install</p>
<p>Se der tudo ok é só começar a gravar suas mídias com o k3b.</p>
<p>Boa sorte.</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2009/11/08/k3b-o-retorno/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Desabilitando a autoindentação do VIM</title>
		<link>http://petryx.blogrs.com.br/2009/04/03/desabilitando-a-autoidentacao-do-vim/</link>
		<comments>http://petryx.blogrs.com.br/2009/04/03/desabilitando-a-autoidentacao-do-vim/#comments</comments>
		<pubDate>Sat, 04 Apr 2009 00:18:11 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[dicas Linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=142</guid>
		<description><![CDATA[Sempre que começo a escrever algum código com o VIM e necessito colar algo o VIM autoindenta! Inseri tabs ou comentários, então pesquisando na web descobri uma maneira simples de desabilitar a autoindentação: :set paste Depois de ter colado o que eu quero, para habilitar novamente a autoindentação basta digitar: :set nopaste Existem outras formas, [...]]]></description>
			<content:encoded><![CDATA[<p>Sempre que começo a escrever algum código com o VIM e necessito colar algo o VIM autoindenta! Inseri tabs ou comentários, então pesquisando na web descobri uma maneira simples de desabilitar a autoindentação:</p>
<pre name='code' class='sh'>
:set paste
</pre>
<p>Depois de ter colado o que eu quero, para habilitar novamente a autoindentação basta digitar:</p>
<pre name='code' class='sh'>
:set nopaste
</pre>
<p>Existem outras formas, mas essa achei mais fácil de me lembrar é bem intuitiva.</p>
<p>fonte:<a href="http://blog.exeko.com/2007/12/23/debian-vi-disable-autoindent-when-pasting/">blog.exeko.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2009/04/03/desabilitando-a-autoidentacao-do-vim/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>O que tem na memória RAM?</title>
		<link>http://petryx.blogrs.com.br/2009/03/01/o-que-tem-na-memoria-ram/</link>
		<comments>http://petryx.blogrs.com.br/2009/03/01/o-que-tem-na-memoria-ram/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 02:11:28 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[Sem categoria]]></category>
		<category><![CDATA[dicas Linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=138</guid>
		<description><![CDATA[Para quem usa Linux é fácil descobrir. Basta rodar o seguinte comando: #cat /dev/mem Ficou elegível experimente então: #cat /dev/mem&#124;strings Mostra todas as strings que estão na memória ram. Obrigado pela visita.]]></description>
			<content:encoded><![CDATA[<p>Para quem usa Linux é fácil descobrir. Basta rodar o seguinte comando:</p>
<pre name='code' class='sh'>
#cat /dev/mem
</pre>
<p>Ficou elegível experimente então:</p>
<pre name='code' class='sh'>
#cat /dev/mem|strings
</pre>
<p>Mostra todas as strings que estão na memória ram.</p>
<p>Obrigado pela visita.</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2009/03/01/o-que-tem-na-memoria-ram/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Grub com Raid</title>
		<link>http://petryx.blogrs.com.br/2009/01/24/grub-com-raid/</link>
		<comments>http://petryx.blogrs.com.br/2009/01/24/grub-com-raid/#comments</comments>
		<pubDate>Sat, 24 Jan 2009 20:41:03 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[Sem categoria]]></category>
		<category><![CDATA[dicas Linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=131</guid>
		<description><![CDATA[Depois de um tempo sem novidades no blog, consegui um tempo para fazer um artigo sobre o grub com raid1. Neste artigo trago um exemplo hipotético de Raid com dois Hard Drives Raid nível 1, com o bootloader grub. Não viso mostrar como fazer o Raid via software no Linux; a intenção é somente como [...]]]></description>
			<content:encoded><![CDATA[<p>Depois de um tempo sem novidades no blog, consegui um tempo para fazer um artigo sobre o grub com raid1.</p>
<p>Neste artigo trago um exemplo hipotético de Raid com dois Hard Drives Raid nível 1, com o bootloader grub.<br />
Não viso mostrar como fazer o Raid via software no Linux; a intenção é somente como configurar o grub para que funcione nos dois discos.</p>
<p>O primeiro problema é instalar o grub na MBR dois HDs.</p>
<p>Então vamos resolver o primeiro problema com os seguintes comandos:</p>
<p><strong></p>
<p>localhost # grub</p>
<p>grub>find /boot/grub/stage1</p>
<p>(hd0,0)</p>
<p>(hd1,0)</p>
<p></strong></p>
<p>Com a resposta do comando podemos ver que existem os arquivos necessários para instalar o grub nos dois discos (hd0,0)=hda ou sda, e (h1,0)=hdb ou sbd.</p>
<p>Bom agora é só instalar manualmente o grub em cada disco.<br />
<strong></p>
<p>grub>device (hd0) /dev/sda ou (/dev/hda se for ide)</p>
<p>grub>root (hd0,0)</p>
<p>grub>setup (hd0)</p>
<p>grub>device (hd1) /dev/sdb</p>
<p>grub>root (hd1,0)</p>
<p>grub>setup (hd1)</p>
<p>grub>quit</p>
<p></strong></p>
<p>Pronto! O primeiro problema está resolvido.  Vamos ao segundo que é a configuração do grub, para que reconheça o sistema em raid.<br />
Quando o disco principal falhar, o boot deve ocorrer normalmente com o disco secundário no caso do raid1 com dois discos.</p>
<p>Vou mostrar somente a parte mais importante da configuração do arquivo /boot/grub/menu.lst, o restante não necessita ser modificado.</p>
<p><strong><br />
fallback 1</p>
<p>title       Gentoo<br />
root        (hd0,0)<br />
kernel      /boot/vmlinuz-2.6.11.7 root=/dev/md0 md=0,/dev/sda1,/dev/sdb1 ro<br />
boot</p>
<p>title       Gentoo (RAID Recovery)<br />
root        (hd1,0)<br />
kernel      /boot/vmlinuz-2.6.11.7 root=/dev/md0 md=0,/dev/sdb1 ro<br />
boot</p>
<p></strong></p>
<p>Beleza pessoal, este foi o primeiro artigo do ano.<br />
Sucesso para todos nós em 2009.</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2009/01/24/grub-com-raid/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Montando .nrg no Linux</title>
		<link>http://petryx.blogrs.com.br/2008/11/13/montando-nrg-no-linux/</link>
		<comments>http://petryx.blogrs.com.br/2008/11/13/montando-nrg-no-linux/#comments</comments>
		<pubDate>Thu, 13 Nov 2008 22:12:35 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[dicas Linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=120</guid>
		<description><![CDATA[A extensão nrg é um arquivo do Nero Burning Rom, que é usado para criar e queimar imagens ISO 9666. Mas as vezes não queremos queimar um DVD ou CD, somente necessitamos acessar o conteúdo. Como o Linux sempre tem solução pra tudo. Podemos montar a imagem nrg, com o seguinte comando: mount -o loop,offset=307200 [...]]]></description>
			<content:encoded><![CDATA[<p>A extensão nrg é um arquivo do Nero Burning Rom, que é usado para criar e queimar imagens ISO 9666.<br />
Mas as vezes não queremos queimar um DVD ou CD, somente necessitamos acessar o conteúdo.</p>
<p>Como o Linux sempre tem solução pra tudo. Podemos montar a imagem nrg, com o seguinte comando:</p>
<pre name='code' class='sh'>
mount -o loop,offset=307200 arquivo.nrg /mnt/temp
</pre>
<p>Se quiser saber mais sobre o formato de arquivo nrg acesse:<a href="http://en.wikipedia.org/wiki/NRG_(file_format)"> http://en.wikipedia.org/wiki/NRG_(file_format)</a>.</p>
<p>E não se esqueçam estamos com uma super promoção assine gratuitamente nosso <a href="http://petryx.blogrs.com.br/feed/">feeds</a>.</p>
<p>Forte Abraço.</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2008/11/13/montando-nrg-no-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HD perdeu a tabela de partições</title>
		<link>http://petryx.blogrs.com.br/2008/10/07/hd-perdeu-a-tabela-de-particoes/</link>
		<comments>http://petryx.blogrs.com.br/2008/10/07/hd-perdeu-a-tabela-de-particoes/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 00:25:06 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=115</guid>
		<description><![CDATA[Quem já passou por isso ? A uns dias atrás fui ligar meu notebook e recebi a seguinte mensagem: Operation System not found. Corri na prateleira para pegar o cd de boot do Kurumin, inicializou sem problemas, o hd foi encontrado na inicialização. Mas, sem nenhuma partição. Depois de alguns minutos tentando contabilizar tudo que [...]]]></description>
			<content:encoded><![CDATA[<p>Quem já passou por isso ?<br />
A uns dias atrás fui ligar meu notebook e recebi a seguinte mensagem: <strong>Operation System not found</strong>. Corri na prateleira para pegar o cd de boot do Kurumin, inicializou sem problemas, o hd foi encontrado na inicialização. Mas, sem nenhuma partição. Depois de alguns minutos tentando contabilizar tudo que tinha perdido, algo em torno de 90GB de informação, como por exemplo, códigos fontes, livros, trabalhos da faculdade, artigos, monografia. Claro que tudo tinha backup, mas desatualizado no mínimo 3 meses.<br />
Então começou a saga para tentar resolver o problema. Encontrei dois utilitários <a href="http://www.stud.uni-hannover.de/user/76201/gpart/">gpart</a> e <a href="www.cgsecurity.org/wiki/TestDisk">testdisk</a>, estes programas escaneiam o HD em busca do início e do final das partições, a diferença entre eles é o algoritmo de busca.<br />
Comecei utilizando o gpart conforme o comando abaixo. O qual escaneou o HD e não encontrou nenhuma partição, sendo que para escanear o HD levou umas boas horas.<br />
<strong>./gpart.linux /dev/hda</strong></p>
<p>Dando seguimento a saga para recuperar algo, tentei o testdisk. Já esse encontrou algumas partições primárias e outras estendidas. Fiquei loco de faceiro, pensei! solucionei o problema. Reiniciei a máquina quando fui montar as partições, somente obtive erros.</p>
<p>Ainda não desiste estou tentando novamente o gpart com alguns parâmetros diferentes. Para encontrar a tabela certinha é necessário que a geometria do disco esteja correta, ou seja, os parâmetros: número de cilindros(cylinders), cabeças(heads) e setores (sectors) estejam corretos. Esse valores podem ser descobertos com o seguinte comando:</p>
<p><strong>#/dmesg | grep CHS</strong> </p>
<p>Ajustei os parâmetros no gpart.</p>
<p><strong>gpart -C C,H,S /dev/hda </strong></p>
<p>Onde C é número de cilindros, H heads ,&#8230;.</p>
<p>Neste momento estou executando novamente o gpart. Desta vez já estou com os dedos cruzados.</p>
<p>Uma dica fácil e muito útil faça um backup da sua tabela de partição com o comando abaixo, será muito útil.</p>
<p>Backup da tabela de partições<br />
<strong><br />
dd if=/dev/hda of=hda.mbr bs=512 count=1<br />
</strong></p>
<p>Fomato legível</p>
<p><strong>fdisk -l > partitions.txt</strong></p>
<p>Restaurar</p>
<p><strong>dd if=hda.mbr of=/dev/hda bs=512 count=1<br />
</strong></p>
<p>Ahh!!!. Se eu tivesse feito isso antes.</p>
<p>Grande abraço a todos.  </p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2008/10/07/hd-perdeu-a-tabela-de-particoes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Cscope entendendo o código</title>
		<link>http://petryx.blogrs.com.br/2008/09/24/cscope-entendendo-o-codigo/</link>
		<comments>http://petryx.blogrs.com.br/2008/09/24/cscope-entendendo-o-codigo/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 00:10:42 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=111</guid>
		<description><![CDATA[Cscope é uma ferramenta que auxilia a analisar o código fonte de um projeto. Com ele podemos entender a estrutura do projeto ou o significado de uma função específica, estruturas e variáveis. Descobrir aonde funções específicas são utilizadas, determinar qual função chama uma função específica. Sendo estes alguns recursos do cscope. A ferramenta foi desenvolvida [...]]]></description>
			<content:encoded><![CDATA[<p>Cscope é uma ferramenta que auxilia a analisar o código fonte de um projeto. Com ele podemos entender a estrutura do projeto ou o significado de uma função específica, estruturas e variáveis. Descobrir aonde funções específicas são utilizadas, determinar qual função chama uma função específica. Sendo estes alguns recursos do cscope.</p>
<p>A ferramenta foi desenvolvida para a linguagem C, utilizando-a podemos economizar um bom tempo na analise de um projeto.</p>
<p>Utilizando o cscope</p>
<p>Cscope analisa os fontes encontrados no diretório atual, mas podemos usar a opção -r para varrer recursivamente os diretórios do projeto. </p>
<p>Na página do projeto tem um excelente <a href="http://cscope.sourceforge.net/large_projects.html">tutorial</a>. O tutorial tem como objetivo utilizar o cscope para analisar o código fonte do kernel.</p>
<p>Segui o tutorial, é muito legal facilita bastante o entendimento do código fonte.</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2008/09/24/cscope-entendendo-o-codigo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sniffing com Tcpdump utilizando filtros</title>
		<link>http://petryx.blogrs.com.br/2008/09/13/sniffing-com-tcpdump-utilizando-filtros/</link>
		<comments>http://petryx.blogrs.com.br/2008/09/13/sniffing-com-tcpdump-utilizando-filtros/#comments</comments>
		<pubDate>Sat, 13 Sep 2008 14:56:39 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=112</guid>
		<description><![CDATA[TCPDUMP é um sniffer de rede por linha de comando, sendo uma alternativa ao wireshark, ou quando é necessário fazer um script para capturar algum tráfego de rede. Enfim uma ferramenta muito útil para administrar uma rede, a qual auxilia a descobrir erros de configuração através da analise do tráfego, conhecer o tráfego existente e [...]]]></description>
			<content:encoded><![CDATA[<p>TCPDUMP é um sniffer de rede por linha de comando, sendo uma alternativa ao wireshark, ou quando é necessário fazer um script para capturar algum tráfego de rede. Enfim uma ferramenta muito útil para administrar uma rede, a qual auxilia a descobrir erros de configuração através da analise do tráfego, conhecer o tráfego existente e tomar medidas administrativas para melhorar a performance da rede.<br />
Executando o <strong>tcpdump</strong> sem nenhuma opção,  será capturado todo o tráfego de rede,  dificultando a  analise do conteúdo, por isso é interessante o uso de expressões.<br />
Com Tcpdump podemos usar expressões para filtrar o tráfego que desejamos capturar, os filtros podem ser aplicados por tipo, direção, protocolo, usando operadores, &#8230;</p>
<p>Alguns exemplos:</p>
<p>Mostra somente o tráfego da rede 192.168 que estiver passando na interface eth0</p>
<p><strong>localhost ~/# tcpdump -i eth0 -p net 192.168</strong></p>
<p>Mostra todo o tráfego da rede 192.168 com destino a porta 80</p>
<p><strong>localhost ~/# tcpdump -i eth0 -p net 192.168 and dst port 80</strong></p>
<p>Mostra somente os pacotes icmp na rede</p>
<p><strong>localhost ~/# tcpdump -i eth0 -p icmp</strong></p>
<p>Mostra o tráfego na rede 192.168 com exceção da porta 80</p>
<p><strong>localhost ~/# tcpdump -i eth0 -p  net 192.168 and not port 80</strong></p>
<p>Os exemplos acima demonstram algumas combinações, sendo possível fazer muito mais. Para obter mais informações veja o documento <a href="http://www.cs.ucr.edu/~marios/ethereal-tcpdump.pdf">TCPDUMP filters</a>.</p>
<p>Se o artigo foi útil para você, deixe um comentário. Será de grande estimulo para manter o blog.</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2008/09/13/sniffing-com-tcpdump-utilizando-filtros/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como funciona o traceroute ?</title>
		<link>http://petryx.blogrs.com.br/2008/08/31/como-funciona-traceroute/</link>
		<comments>http://petryx.blogrs.com.br/2008/08/31/como-funciona-traceroute/#comments</comments>
		<pubDate>Mon, 01 Sep 2008 00:23:49 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=106</guid>
		<description><![CDATA[Traceroute é um algoritmo definido pela rfc1393. Contudo antes de sabermos como funciona o traceroute é necessário entendermos o que é TTL (Time To Live). TTL significa o tempo de vida de um pacote na rede, cada vez que um pacote passa por um roteador o TTL é decrementado em uma unidade. Pode ocorrer de [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Traceroute</strong> é um algoritmo definido pela <a href="http://www.ietf.org/rfc/rfc1393.txt">rfc1393</a>. Contudo antes de sabermos como funciona o traceroute é necessário entendermos o que é TTL (Time To Live).  TTL significa o tempo de vida de um pacote na rede, cada vez que um pacote passa por um roteador o TTL é decrementado em uma unidade. Pode ocorrer de uma rede entrar em loop por erro de configuração no roteador ou defeito, então esse pacote fica eternamente circulando na rede. Para que isso não ocorra  o TTL é fundamental pois quando chegar a zero o roteador descarta o pacote. Outro uso do TTL é descobrir quantos roteadores têm até um determinado host, sendo essa a função do traceroute.</p>
<p><strong>Como funciona o traceroute</strong></p>
<p>O traceroute envia 3 pacotes com o TTL igual a 1. O primeiro hop responde que o pacote não pode ser transmitido porque TTL expirou com a mensagem ICMP Time-to-Live Exceeded (Type 11). Então o pacote é reenviado com TTL igual a 2 e o segundo roteador responde que o TTL expirou. Este processo continua até o destino ser encontrado.<br />
Com o traceroute conseguimos somente o caminho de ida até o destino, não sendo possível obter o caminho de retorno que pode ser diferente.</p>
<p><strong>Testando o traceroute</strong></p>
<pre name='code' class="sh">% traceroute www.terra.com.br
traceroute to www.terra.com.br (200.176.3.142), 30 hops max, 40 byte packets
 1   (192.168.254.254)  5.108 ms  6.458 ms  7.921 ms
 2  BrT-L10-smace701.dsl.brasiltelecom.net.br (201.14.223.254)  54.958 ms  56.458 ms  57.833 ms
 3  BrT-G5-0-0-710-smace300.brasiltelecom.net.br (201.10.227.133)  67.548 ms  73.977 ms  76.842 ms
 4  * * *
 5  BrT-G6-0-0-paebvcore01.brasiltelecom.net.br (201.10.255.162)  95.781 ms  102.036 ms  100.632 ms
 6  * * *
 7   (200.176.0.250)  55.624 ms  57.064 ms  59.931 ms
 8  bsw5-poa-vlan201.tc.terra.com.br (200.176.2.28)  61.487 ms  79.703 ms  81.222 ms
</pre>
<p>A resposta do traceroute mostra três tempos, isso é porque quando um roteador é encontrado o mesmo é testado três vezes. Já quando aparece como resposta  * * * significa que esse roteador não respondeu que o TTL expirou.<br />
Existem muitas opções que podem ser usadas com o <strong>traceroute</strong>, como por exemplo, usar o protocolo tcp em vez de icmp. Para saber mais sobre as opções consulte <strong>man traceroute</strong>.</p>
<p>Se você é programador C e quiser ver como o traceroute é implementado, vale a pena baixar os <a href="ftp://ftp.ee.lbl.gov/traceroute.tar.gz" target="_blank">fontes</a> e analisar o código. É uma experiência e tanto!</p>
<p>Existe um programa chamado <a href="http://www.visualroute.com/support/index.html">VisualRoute</a>. Esse programa traça a rota sobre o mapa mundi informando o país onde está cada roteador até o destino.</p>
<p>Por hoje era isso. Ah, pessoal estamos com uma super promoção essa semana, assinem os feeds gratuitamente. Mas somente essa semana!</p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2008/08/31/como-funciona-traceroute/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como o kernel implementa o protocolo IP</title>
		<link>http://petryx.blogrs.com.br/2008/08/31/como-o-kernel-implementa-o-protocolo-ip/</link>
		<comments>http://petryx.blogrs.com.br/2008/08/31/como-o-kernel-implementa-o-protocolo-ip/#comments</comments>
		<pubDate>Sun, 31 Aug 2008 22:31:49 +0000</pubDate>
		<dc:creator>Marlon Petry</dc:creator>
				<category><![CDATA[Dicas Linux]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://petryx.blogrs.com.br/?p=105</guid>
		<description><![CDATA[Eu sempre quis saber como era a implementação da rede no linux depois de pesquisar um pouco no pai dos curiosos (google), encontrei um excelente documento que explica como é implementada a pilha de protocolos de rede no Linux. Vale a pena ler. Linux IP Networking]]></description>
			<content:encoded><![CDATA[<p>Eu sempre quis saber como era a implementação da rede no linux depois de pesquisar um pouco no pai dos curiosos (google), encontrei um excelente documento que explica como é implementada a pilha de protocolos de rede no Linux.</p>
<p>Vale a pena ler.</p>
<p><a href=" http://www.cs.unh.edu/cnrg/gherrin/linux-net.html">Linux IP Networking</a></p>
]]></content:encoded>
			<wfw:commentRss>http://petryx.blogrs.com.br/2008/08/31/como-o-kernel-implementa-o-protocolo-ip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
