segunda-feira, 11 de maio de 2009

Configuração de Rede no Debian GNU/Linux






Este é um guia rápido de configuração de Rede. Em especial no Debian.
Um dos maiores problemas encontrados em configuração de servidores, é que o passo mais importante é esquecido. Seu servidor/estação DEVE estar com o nome FQDN - Fully Qualified Domain Name, ou seja, Nome de Domínio totalmente expressado ou qualificado, corretamente configurado, para que depois você possa montar qualquer tipo de servidor. Este guia pretende ensinar a configurar este passo, IPs e Interfaces virtuais, especialmente em Debian-Like, mas com certeza muitos desses passos podem ser feitos em diversas distribuições.

Antes de qualquer passo de configuração de rede, é bom configurar corretamente o nome da máquina e domínio. Para tal tarefa vamos mexer inicialmente no arquivo /etc/hostname
# vi /etc/hostname

Coloque aqui o nome da sua máquina. Por exemplo: servidor

Para forçar que este nome esteja disponível já nesta sessão, digite:
# hostname servidor

Para confirmar, digite o comando hostname sem parâmetros:
# hostname

A resposta deve ser o nome da sua máquina, no nosso caso: servidor.

Logo após, vamos ao arquivo /etc/hosts
# vi /etc/hosts

Neste arquivo além do nome, vamos configurar o domínio padrão da nossa máquina e nomes secundários. Vamos deixar ele desta forma:
127.0.0.1 localhost
10.0.17.254 servidor.dailson.com.br servidor

Lembre-se que neste passo, você já deve ter em mente o número de IP da sua estação. No meu exemplo, eu estou usando o IP 10.0.17.254
Logo após você configurar este arquivo, você pode checar o resultado com dois comandos:

# ping servidor

E para checar o FQDN

# dnsdomainname

Configuração de IP Manual
Exibe as configurações atuais da(s) placa(s) de rede
# ifconfig

Configura a rede manualmente:
Definindo o IP:
ifconfig eth0 NOVO_IP netkmask MASCARA up

Exemplo:
# ifconfig eth0 10.0.17.1 netmask 255.0.0.0 up

Definir um Gateway na Rede:
route add default gw IP_DO_GATEWAY
Exemplo:
# route add default gw 10.0.0.254

Configurar a resolução de nomes (DNS):
Editar o Arquivo /etc/resolv.conf
# vi /etc/resolv.conf

Adicionar a linha:
nameserver IP_DO_SERVIDOR_DNS
Pode-se e deve-se adicionar várias linhas nameserver com vários ip's de servidores dns.
Ex:
nameserver 10.0.0.254 nameserver 10.0.0.245

Ainda pode colocar o domínio padrão no /etc/resolv.conf
search dailson.com.br

Comandos para exibir as configurações atuais da rede:
# ifconfig # route -n # cat /etc/resolv.conf

Desligando a placa de rede:
# ifconfig eth0 down ou ifdown eth0

Ligando a placa de rede:
# ifconfig eth0 up ou ifup eth0

Como configurar de forma estática a rede:
Edite o arquivo /etc/network/interfaces e adicionar as seguintes linhas:
# vi /etc/network/interfaces

Inicia automaticamente com a interface de rede.
auto eth0

Faz com que o Debian detecte e aplique as configurações logo que o cabo é ligado ou desligado.
allow-hotplug eth0

Inicia a configuração estática da rede
iface eth0 inet static

Define o IP que fica configurado
address 192.168.0.1

Define a Mascara de rede, neste caso de 24Bits
netmask 255.255.255.0

Define o Broadcast de Rede (Parâmetro opcional)
broadcast 192.168.0.255

Define o Segmento de rede em que está o IP acima indicado. (Parâmetro opcional)
network 192.168.0.0

Define o Gateway de rede. (Parâmetro opcional)
gateway 192.168.0.254

Se você tem dúvida sobre o cálculo do endreço de broadcast e network, sugiro a instalação do aplicativo ipcalc:
# apt-get install ipcalc

E depois coloque o ip para o ipcalc devolver todos os parâmentros de configuração da sua rede.
Exemplo:
# ipcalc 192.168.0.1
A resposta desse comando, são todos os cálculos para seu IP. Veja o resultado para o IP acima:



Exemplo:
Um computador com uma placa de rede (eth0) devidamente configurada, ficaria com o arquivo interfaces desta forma:

auto eth0
allow-hotplug eth0

iface eth0 inet static

address 192.168.10.7

netmask 255.255.255.0

gateway 192.168.10.254


Se deseja que o endereço seja atribuído de forma automática:
auto eth0
allow-hotplug eth0

iface eth0 inet dhcp


Obs: Toda a vez que o arquivo /etc/network/interfaces é alterado, é necessário fazer a reconfiguração da rede. Para isso, basta reiniciar o serviço de rede.
# /etc/init.d/networking restart

Para parar o serviço de rede:
# /etc/init.d/networking stop

Para iniciar
# /etc/init.d/networking start

Para chegar se o endereço foi corretamente atribuído, use o ifconfig
Obtendo endereço de IP via linha de comando:
# dhclient

Configurando Ips Virtuais:
Se você deseja que seu servidor responda por vários Ips, é necessária a criação de interfaces virutais. Isso pode ser feito diretamente com o comando ifconfig ou dentro do arquivo /etc/network/interfaces:
Usando o comando ifconfig
Basta colocar a interface seguida de dois pontos e o número da interface vitual. Iniciando em zero.
Exemplos:

Configura a placa de rede eth0

# ifconfig eth0 10.0.0.1 netmask 255.0.0.0 up

Cria a interface virutal eth0:0
# ifconfig eth0:0 10.0.0.2 netmask 255.0.0.0 up

Cria a interface virutal eth0:1
# ifconfig eth0:1 10.0.0.3 netmask 255.0.0.0 up

Cria a interface virutal eth0:2
# ifconfig eth0:2 10.0.0.4 netmask 255.0.0.0 up


Lembrando que um simples reboot no servidor acarretará na perca destas interfaces virtuais. Para tornar permanente, você pode usar este comandos em arquivos que são lidos no boot como /etc/bash.bashrc ou usando o arquivo pertinente a esta tarefa → /etc/network/interfaces

Usando o arquivo /etc/network/interfaces

auto eth0
allow-hotplug eth0
iface eth0 inet static
address 10.0.0.1
netmask 255.0.0.0

auto eth0:0
iface eth0:0 inet static
address 10.0.0.2
netmask 255.0.0.0

auto eth0:1
iface eth0:1 inet static
address 10.0.0.3
netmask 255.0.0.0

auto eth0:2
iface eth0:2 inet static
address 10.0.0.4
netmask 255.0.0.0


Não esqueça sempre que você altera o arquivo interfaces, é necessário a reinicialização dos serviços de rede com o comando:

# /etc/init.d/networking restart

Frase do Dia

"O Medo da contradição, leva o escritor a tirar de si mesmo
quase todo o senso de coerência."
Wiston Churchill

Índice de Tutoriais usados em Aula

Este é um índice de alguns documentos que irão orientar meus alunos em algumas aulas. Os documentos aqui descritos, não são um guia definitivo, mas são um guia de orientação, que junto com a aula ministrada trará o conteúdo completo.

SLIDES e Documentos - TEORIA DO GNU/LINUX
MATERIAL DE APOIO (Filmes e Documentários)
AULAS DE LINUX
Shell Script com DIALOG
AULAS DE REDE - EAD 

Frase do Dia

"O sucesso é ir de fracasso em fracasso 
sem perder entusiasmo."
Wiston Churchill

quarta-feira, 25 de março de 2009

Dica de Site: Acervo da Revista SuperInteressante disponível On-Line


A Superinteressante oferece todo o seu acervo de textos gratuitamente! São mais de 12 mil páginas com as matérias de capa e algumas das seções que construíram a história da revista. Em breve, todos os especiais, o restante das seções e o conteúdo integral das edições em 2005 e 2006 também estarão disponíveis. Só mesmo uma revista tão Super poderia fazer isso! (Texto da Abril)
http://super.abril.com.br/super2/superarquivo/index_superarquivo.shtml

Dica de Site: Acervo da Revista Veja Disponível On-Line


A revista Veja disponibilizou gratuitamente TODO O ACERVO dos 40 anos de vida na internet. R$ 3 milhões foram investidos no projeto.
Internautas poderão acessar todas as reportagens, entrevistas e até mesmo anúncios já publicados em 40 de existência da revista Veja. Todas as edições, desde a primeira, em 11 de setembro de 1968, poderão ser lidas e consultadas em www.veja.com.br/acervodigital
Todas as edições, desde a número 01 de 11/09/1968 até hoje.
Edições completas, é só entrar e folhear a vontade.


sexta-feira, 13 de março de 2009

Por dentro do Sistema GNU/LINUX e FOSS


Mais uma vez o site http://www.makelinux.net detona. Ele traz mais uma imagem dinâmica, onde você conhece todos os elementos envolvidos atualmente no FOSS. FOSS é a sigla para Free and Open Source Software. Ou seja, você conhece os principais projetos, links e definições.
O Link desta imagem é http://www.makelinux.net/system/
Na dica de site passada, eu falei sobre o Kernel.

Frase do Dia

 "Se olhar alguém fazer algo,
fizesse alguém aprender alguma coisa...
Cachorro era açougueiro"
 
Daywison Fernandes (Meu irmão)
Esta frase sempre digo aos meus alunos!

Por dentro do Kernel do Linux

 
O Site  http://www.makelinux.net/kernel_map#sd traz uma excelente maneira de conhecer toda a arquitetura do Kernel do Linux de forma dinâmica. Na página principal apresenta essa imagem acima, onde está dividida em categorias e níveis todos eles levam aos códigos fontes a informações preciosíssimas.... Sem dúvida, vale a pena uma visita.

O Site do 10º FISL Já está no ar


Já está no ar o site do tradicionalíssimo 10º FISL - Festival Internacional de Software, que acontece todos os anos em Porto Alegre. Ainda não estão abertas as inscrições, mas já é possível acompanhar o andamento das coisas.
Dá uma olhadinha lá: http://fisl.softwarelivre.org/10/www/

quarta-feira, 4 de março de 2009

Frase do Dia

"O vício inerente ao capitalismo é a distribuição desigual de benesse;
o do socialismo é a distribuição por igual das misérias."
Winston Churchill

terça-feira, 3 de março de 2009

Guia de Comandos para utilização do Apt-get.


Guia de Comandos para utilização do Apt-get.

O Apt-get é um front-end de manipulação de pacotes do Debian.
Os pacotes (programas) do Debian, tem extensão .deb
Ex:
linux-modules-2.6.24-23-server_2.6.24-23.37_i386.deb

O Comando de manipulação é o dpkg, mas programas como apt-get, aptitude e synaptic, facilitam esta tarefa.
Abaixo, um guia de comandos desta ferramenta.

Antes de qualquer operação, é necessário atualizar a lista de repositórios.
Os repositórios são sites da Internet que mantém os pacotes da sua distribuição atualizados.
Lembre-se que os repositórios são configurados no arquivo /etc/apt/sources.list

Abaixo um exemplo de um repositório do Debian:

deb http://debian.pop-sc.rnp.br/debian/ etch main
deb-src http://debian.pop-sc.rnp.br/debian/ etch main
deb ftp://ftp.br.debian.org/debian etch main contrib non-free
deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib

Neste site, http://www.apt-get.org/ você encontra repositório a vontade para aplicações Debian.

Vamos aos comandos:

Antes de começar a instalar e utilizar o apt-get, é bom atualizar a lista dos repositórios. Para isso faça:
# apt-get update

Instalar um programa

apt-get install nome-programa
Ex:

# apt-get install sl

Pode-se especificar mais de um programa

# apt-get install sl cowsay

Reinstalando um programa

# apt-get install --reinstall sl

Removendo um programa

# apt-get remove sl

# Apenas baixando o programa

# apt-get install sl -d

Simulando a instalação

# apt-get install -s xorg

Faz a instalação de programas sem perguntar nada:

# apt-get install -y force-yes xorg

Corrige problemas com dependencias e pacotes quebrados

# apt-get -f install

Removendo o programa e todos os seus arquivos de configuração

# apt-get remove --purge sl

Removendo programas desnecessários ao sistema

# apt-get autoremove

Atualizando o sistema:

# apt-get upgrade

Atualizando para uma nova distribuição (novo release)

# apt-get dist-upgrade

Dica: Caso você precise instalar vários programas iguais em computadores diferentes, você pode aproveitar o cache do apt-get, bastando levar tudo o que o apt-get já instalou na outra máquina.
O Cache do apt-get fica em /var/cache/apt/archives Se você copiar o conteúdo deste diretório para outra máquina, não será necessário mais baixar da internet, o apt-get detecta que os pacotes já estão no cache e começa a instalação asim que solicitado.
Dica2: A dica acima é em caso de emergência. Caso você necessite instalar pacotes iguais em várias máquinas, utilize o apt-cacher.

Limpando o cache

# apt-get clean

Mais dicas em:
http://www.guiadohardware.net/tutoriais/tutorial-completo-apt-get/

Repositórios


Índice de Posts sobre Gerenciadores de Repositórios e Pacotes

segunda-feira, 2 de março de 2009

Video: Não grite no Datacenter

"As vezes na falta do que fazer, é que as descobertas acontecem..."
Dailson Fernandes :P



Esse vídeo é de um maluco que descobriu que gritar no DataCenter, aumenta a latência dos HDs. Vale a pena ver... é hilário, mas o cara prova o que acontece...
Não sei se é fake... mas vale a pena conferir!!
Um dos comentários deixado neste post, é sobre a ferramenta que ele usa no vídeo.
O nome da ferramenta é o JBOD Analytics, da SUN, usado no SUN Storage. Segue os links:
http://blogs.sun.com/brendan/entry/unusual_disk_latency
http://blogs.sun.com/brendan/entry/jbod_analytics_example
Com certeza não são OpenSource e nem estão sobre a GPL.

sexta-feira, 27 de fevereiro de 2009

Evento: Ruby e Rails no mundo Real 2009

São Paulo - SP
4 de abril
das 9h00 às 18h00
Inédito!


Para quem Trabalha
com Desenvolvimento
de Software
Imperdível

Primeiro grande evento de comunidade de Ruby e Rails do Brasil. A plataforma de software que está mudando o mundo!
Importantes personalidades nacionais desse mercado com projetos e experiências reais!

Público Alvo:
Desenvolvedores web e desktop, administradores de servidores de aplicação, entusiastas de tecnologias open source.

Requisitos Básicos:
Experência em Desenvolvimento de Software

O primeiro grande evento das comunidade ?GURU-SP e Rails-BR apresentará algumas das mais importantes personalidades nacionais desse mercado com projetos e experiências reais.

O seminário falará sobre temas do dia a dia, como controle de versão, testes, treinamentos, servidores de aplicação e mercado de trabalho (tanto interno como externo).

Este evento também contará com a presença da equipe técnica da Sun Microsystems, apresentando como utilizar o servidor de aplicações GlassFish em aplicações Rails.

É um evento imperdível pra quem trabalha com desenvolvimento de software e quer conhecer mais sobre a plataforma de software que está mudando rapidamente o mundo.


Palestras e Palestrantes
Criando um Instant Messenger usando Rails Vinícius Baggio


Ruby, Rails e empreendedorismo, Hugo Borges

Integrando Ruby e Java para facilitar a vida, Marcelo Castellani



Outsorcing, ou como trabalhar para empresas gringas, Rodrigo Franco



GlassFish on Rails: Escalabilidade e Confiabilidade, Maurício Leal

Só imaturos não testam, Carlos Brando


O que é e como funciona o RubyLearning, Willian Molinari


Utilizando Gitorious nos seus projetos, Fabio Akita


Clique aqui e conheça detalhes acerca da programação, palestras e palestrantes!

Aumentando a vida útil dos HDs


Recentemente, uma notícia no br-linux alertou sobre a possibilidade do gerenciamento de energia de algumas distribuições GNU/Linux, do Ubuntu em especial, estarem reduzindo a vida útil dos discos rígidos (HDs). Como noticiado em diversos sites da internet [1,2], isto não é um bug do Ubuntu. Na verdade, o Ubuntu apenas segue as recomendações equivocadas fornecidas pelos próprios fabricantes de notebooks e desktops. Neste artigo, o problema é explicado em detalhes e uma solução bastante simples é apresentada. Esta é baseada em um script que necessita ser executado uma única vez e faz todo o trabalho para correção do problema. Além disso, o artigo termina fazendo uma breve discussão sobre o pacote smartmontools que monitora o estado do HD e informa quando este está na eminência de sofrer alguma falha.
Veja o artigo completo no Alex's Weblog

segunda-feira, 16 de fevereiro de 2009

Vem ai ... III Encontro Nordestino de Software Livre - Salvador/BA

"O Festival Software Livre da Bahia realiza sua 4ª edição, em conjunto com o 3º Encontro Nordestino de Software Livre e a Edição 2009 do Festival Lationamericano de Instalação de Software Livre, convoca a comunidade à contribuir para sua já reconhecida programação de alta qualidade. Para tanto, esta chamada de trabalhos tem o objetivo de informar como a comunidade pode contribuir com palestras para este grande evento."

Maiores informações: http://festival.softwarelivre.org

Melhor Antivirus de 2008


Dica de Humberto Caetano

Dicas de Site: Dicas para um bom Sysadmin


Para quem quer se aventurar ou já é da área, vale dar uma olhada nesta série de artigos do blogueiro Guravehaato.

http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin/

http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin-parte-2/
http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin-parte-3/
http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin-parte-4/
http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin-parte-5/
http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin-parte-6/
http://www.guravehaato.info/geek-life/dicas-para-um-bom-sysadmin-parte-7/

sexta-feira, 6 de fevereiro de 2009

Eu Cavo, Tu Cavas, Ele Cava... Tutorial de DIG


O DIG é um grande canivete suíço para quem está querendo fazer auditorias em um servidor DNS e testar suas configurações. No caso para quem usa o Windows, ele vem para substituir o nslookup. Abaixo seguem algumas dicas e comandos para você testar suas configurações (e os dos outros também) de dns. DIG quer dizer cavar!!! Então vamos lá começar a esburacar a internet!!!

Instalação:

Se você utiliza linux, a maioria das distribuições já trazem o dig instalado, mas por via das dúvidas, você pode usar seu gerenciador de pacotes prediletos e instalar.

Ex:
No Debian, Ubuntu e Derivados
# apt-get install dnsutils

Gentoo
# emerge dnsutils

Mandriva
# urpmi dnsutils

RedHat, Fedora e CentOS
# yum install dnsutils

No Windows:
Também dá para usar o dig no Windows. Para isso, baixe o seguinte programa: http://members.shaw.ca/nicholas.fong/dig/dig-files.zip e descompacte em uma pasta, por exemplo c:\dig

Abaixo, vou listar a instalação no Windows Vista, XP e 2000. Não esqueça que você não pode usar o notepad (bloco de notas) para editar esse arquivo, pois ele vai colocar em formato DOS e o dig não conseguirá ler. Use o NOTEPAD++ para isso. http://sourceforge.net/project/downloading.php?groupname=notepad-plus&filename=npp.5.1.3.Installer.exe&use_mirror=ufpr

Se você usa Windows Vista (Haja Coragem!!)
Crie o arquivo resolv.conf em %systemroot%\System32\Drivers\Etc, onde %systemroot% é a pasta de instalação do Windows.
Ex:
c:\windows\System32\Drivers\Etc\resolv.conf
Dentro do resolv.conf coloque apenas o ip do seu servidor DNS da seguinte forma:
nameserver 192.168.0.1
Teste com o comando dig www.uol.com.br +noall +answer e veja se o resultado é semelhante a este:
www.uol.com.br. 48 IN A 200.221.2.45
www.uol.com.br. 48 IN A 200.98.249.120

Se você usa o Windows XP, Windows 2000 ou 2003 Server
Abra o arquivo que resolv.conf que está na pasta c:\dig e substitua o 198.80.55.1 pelo ip do seu servidor DNS.

Teste com o comando
dig www.uol.com.br +noall +answer
e veja se o resultado é semelhante a este:
www.uol.com.br. 48 IN A 200.221.2.45
www.uol.com.br. 48 IN A 200.98.249.120

Caso não funcione, apague o conteúdo do arquivo, deixe ele em branco.
Teste com o comando
dig www.uol.com.br +noall +answer
e veja se o resultado é semelhante a este:

www.uol.com.br. 48 IN A 200.221.2.45
www.uol.com.br. 48 IN A 200.98.249.120

Caso não funcione
Crie o arquivo resolv.conf em %systemroot%\System32\Drivers\Etc, onde %systemroot% é a pasta de instalação do Windows.
Ex:
c:\windows\System32\Drivers\Etc\resolv.conf
Dentro do resolv.conf coloque apenas o ip do seu servidor DNS da seguinte forma:
nameserver 192.168.0.1
Teste com o comando
dig www.uol.com.br +noall +answer
e veja se o resultado é semelhante a este:

www.uol.com.br. 48 IN A 200.221.2.45 www.uol.com.br. 48 IN A 200.98.249.120

Obs: O Artigo vai trazer uma série de comandos com resultados e explicações. No fim do artigo, vou colocar somente os comandos (para os mais apressadinhos).

Consulta simples:
# dig www.dailson.com.br

 O Resultado:
dailson@dailson:~/site/copias$ dig dailson.com.br
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61275
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;dailson.com.br.                        IN      A

;; ANSWER SECTION:
dailson.com.br.         486     IN      A       208.98.47.3

;; AUTHORITY SECTION:
dailson.com.br.         486     IN      NS      ns5.dsgx.org.
dailson.com.br.         486     IN      NS      ns4.dsgx.org.

;; ADDITIONAL SECTION:
ns4.dsgx.org.           21641   IN      A       208.98.47.5
ns5.dsgx.org.           21641   IN      A       208.98.47.6

;; Query time: 4 msec
;; SERVER: 192.168.20.1#53(192.168.20.1)
;; WHEN: Fri Nov 21 12:22:39 2008
;; MSG SIZE  rcvd: 124



# dig dailson.com.br +noall +answer

A Resposta sem mais delongas é:
dailson.com.br. 179 IN A 208.98.47.3

O que podemos fazer o com DIG?

Quero saber, quem são os servidores de nomes do yahoo

# dig yahoo.com

;; QUESTION SECTION:
;yahoo.com.                     IN      A

;; ANSWER SECTION:
yahoo.com.              21558   IN      A       68.180.206.184
yahoo.com.              21558   IN      A       206.190.60.37

;; AUTHORITY SECTION:
yahoo.com.              558     IN      NS      ns4.yahoo.com.
yahoo.com.              558     IN      NS      ns5.yahoo.com.
yahoo.com.              558     IN      NS      ns6.yahoo.com.
yahoo.com.              558     IN      NS      ns8.yahoo.com.
yahoo.com.              558     IN      NS      ns1.yahoo.com.
yahoo.com.              558     IN      NS      ns2.yahoo.com.
yahoo.com.              558     IN      NS      ns3.yahoo.com.

;; ADDITIONAL SECTION:
ns1.yahoo.com.          70933   IN      A       68.180.131.16
ns2.yahoo.com.          69243   IN      A       68.142.255.16
ns3.yahoo.com.          69243   IN      A       217.12.4.104
ns5.yahoo.com.          69243   IN      A       119.160.247.124
ns6.yahoo.com.          75765   IN      A       202.43.223.170
ns8.yahoo.com.          75765   IN      A       202.165.104.22

Quero saber quem são os servidores de email do yahoo


# dig yahoo.com MX

;; QUESTION SECTION:
;yahoo.com.                     IN      MX

;; ANSWER SECTION:
yahoo.com.              7198    IN      MX      1 g.mx.mail.yahoo.com.
yahoo.com.              7198    IN      MX      1 a.mx.mail.yahoo.com.
yahoo.com.              7198    IN      MX      1 b.mx.mail.yahoo.com.
yahoo.com.              7198    IN      MX      1 c.mx.mail.yahoo.com.
yahoo.com.              7198    IN      MX      1 d.mx.mail.yahoo.com.
yahoo.com.              7198    IN      MX      1 e.mx.mail.yahoo.com.
yahoo.com.              7198    IN      MX      1 f.mx.mail.yahoo.com.

;; AUTHORITY SECTION:
yahoo.com.              488     IN      NS      ns3.yahoo.com.
yahoo.com.              488     IN      NS      ns4.yahoo.com.
yahoo.com.              488     IN      NS      ns5.yahoo.com.
yahoo.com.              488     IN      NS      ns6.yahoo.com.
yahoo.com.              488     IN      NS      ns8.yahoo.com.
yahoo.com.              488     IN      NS      ns1.yahoo.com.
yahoo.com.              488     IN      NS      ns2.yahoo.com.

;; ADDITIONAL SECTION:
a.mx.mail.yahoo.com.    1798    IN      A       67.195.168.31
b.mx.mail.yahoo.com.    1798    IN      A       66.196.97.250
c.mx.mail.yahoo.com.    1798    IN      A       216.39.53.3
c.mx.mail.yahoo.com.    1798    IN      A       216.39.53.2
d.mx.mail.yahoo.com.    1798    IN      A       66.196.82.7
e.mx.mail.yahoo.com.    1798    IN      A       216.39.53.1
f.mx.mail.yahoo.com.    1798    IN      A       209.191.88.247
f.mx.mail.yahoo.com.    1798    IN      A       68.142.202.247
g.mx.mail.yahoo.com.    1798    IN      A       209.191.118.103
g.mx.mail.yahoo.com.    1798    IN      A       206.190.53.191
ns1.yahoo.com.          70863   IN      A       68.180.131.16
ns2.yahoo.com.          69173   IN      A       68.142.255.16
ns3.yahoo.com.          69173   IN      A       217.12.4.104
ns5.yahoo.com.          69173   IN      A       119.160.247.124
 

Para saber quem tem autoridade sobre o domínio yahoo.com (de forma simplificada)

# dig yahoo.com NS +noall +answer

yahoo.com.              32      IN      NS      ns6.yahoo.com.
yahoo.com.              32      IN      NS      ns8.yahoo.com.
yahoo.com.              32      IN      NS      ns1.yahoo.com.
yahoo.com.              32      IN      NS      ns2.yahoo.com.
yahoo.com.              32      IN      NS      ns3.yahoo.com.
yahoo.com.              32      IN      NS      ns4.yahoo.com.
yahoo.com.              32      IN      NS      ns5.yahoo.com.
 

Veja que só foi listado os nameservers

Agora só os servidores de email


# dig yahoo.com MX +noall +answer

yahoo.com.              6716    IN      MX      1 f.mx.mail.yahoo.com.
yahoo.com.              6716    IN      MX      1 g.mx.mail.yahoo.com.
yahoo.com.              6716    IN      MX      1 a.mx.mail.yahoo.com.
yahoo.com.              6716    IN      MX      1 b.mx.mail.yahoo.com.
yahoo.com.              6716    IN      MX      1 c.mx.mail.yahoo.com.
yahoo.com.              6716    IN      MX      1 d.mx.mail.yahoo.com.
yahoo.com.              6716    IN      MX      1 e.mx.mail.yahoo.com.
 

Agora uma consulta generalizada, vamos pedir para o servidor listar tudo:

# dig yahoo.com ANY +noall +answer

yahoo.com.              172792  IN      NS      ns3.yahoo.com.
yahoo.com.              172792  IN      NS      ns4.yahoo.com.
yahoo.com.              172792  IN      NS      ns5.yahoo.com.
yahoo.com.              172792  IN      NS      ns1.yahoo.com.
yahoo.com.              172792  IN      NS      ns2.yahoo.com.
yahoo.com.              6668    IN      MX      1 e.mx.mail.yahoo.com.
yahoo.com.              6668    IN      MX      1 f.mx.mail.yahoo.com.
yahoo.com.              6668    IN      MX      1 g.mx.mail.yahoo.com.
yahoo.com.              6668    IN      MX      1 a.mx.mail.yahoo.com.
yahoo.com.              6668    IN      MX      1 b.mx.mail.yahoo.com.
yahoo.com.              6668    IN      MX      1 c.mx.mail.yahoo.com.
yahoo.com.              6668    IN      MX      1 d.mx.mail.yahoo.com.
yahoo.com.              20958   IN      A       206.190.60.37
yahoo.com.              20958   IN      A       68.180.206.184
 

Ai você me diz que quer listar não só os NS (Name Server), A (Address) e servidores de email MX (Mail eXchange). Mas gostaria de ver toda a base de endereços do yahoo... Bom... isso só é possível se o administrador cochilou na configuração do DNS e deixou aberto. Mas você pode começar a tentar, e ver que tem alguns servidores ai que permitem isso.
Na verdade, para consultar, você tem que tentar fazer um XFER, uma transferência de zona, e se passar por um servidor DNS secundário.
No yahoo não funciona. O comando é o seguinte...

# dig yahoo.com AXFR

; <<>> DiG 9.4.1-P1.1 <<>> yahoo.com AXFR
;; global options:  printcmd
; Transfer failed.

ou ainda você pode tentar se passar pelo próprio yahoo.com, dizendo que é o próprio servidor secundário, dessa forma;


# dig -t AXFR yahoo.com @ns2.yahoo.com
# dig -t AXFR yahoo.com @ns3.yahoo.com
# dig -t AXFR yahoo.com @ns4.yahoo.com
# dig -t AXFR yahoo.com @ns5.yahoo.com
 

eja que ele não permitiu, mas achei um que vacilou e deixou toda a base
Teste você mesmo:

# dig -t axfr inter.net @ns02.eusc.inter.net

Mais um de bonus para vc ;)

# dig @luit.iitg.ernet.in iitg.ernet.in axfr

Listando os Servidores que já tem endereços IPV6 na sua base.

# dig yahoo.com AAAA

;; QUESTION SECTION:
;yahoo.com.                     IN      AAAA

;; AUTHORITY SECTION:
yahoo.com.              600     IN      SOA     ns1.yahoo.com. hostmaster.yahoo-inc.com. 2008112104 3600 300 1814400 600

;; Query time: 328 msec
;; SERVER: 192.168.20.1#53(192.168.20.1)
;; WHEN: Fri Nov 21 13:52:55 2008
;; MSG SIZE  rcvd: 88

 

Veja que não apareceu a sessão ANSWER (Resposta), ou seja o yahoo ainda não tem registros IPV6 abertos, e pesquisei em vários outros provedores como gmail.
Fui achar registros AAAA nos orgãos oficiais como iana e isc.

# dig iana.org AAAA

;; ANSWER SECTION:
iana.org.               600     IN      AAAA    2620:0:2d0:1::193

# dig isc.org AAAA

;; ANSWER SECTION:
isc.org.                3600    IN      AAAA    2001:4f8:0:2::d
 


De acordo com as páginas de manual a opção +multiline você obtem as respostas dos Registros SOA de modo detlhado, semelhante a maneira que você escreve os arquivos do bind, listando o serial, a atualização (refresh), a nova tentantiva de acesso (retry), a expiração registro e o tempo de vida da tabela (minimum)

# dig +nocmd dsgx.org any +multiline

;; ANSWER SECTION:
dsgx.org.               17600 IN A 208.98.47.2
dsgx.org.               300 IN MX 10 mail.dsgx.org.
dsgx.org.               300 IN SOA ns. root.dsgx.org. (
                                998        ; serial
                                10800      ; refresh (3 hours)
                                120        ; retry (2 minutes)
                                259200     ; expire (3 days)
                                86400      ; minimum (1 day)
                                )

 

Outro Exemplo:

# dig +nocmd og.edu any +multiline

;; AUTHORITY SECTION:
edu.                    10711 IN SOA L3.NSTLD.COM. NSTLD.VERISIGN-GRS.COM. (
                                2008112100 ; serial
                                1800       ; refresh (30 minutes)
                                900        ; retry (15 minutes)
                                604800     ; expire (1 week)
                                86400      ; minimum (1 day)
                                )

 

Fazendo um Traceroute de DNS.

Essa é um ótimo comando. Ele exibe toda a rota que o DNS fez para conseguir o IP do nome desejado, semelhante ao comando traceroute.
Vejamos um exemplo:

# dig www.uol.com.br +trace

# dig www.uol.com.br +trace
; <<>> DiG 9.4.1-P1.1 <<>> www.uol.com.br +trace
;; global options:  printcmd
.                       341189  IN      NS      j.root-servers.net.
.                       341189  IN      NS      b.root-servers.net.
.                       341189  IN      NS      h.root-servers.net.
.                       341189  IN      NS      m.root-servers.net.
.                       341189  IN      NS      l.root-servers.net.
.                       341189  IN      NS      f.root-servers.net.
.                       341189  IN      NS      k.root-servers.net.
.                       341189  IN      NS      g.root-servers.net.
.                       341189  IN      NS      d.root-servers.net.
.                       341189  IN      NS      e.root-servers.net.
.                       341189  IN      NS      c.root-servers.net.
.                       341189  IN      NS      i.root-servers.net.
.                       341189  IN      NS      a.root-servers.net.
;; Received 500 bytes from 192.168.20.1#53(192.168.20.1) in 5 ms

br.                     172800  IN      NS      C.DNS.br.
br.                     172800  IN      NS      A.DNS.br.
br.                     172800  IN      NS      D.DNS.br.
br.                     172800  IN      NS      B.DNS.br.
br.                     172800  IN      NS      F.DNS.br.
br.                     172800  IN      NS      E.DNS.br.
;; Received 284 bytes from 192.33.4.12#53(c.root-servers.net) in 312 ms

uol.com.br.             86400   IN      NS      thomas.uol.com.br.
uol.com.br.             86400   IN      NS      eliot.uol.com.br.
uol.com.br.             86400   IN      NS      charles.uol.com.br.
uol.com.br.             86400   IN      NS      borges.uol.com.br.
;; Received 180 bytes from 200.219.159.10#53(F.DNS.br) in 518 ms

www.uol.com.br.         300     IN      A       200.98.249.120
www.uol.com.br.         300     IN      A       200.221.2.45
uol.com.br.             3600    IN      NS      borges.uol.com.br.
uol.com.br.             3600    IN      NS      eliot.uol.com.br.
;; Received 137 bytes from 200.98.255.99#53(charles.uol.com.br) in 199 ms


Veja que a rota começou pelos servidores raizes, que repassou para os servidores do registro.br e depois foi repassado aos servidores do UOL. Faça vários testes, você verá que realmente o TCP/IP é um protocolo e tanto!

Descobrindo as propriedades do SOA de um Domínio.

Este comando exibe as propriedades de quem tem autoridade sobre um dominio (SOA).

# dig uol.com.br +nssearch

# dig uol.com.br +nssearch

SOA eliot.uol.com.br. root.uol.com.br. 2009010601 7200 3600 432000 3600 from server eliot.uol.com.br in 210 ms.
SOA eliot.uol.com.br. root.uol.com.br. 2009010601 7200 3600 432000 3600 from server borges.uol.com.br in 175 ms.


Descobrindo se seu servidor DNS está vulnerável.
Para saber se seu servidor DNS está vulnerável, execute o seguinte comando:

# dig +short @SeuServidorDNS porttest.dns-oarc.net TXT

Você pode testar, no seu próprio servidor DNS, desta forma:

# dig +short @127.0.0.1 porttest.dns-oarc.net TXT
porttest.y.x.w.v.u.t.s.r.q.p.o.n.m.l.k.j.i.h.g.f.e.d.c.b.a.pt.dns-oarc.net.
"200.xxx.xx.xx is POOR: 26 queries in 5.0 seconds from 1 ports with std dev 0"

Veja que o resultado do servidor DNS é POOR, ou seja, muito ruim! E seu servidor DNS está vulnerável a ataques.

Porém se o resultado for como este abaixo:

porttest.y.x.w.v.u.t.s.r.q.p.o.n.m.l.k.j.i.h.g.f.e.d.c.b.a.pt.dns-oarc.net.
"200.XXX.XXX.XXX is GREAT: 32 queries in 57.7 seconds from 32 ports with std dev 5625″

Fique tranquilo, você está protegido, pelo menos por enquanto...

Resumo dos Comandos Utilizados no tutorial:

Consulta completa:
# dig www.dailson.com.br

Consulta simplificada:
# dig dailson.com.br +noall +answer

Consulta aos servidores de Nomes do Yahoo
# dig yahoo.com

Quero saber quem são os servidores de email do yahoo
# dig yahoo.com MX

Para saber quem tem autoridade sobre o domínio yahoo.com (de forma simplificada)
# dig yahoo.com NS +noall +answer

Agora só os servidores de email
# dig yahoo.com MX +noall +answer

Agora uma consulta generalizada, vamos pedir para o servidor listar tudo:
# dig yahoo.com ANY +noall +answer
# dig yahoo.com AXFR
# dig -t AXFR yahoo.com @ns2.yahoo.com
# dig -t AXFR yahoo.com @ns3.yahoo.com
# dig -t AXFR yahoo.com @ns4.yahoo.com
# dig -t AXFR yahoo.com @ns5.yahoo.com

Transferindo Zona:
# dig -t axfr inter.net @ns02.eusc.inter.net
# dig @luit.iitg.ernet.in iitg.ernet.in axfr

Listando os Servidores que já tem endereços IPV6 na sua base.
# dig yahoo.com AAAA
# dig iana.org AAAA
# dig isc.org AAAA

Trazendo o resultado no formato Bind
# dig +nocmd dsgx.org any +multiline
# dig +nocmd og.edu any +multiline

Fazendo um Traceroute de DNS.
# dig www.uol.com.br +trace

Descobrindo as propriedades do SOA de um Domínio.
# dig uol.com.br +nssearch

Referencias:

http://hostlibrary.com/HowtocheckyourDNSrecordswithdig
http://www.madboa.com/geek/dig/
http://members.shaw.ca/nicholas.fong/dig/
http://serghei.net/windows/dig/
http://articles.techrepublic.com.com/5100-10878_11-5032892.html