Você está na página 1de 112

PROF.

GILMAR LUIZ VASSOLER

TECNOLOGIA EM ANLISE
E DESENVOLVIMENTO DE SISTEMAS
Servio de Rede para Internet

SERRA
IFES
2012

Governo Federal
Ministro da Educao
Fernando Haddad
Instituto Federal do Esprito Santo - Ifes
Reitor
Denio Rebello Arantes
Pr-Reitora de Ensino
Cristiane Tenan Schlittler dos Santos
Diretor-geral do Campus Serra
Ademar Manoel Stange
Diretora do CEAD Centro de Educao a Distncia
Yvina Pavan Baldo
Coordenadores da UAB Universidade Aberta do Brasil
Marize Lyra Silva Passos
Jos Mario Costa Junior
Curso de Tecnologia em Anlise e Desenvolvimento de Sistemas
Coordenao do Curso
Jos Incio Serafini
Designer Instrucional
Aline Freitas da Silva
Professor Formador/Autor
Gilmar Luiz Vassoler

Catalogao da fonte: Renata Lorencini Rizzi - CRB 6/685


V339s Vassoler, Gilmar Luiz



Servio de rede para internet. / Gilmar Luiz Vassoler.
Vitria: Ifes, 2009.

112 p. : il.

ISBN 978-85-62934-21-6
1. Internet. 2. TCP/IP (Protocolos de redes de computadores).
3. Correio eletrnico. 4. Redes de computadores. 5. UML
(Computao). I. Instituto Federal do Esprito Santo. II. Ttulo.

CDD 004.69
DIREITOS RESERVADOS
Instituto Federal do Esprito Santo Ifes
Av. Rio Branco, 50 Santa Lcia Vitria ES CEP 29.056-255 Telefone: (27) 3227-5564
Crditos de autoria da editorao
Capa: Juliana Cristina da Silva
Projeto grfico: Juliana Cristina e Nelson Torres
Iconografia: Nelson Torres
Editorao eletrnica: Grfica Editora Ftima
Reviso de texto:
Esther Ortlieb Faria de Almeida
COPYRIGHT proibida a reproduo, mesmo que parcial, por qualquer meio, sem autorizao escrita dos
autores e do detentor dos direitos autorais.

Ol, Aluno(a)!

um prazer t-lo(a) conosco.


O Ifes Instituto Federal do Esprito Santo oferece a voc, em parceria
com as Prefeituras e com o Governo Federal, o Curso de Graduao em
Tecnologia em Anlise e Desenvolvimento de Sistemas, na modalidade
a distncia. Apesar de este curso ser ofertado a distncia, esperamos que
haja proximidade entre ns, pois, hoje, graas aos recursos da tecnologia
da informao (e-mails, chat, videoconferncia, etc.) podemos manter
uma comunicao efetiva.
importante que voc conhea toda a equipe envolvida neste curso:
coordenadores, professores especialistas, tutores a distncia e tutores
presenciais porque, quando precisar de algum tipo de ajuda, saber a
quem recorrer.
Na EaD Educao a Distncia, voc o grande responsvel pelo sucesso
da aprendizagem. Por isso, necessrio que se organize para os estudos
e para a realizao de todas as atividades, nos prazos estabelecidos,
conforme orientao dos Professores Formadores e Tutores.
Fique atento s orientaes de estudo que se encontram no Manual do
Aluno!
A EaD, pela sua caracterstica de amplitude e pelo uso de tecnologias
modernas, representa uma nova forma de aprender, respeitando, sempre,
o seu tempo.
Desejamos-lhe sucesso e dedicao!

Equipe do Ifes

ICONOGRAFIA
Veja, abaixo, alguns smbolos utilizados neste material para gui-lo em seus estudos.

Fala do Professor.

Conceitos importantes. Fique atento!

Atividades que devem ser elaboradas por voc,


aps a leitura dos textos.

Indicao de leituras complementares, referentes ao contedo estudado.

Destaque de algo importante, referente ao


contedo apresentado. Ateno!

Reflexo/questionamento sobre algo importante referente ao contedo apresentado.

Espao reservado para as anotaes que voc


julgar necessrias.

APRESENTAO
Ol!
Seja muito bem-vindo disciplina: Servio de Rede para Internet.
Gostaria de me apresentar e falar um pouquinho sobre mim e sobre
experincias que tive na educao superior. Meu nome Gilmar Luiz
Vassoler, sou graduado em Engenharia de Computao e tenho Mestrado
em Engenharia Eltrica, ambos pela Universidade Federal do Esprito
Santo. Atualmente, curso doutorado no laboratrio de telecomunicaes
da UFES na rea de Plano de Controle de Redes pticas. Minhas reas
de interesse so: Redes de computadores, Sistemas Operacionais e
Organizao e Arquitetura de Computadores.
Trabalho na rea de educao desde 2001 ministrando disciplinas de redes
de computadores, segurana em redes de computadores e arquitetura de
computadores, e tambm j trabalhei em empresas como administrador
do parque de informtica. Nesta ltima atividade, os conhecimentos
sobre servios de rede foram de grande importncia, pois facilitaram meu
trabalho e permitiram que eu ampliasse os servios disponveis na rede
para os usurios.
Nesta disciplina, voc conhecer os principais servios de rede. Antes
disso, faremos uma breve introduo Internet a aos conceitos bsicos da
arquitetura de protocolos TCP/IP.
No restante de nosso estudo, sero apresentados os servios de rede para
Internet comumente utilizados, enfatizando suas funcionalidades e como
podemos realizar suas implantaes.
importante enfatizar que o objetivo deste material auxili-lo no
estudo da disciplina Servios de Rede para Internet, destacando os pontos
mais importantes a serem estudados. Outros materiais de apoio estaro
disponveis em nossa sala de aula virtual, no ambiente Moodle. E, por
fim, voc encontrar na biblioteca do seu polo os livros indicados na
bibliografia sugerida ao longo deste trabalho, os quais aprofundaro os
conceitos estudados para que voc tenha uma tima formao.
Enfim, desejo a voc, futuro profissional de informtica, um excelente
aprendizado.

Prof. Gilmar Luiz Vassoler


Bons estudos!

Cap. 1 - A INTERNET11
1.1 Histria12
1.2 A Evoluo da Internet12
1.3 Histria da Internet Brasil14
1.4 Principais Servios da Internet15
1.4.1 Navegao16
1.4.2 Troca de Arquivos16
1.4.3 Correio Eletrnico E-MAIL 17
1.5 Protocolos de Comunicao18

Cap. 2 - ARQUITETURA TCP/IP21


2.1 Apresentao da arquitetura TCP/IP21
2.2 Camada de Aplicao24
2.3 Camada de Transporte26
2.4 Camada Internet28
2.5 CAMADA INTERFACE COM A REDE 32

Cap. 3 - AVANANDO NO TCP/IP35


3.1 Endereamento IP35
3.1.1 Classes de endereos35
3.1.2 Endereos especiais36
3.1.3 Mscara de rede38
3.2 Portas da camada de transporte39
3.3 ICMP (Internet Control Message Protocol)43

Cap. 4 - SERVIOS BSICOS DE REDE45


4.1 DHCP (Dynamic Host Configuration Protocol)45
4.1.1 Atribuio de endereo via DHCP46
4.1.2 Funcionamento do DHCP47
4.1.3 Formato da Mensagem DHCP 47
4.1.4 O SFTP51

Cap. 5 - O SERVIO DE DNS53


5.1 Nomes Hierrquicos55
5.2 Instalando o servidor de Bind no Linux57

Cap. 6 - SERVIO WEB59


6.1 A URL59
6.2 Funcionamento do servidor WEB61
6.3 Protocolo HTTP62
6.4 Servidor apache64

Cap. 7 - Servio de E-mail67


7.1 Protocolo SMTP69
7.2 Protocolo POP372
7.3 Protocolo IMAPv473

REFERNCIAS77
ANEXO 1 - Instalao de um servidor
WEB Apache79
1.1 Instalando o servidor no Debian79
1.1.1 Baixando o software79
1.1.2 Configurando o servidor Apache 80

ANEXO 2 - Instalao de um servidor


OpenSSH83
2.1 Instalando o servidor no Debian83
2.1.1 Baixando o software83
2.1.2 Configurando o openssh 84
2.2 Testando do servidor84
2.2.1 Criar o usurio84
2.2.2 Acessando o servidor85

ANEXO 3 - Instalao de um servidor de


FTP87
3.1 Escolhendo o aplicativo FTP87
3.2 Instalando o servidor no Debian87
3.2.1 Baixando o software87
3.2.2 Configurando o proftpd 88
3.3 Testando do servidor90
3.3.1 Criar o usurio90
3.3.2 Acessando o servidor90

ANEXO 4 - Instalao de um servidor de


DNS93
4.1 Instalando o servidor no Debian93
4.1.1 Baixando o software93
4.1.2 Configurando o servidor de DNS 94
4.2 Adicionando novas zonas 94
4.3 Criando os arquivos de registro95
4.4 Testando do servidor100

ANEXO 5 - Instalao de um servidor de


DHCP103
5.1 Escolhendo o aplicativo DHCP103
5.2 Instalando o servidor no Debian103
5.2.1 Baixando o software103
5.2.2 Configurando o dchp3-server 104
5.2.3 Configurao 1107
5.2.4 Configurao 2108
5.2.5 Configurao 3109
5.3 Testando do servidor110

10

Prof. Gilmar Luiz Vassoler

A INTERNET

Quando falamos de Internet, uma das primeiras perguntas que surgem


O que a Internet?.
De fato, definir o que a Internet se torna muito complicado por ela
estar sempre mudando, tanto em nvel de hardware e software quanto
em nvel de servios.
Assim, vamos nos valer da definio dada por KUROSE (2006, pg. 3),
a qual destaca que (...) a Internet pblica uma rede de computadores
mundial, isto , uma rede que interconecta milhes de equipamentos de
computao em todo o mundo.
Podemos avanar um pouco nesta definio enfatizando que, de fato, a
Internet conecta redes em todo o mundo. Assim, cada rede gerencia os
seus equipamentos e as informaes que pretendem divulgar. A Figura
1 apresenta uma ilustrao de como a Internet conecta o mundo.
Figura 1 A Internet

Podemos pensar na Internet como a estrada virtual por onde


trafegam, em mbito mundial, informaes eletrnicas dos mais
variados tipos, incluindo textos, figuras, sons e imagens. De forma
que no existem fronteiras entre pases, assim como tambm no h
distino de raa, sexo, cor ou nacionalidade entre pessoas.
Pensem nisso...
Para entender melhor o que a Internet representa, vamos aprender
como tudo comeou.

12

Prof. Gilmar Luiz Vassoler

1.1 Histria
O embrio da Internet surgiu na poca da Guerra Fria entre os
Estados Unidos e a antiga Unio Sovitica. O fato motivador do
desenvolvimento de uma tecnologia que interligasse computadores a
longas distncias era o medo de que um possvel ataque por msseis
viesse a destruir os computadores do Departamento de Defesa dos
Estados Unidos, que ficavam no Pentgono.
Com uma rede que pudesse distribuir as informaes em pontos
separados, que se interligavam por meio de cabos subterrneos, podia-se
melhorar a segurana das informaes contidas em tais computadores.
Esta rede ficou conhecida com o nome de ARPANET devido
participao da empresa ARPA (Advanced Research and Projects Agency)
no seu desenvolvimento.
Depois do fim da Guerra Fria, a ArphaNet perdeu sua importncia
estratgica. Assim, foi permitido o acesso aos cientistas que, mais tarde,
forneceram a tecnologia para universidades que passaram para outras
universidades de outros pases, at chegar aos usurios domsticos,
dando incio grande rede mundial, como conhecemos hoje.
importante enfatizar que a Internet, na verdade, um conjunto de
milhares de redes de computadores ligados entre si permitindo, assim, a
conexo entre os equipamentos destas redes.

Dica de leitura complementar.


Para conhecer um pouco mais sobre a histria na Internet, acesse
http://www.aisa.com.br/historia.html.

1.2 A Evoluo da Internet


A Internet constituda de uma srie de redes grandes chamadas
backbones. Como j foi mencionado, o desenvolvimento dessas redes
e dos protocolos teve como objetivo inicial atender s necessidades
militares do governo americano.
Em POP-RS (2010), encontramos algumas datas importantes na
evoluo da rede Internet e dos protocolos:

Servio de Rede para Internet


1968 Foi desenvolvido pela ARPA o primeiro backbone. O objetivo
desse projeto era interligar as universidades e tambm a rea militar.
1975 A DARPA (Defence Advanced Research Projects Agency), que
deu lugar a ARPA, comeou a desenvolver os protocolos TCP/IP.
1979 Foi formado um comit para comandar o desenvolvimento
desses protocolos. Esse comit se chamava ICCB Internet Control
and Configuration Board.
1983 A DARPA cedeu os direitos do cdigo dos protocolos TCP/IP
Universidade da Califrnia para que fosse distribudo em sua verso do
sistema operacional UNIX. A DARPA pediu a todos os computadores
que estavam conectados a ARPANET para que usassem os protocolos
TCP/IP. Assim, esses protocolos se difundiram rapidamente, visto que
no eram aplicativos comerciais.
1985 A Fundao Nacional de Cincia dos Estados Unidos (NSF)
criou a NSFNET, que era uma rede de alta capacidade destinada a
atender, tanto nos EUA como em outros pases, as entidades cientficas
e de pesquisa.
1989 A ARPANET deu lugar a NSFNET, bem como o ICCB foi
substitudo pela Internet Advisory Board (IAB). A IAB possua dois
grupos principais: o IRTF (Internet Research Task Force) e o IETF
(Internet Engeneering Task Force).
1995 Muitas redes foram criadas ou desenvolvidas objetivando a
melhora do trfego de informaes via Internet. Deu-se, ainda nessa
dcada, a conexo de muitos setores Internet, visando a prestar e
obter servios pela rede. (POP-RS, 2010)

1) Pesquise mais sobre a histria da Internet e veja outros fatos


que no foram relatados neste material. Discuta-os com o seu tutor a distncia.
______________________________________________________
________________________________________________________
________________________________________________________
2) Apresente a evoluo dos protocolos utilizados na Internet.
Dica: procure pelo texto Internet do Futuro: Um Novo Horizonte, do Grupo de Teleinformtica e Automao GTA
________________________________________________________
________________________________________________________

13

14

Prof. Gilmar Luiz Vassoler

1.3 Histria da Internet Brasil


Quando a Internet chegou ao Brasil, o seu acesso era restrito a professores,
estudantes e funcionrios de universidades e instituies de pesquisa.
Em adio, instituies governamentais e privadas tambm obtiveram
acesso devido a colaboraes acadmicas e atividades no-comerciais.
Assim foi criado o primeiro backbone de Internet brasileiro.

Segundo o dicionrio de Informtica da Folha Online (FOLHA


ONLINE, 2010) definimos backbone como:
Em portugus, espinha dorsal. O backbone o trecho de maior
capacidade da rede e tem o objetivo de conectar vrias redes locais.
No Brasil, foi a RNP (Rede Nacional de Pesquisa) que criou o
primeiro backbone da Internet, a princpio para atender entidades
acadmicas que queriam se conectar rede. Em 1995, a Embratel
comeou a montar um backbone paralelo ao da RNP para oferecer
servios de conexo a empresas privadas. Os fornecedores de acesso
costumam estar ligados direta e permanentemente ao backbone.
Para os demais usurios, a Internet comeou a ser acessvel a partir de
1995, quando a iniciativa privada comeou a explorar o servio de acesso
Internet. Desta forma, um nmero cada vez maior de computadores
brasileiros puderam ser conectados Internet.
Um resumo de alguns dos principais fatos que marcaram a histria da
Internet no Brasil apresentado por CARVALHO (2010):
[...]1987 A FAPESP (Fundaes de Pesquisa do Estado de So Paulo)
e o LNCC conectaram-se a instituies nos EUA. Aps conseguirem
acesso a redes internacionais, essas instituies incentivaram outras
entidades do Pas a usar as redes.
As entidades conectavam-se utilizando recursos prprios e pagando
EMBRATEL as tarifas normais pela utilizao de circuitos de
comunicao de dados. O critrio utilizado para selecionar onde se
conectar normalmente foi em funo da distncia.
Esse modelo funcionou por algum tempo e mostrou a necessidade de
um projeto adequado para a formao de um backbone nacional (para
conectar os centros provedores de servios especiais a redes regionais
que, por sua vez, tambm deviam ser fomentadas).
1988 A UFRJ conectou-se a UCLA, seguida de vrias universidades
e centros de pesquisa que conectaram seus equipamentos a uma dessas
instituies.

Servio de Rede para Internet


1990 Lanamento oficial da Rede Nacional de Pesquisa (RNP), que
contou com o apoio da Fapesp, Faperj e Fapergs sob a coordenao
poltica e oramentria do CNPq. At abril de 1995, a atuao da
RNP se restringia a reas de interesse da comunidade de educao e
pesquisa do Pas. Sua misso bsica disseminar o uso da Internet no
Brasil, especialmente para fins educacionais e sociais. A RNP oferece
conectividade IP em termos comerciais, extremamente competitivos
em todos os estados do pas.
Importante enfatizar que a RNP uma iniciativa do Ministrio da
Cincia e Tecnologia (MCT) cujo objetivo implantar uma moderna
infraestrutura de servios Internet, com abrangncia nacional.
1991 Apresentao do planejamento de uma forma mais adequada
de interconectar os diversos centros de pesquisa do pas. Em 7 de junho
deste ano houve a aprovao da implantao de um backbone para a
RNP, financiada pelo CNPq.
1992/1993 Implantao de uma espinha dorsal de comunicao,
cobrindo maior parte do pas, s velocidades mnimas de 9.600 bits
por segundo (bps).
1994/1995 Estados que tinham POP (ponto de presena) oficial da
RNP ou um ponto de acesso operado por alguma instituio local
e aberto comunidade de educao e pesquisa na regio: Alagoas,
Amazonas, Bahia, Cear, Distrito Federal, Esprito Santo, Gois,
Maranho, Mato Grosso do Sul, Minas Gerais, Par, Paraba, Paran,
Pernambuco, Piau, Rio de Janeiro, Rio Grande do Norte, Rio Grande
do Sul, Santa Catarina, So Paulo e Tocantins.
Abril/1995 O Ministrio das Comunicaes e o Ministrio da Cincia
e Tecnologia decidiram lanar um esforo comum de implantao
de uma rede Internet global e integrada, abrangendo todo tipo de
uso. Surgiu, ento, o backbone nacional de uso misto (comercial e
acadmico), resultante da expanso e reconfigurao do backbone de
uso puramente acadmico.
Maio/1995 Criao do Comit Gestor Internet, que conta com
a participao do MC e MCT, de entidades operadoras e gestoras
de espinhas dorsais, de representantes de provedores de acesso ou
de informaes, de representantes de usurios e da comunidade
acadmica. (CARVALHO, 2010).

1.4 Principais Servios da Internet


Faremos uma apresentao muito sucinta dos principais servios
utilizados na Internet e, no decorrer desta disciplina, detalharemos
a maioria deles. Porm, antes de iniciarmos, vamos definir o que so
servios de Internet.
Servios de Internet, no conceito desta disciplina, so protocolos e
aplicativos implementados para disponibilizar alguma funcionalidade

15

16

Prof. Gilmar Luiz Vassoler

para o usurio, tais como: navegao, envio de mensagens (e-mail),


transferncias de arquivos, entre outros.
1.4.1 Navegao
Dentre todos os servios oferecidos pela Internet, a navegao entre os
sites, , sem dvida, o mais utilizado.

Uma dica!
Quando nos referimos navegao na Internet, estamos utilizando
um termo que significa a troca de uma pgina para outra, por links
colocados no cdigo HTML, utilizando o protocolo HTTP. Outro termo
comumente utilizado para a mesma tarefa surfar na Internet.
Navegando na Internet, podemos encontrar textos e referncias para
vrios assuntos, conhecer alguns aspectos culturais de outros pases,
que provavelmente no conhecemos, e trocar experincias em todos os
nveis. Por tudo isso, a Internet tornou-se o principal meio de pesquisa,
tanto acadmico, como profissional e pessoal.
importante enfatizar que h um grande perigo no uso da Internet
como meio de pesquisa pois nem todas as informaes encontradas so
corretas ou verdadeiras, e o uso indevido do nome das personalidades
fato comum no contedo encontrado, por isso importante utilizar
informaes de sites seguros e reconhecidos.
1.4.2 Troca de Arquivos
Outro benefcio obtido pelo uso da Internet so as trocas de informaes
atravs de arquivo. Para transportar os arquivos pela rede, normalmente
utiliza-se o protocolo FTP (File Transfer Protocol). Nele, a transferncia
feita em padro BINRIO ou ASCI, possibilitando a transferncia
entre dois computadores de grande volume de dados pela rede.
A transferncia ASC a opo usada para transferir arquivos em modo texto.
A transferncia BINRIA a opo usada para transferir arquivos de
outros formatos, como: executveis, vdeos, sons e imagens.

Servio de Rede para Internet

1.4.3 Correio Eletrnico E-MAIL


O e-mail permite que as pessoas se comuniquem como se estivessem
enviando cartas pelo correio, com a vantagem de que o recebimento
muito mais rpido e a entrega pode ser confirmada em poucos minutos.
Em todo mundo, circulam milhes de mensagens e esse servio tornouse indispensvel na atualidade. O funcionamento do e-mail possvel
graas a dois tipos de protocolos: o POP (Post Office Protocol), que retira
as mensagens do servidor de e-mail, e o SMTP (Simple Mail Transfer
Protocol), que envia as mensagens conectando-se aos servidores dos
destinatrios.
Vrios novos servios esto se popularizando na Internet, tais como:
acesso remoto, vdeoconferncia, transmisso ao vivo, chats ou batepapo, mensagens instantneas, entre outros.

1) Neste texto foram apresentados trs servios de Internet: quais


outros servios voc conhece e costuma utilizar? Apresente sua
resposta para o seu tutor a distncia.
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
______________________________________________________

17

18

Prof. Gilmar Luiz Vassoler

1.5 Protocolos de Comunicao


Para dar suporte aos servios que existem na Internet, foram
criados os protocolos.
Os protocolos nada mais so do que padres de comunicao para
possibilitar o funcionamento de uma rede de computadores, que, apesar
de diferenas enormes entre seus participantes (computadores com
diferentes sistemas operacionais, lnguas, velocidades, capacidades de
memria), conseguem se comunicar entre si com extrema perfeio.
Toda rede de computadores tem sua comunicao dependente de um
protocolo, ou de vrios.

Uma definio mais formal de protocolo : um protocolo define


o formato e a ordem das mensagens trocadas entre duas ou mais
entidades comunicantes, bem como as aes realizadas na transmisso e/ou no recebimento de uma mensagem ou outro evento
(KUROSE, 2006, pg. 7).
Um protocolo muito importante e que d sustentao para a Internet o
protocolo IP (Internet Protocol). Sua principal caracterstica promover
a identificao universal de cada computador ligado Rede, atribuindo
a ele um endereo nico - o endereo IP.
Quando um computador se conecta na Internet, recebe um endereo
IP de um servidor da empresa que prov seu acesso. Para garantir
a unicidade do endereo, este servidor no vai atribuir aquele
endereo IP a nenhum outro computador que se conectar enquanto
o primeiro computador ainda permanecer conectado. Aps a sada
(desconexo) do computador, o endereo IP poder ser atribudo a
qualquer outro computador.
Juntamente com o IP, existem diversos outros protocolos que atuam em
conjunto para que as diversas partes da comunicao entre computadores
sejam realizadas. Abaixo, citamos alguns dos protocolos mais utilizados
na Internet e apresentamos os servios bsicos que eles proveem:
TCP (Transmission Control Protocol) - Protocolo responsvel pelo
servio de transporte fim-a-fim da informao, orientado conexo.
Assim, ele promove, de forma confivel, o empacotamento dos dados
na origem para possibilitar sua transmisso e o desempacotamento
dos dados no local de destino.

Servio de Rede para Internet

UDP (User Datagram Protocol) - Assim como o TCP, o UDP um


protocolo da camada de transporte (fim-a-fim), porm sem conexo.
Desta forma, ele no fornece confirmaes de mensagens, simplesmente
transporta datagramas. Este um protocolo no confivel.
DNS (Domain Name System) - O servio de DNS traduz nomes para
os endereos IP e endereos IP para nomes respectivos, permitindo a
localizao de mquinas em um domnio determinado.
HTTP (Hiper Text Transport Protocol) - Responsvel pela transferncia
de Hiper Texto, que possibilita a leitura das pginas da Internet pelos
nossos Browsers (programas navegadores).
FTP (File Transfer Protocol) - Responsvel pelo servio de transferncia
de arquivos pelas estaes da rede.
POP3 (Post Office Protocol version 3) - Responsvel pelo servio de
recebimento das mensagens de Correio Eletrnico.
SMTP (Simple Mail Transfer Protocol) - Responsvel pelo servio de
envio das mensagens de Correio Eletrnico.
No prximo captulo, trabalharemos com mais detalhes sobre a pilha de
protocolos TCP/IP.

1) Apresente um programa que utilize os protocolos apresentados


no texto acima.
TCP: __________________________________________________
UDP: __________________________________________________
DNS: __________________________________________________
HTTP: __________________________________________________
FTP: ___________________________________________________
POP3: __________________________________________________
SMTP: __________________________________________________

19

20

Prof. Gilmar Luiz Vassoler

ARQUITETURA TCP/IP

A arquitetura TCP/IP ou pilha TCP/IP , na verdade, um conjunto de


protocolos que possibilitam a interligao de diferentes tecnologias de
redes fsicas, o que permitiu o surgimento da Internet.
Entre os protocolos mais importantes da arquitetura TCP/IP esto
o TCP (Transmission Control Protocol, Protocolo de Controle de
Transmisso) e o IP (Internet Protocol, Protocolo de Internet), que sero
apresentados com mais detalhes em breve. A figura 2 apresenta como
alguns protocolos esto divididos na arquitetura TCP/IP em relao ao
modelo de referncia OSI.
Figura 2 Arquitetura de protocolos TCP/IP

Fonte: SOARES (1995, pg 406)

2.1 Apresentao da arquitetura TCP/IP


Para apresentarmos a arquitetura TCP/IP, vamos compar-la ao modelo
de referncia OSI que foi estudado em disciplinas do semestre anterior.

22

Prof. Gilmar Luiz Vassoler



Figura 3 Arquitetura de protocolos TCP/IP comparada


com o modelo de referncia OSI

Como pode ser visto na Figura 3, a arquitetura TCP/IP tem quatro


camadas que sero descritas a seguir:
- Camada de Aplicao: a interface entre as aplicaes dos usurios e
a rede. tambm o local onde se encontram os protocolos de aplicao,
tais como: o HTTP, SMTP, FTP, NFS, TELNET, etc. Cada programa se
comunica com um protocolo de aplicao diferente, dependendo da
finalidade para a qual ele foi projetado. Os protocolos da camada de
aplicao se comunicam com os protocolos na camada de Transporte
para enviar a informao pela rede.
- Camada de Transporte: a responsvel por realizar a multiplexao/
demultiplexao das aplicaes (utilizando os conceitos de portas que
sero visto mais frente neste texto). Porm, sua principal funo criar
um canal de comunicao fim-a-fim entre duas mquinas e promover
o envio das informaes de forma segura. Para tanto, normalmente os
dados enviados pela camada de aplicao so divididos em pacotes e
enviados imediatamente para a camada inferior, a camada Internet.
Nesta camada se encontram os protocolos TCP e UDP que sero
estudados no item 2.3.
- Camada de Internet: contm diversos protocolos, dentre os quais
o mais importante , sem dvida, o protocolo IP (Internet Protocol,
Protocolo Internet). Suas funes incluem encapsular os pacotes
recebidos da camada de Transporte em datagramas que possuem
endereo IP e envi-los para a rede pela rota mais adequada. Desta
forma, o IP executa a funo de endereamento universal da mquina
e roteamento dos pacotes.

Servio de Rede para Internet

- Camada Interface com a Rede: recebe os datagramas da camada


de Internet que encapsula estes datagramas, para que possam ser
transmitidos pelo meio fsico (seja ele qual for: ar, fio metlico
ou fibra ptica). Na tecnologia mais comum de redes fsicas que
utilizamos, as redes Ethernet, a camada de Interface com a Rede
subdividida em trs subcamadas:
Controle do Link Lgico (LLC) Converte os dados em um fluxo de
bits e gerencia o envio destes dados;
Controle de Acesso ao Meio (MAC) Gerencia como o meio fsico vai
ser acessado por diversos computadores;
Fsica Converte os dados bits lgicos (1 e 0) em sinais fsicos capazes
de serem transmitidos pelo meio fsico em questo.
A seguir, vamos detalhar melhor as camadas e os protocolos da
arquitetura TCP/IP.

1) Pesquise e apresente o conceito do que multiplexao e demultiplexao. Apresente, tambm, um caso de uso destes conceitos.
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

23

24

Prof. Gilmar Luiz Vassoler

2.2 Camada de Aplicao


Uma estrutura de redes s existe para atender as aplicaes pois, se no
fosse para este fim, os protocolos em si no teriam nenhum propsito.
Em se tratando da camada de aplicao da pilha TCP/IP, as
aplicaes padres - ou protocolos, como so comumente chamados
- so especificadas em documentos denominados RFC (Request For
Comments) e implementadas de forma isolada. Desta forma, no existe
nenhum padro semelhante aos que existem no modelo OSI que diga
como uma aplicao deva ser estruturada.
Quando pesquisamos na Literatura por servios de rede, deparamo-nos
com aplicaes especificadas na forma de protocolos que existem nesta
camada. Dentre elas, as mais conhecidas so:
HTTP (HyperText Transfer Protocol, Protocolo de Transferncia
Hipertexto);
FTP (File Transfer Protocol, Protocolo de Transferncia de Arquivos);
DNS (Domain Name System, Sistema de Nome de Domnio);
SMTP (Simple Mail Transfer Protocol, Protocolo Simples de Transferncia de Correspondncia);
POP3 (Post Office Protocol version 3, Protocolo de Correio
Eletrnico, verso 3).
Os programas clientes, tais como navegadores, leitores de e-mail,
aplicaes peer-to-peer, quando necessitam acessar a rede fazem
solicitao para camada de aplicao, sendo atendidos pelo protocolo
correspondente, por exemplo: ao digitar o endereo cead.ifes.edu.br em
seu navegador, ele se comunicar com a camada de aplicao, sendo
atendido pelo protocolo DNS para que a resoluo de nomes possa
ocorrer. Depois o protocolo HTTP entra em ao para promover o fluxo
de informaes entre cliente e servidor.
Cada protocolo da camada de aplicao endereado dentro da
mquina, do ponto de vista da camada de transporte, por um nmero.
Assim, o HTTP endereado pelo nmero 80, o SMTP endereado
pelo nmero 25, e assim por diante.
Mas, o que so estes nmeros? Estes nmeros so chamados de portas,
as quais so numeradas sequencialmente de 0 a 65535 para cada

Servio de Rede para Internet

protocolo da camada de transporte. Veremos o conceito de portas com


mais detalhes no item 3.2.
Como j foi mencionado, o uso das portas possibilita camada de
transporte escolher qual aplicao est conectada a qual porta e, assim,
conhecer qual o tipo de contedo que est sendo transportado para
que, no receptor, ele possa entregar para a aplicao/protocolo correto.
A figura 4 exemplifica como esta arquitetura funciona. Veja que os
programas se comunicam com os protocolos da camada de aplicao
que, por sua vez, comunicam-se com o protocolo TCP da camada de
transporte, utilizando a sua porta padro.
Figura 4 Funcionamento da camada de aplicao

1) Explique, com suas palavras, o que voc entendeu da figura 4.


Apresente sua resposta ao seu tutor a distncia.
______________________________________________________
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

25

26

Prof. Gilmar Luiz Vassoler

2.3 Camada de Transporte


A arquitetura TCP/IP oferece dois protocolos para transporte com
caractersticas bem distintas, como apresentados a seguir:
- primeiro temos o TCP, que o protocolo mais utilizado por esta
camada. Ele um protocolo robusto, orientado conexo e que fornece
um servio de transporte de dados confivel. Entre as principais tarefas
que ele executa, podemos destacar:
quebra da mensagem original, vinda da camada de aplicao
em pacotes seqenciados, para possibilitar a remontagem destes
pacotes no destino;
checagem do contedo do pacote, verificando assim a integridade dos
dados recebidos e enviando um sinal de confirmao, caso tudo esteja
correto, chamado acknowledge (ack);
retransmisso automtica dos pacotes perdidos, caso nenhum sinal de
acknowledge seja recebido;
estabelecimento e trmino de conexo;
negociao da taxa de transferncia, entre outras funcionalidades.
- o segundo protocolo da camada de transporte TCP/IP o protocolo
UDP (User Datagram Protocol, Protocolo de Datagrama do Usurio).
Este protocolo no orientado conexo e tampouco faz controle dos
pacotes transmitidos. Desta forma, dizemos que este protocolo no
confivel. Porm, mais rpido.
Talvez voc esteja se perguntando: para que serve o protocolo UDP? Ele
utilizado em alguns contextos que exigem velocidade e cuja perda de
pacotes no interfira (muito) no resultado final, como requisies DNS,
transmisso de udio e vdeo em tempo real, etc.
Assim, quando utilizamos o UDP, a responsabilidade de verificar se
os dados recebidos esto intactos, bem como ordenar estes pacotes
recebidos, da aplicao que solicita a transmisso.
Tanto o TCP quando o UDP adiciona um cabealho aos dados que sero
transmitidos e retiram este cabealho dos pacotes que so recebidos.
O cabealho adicionado aos dados possui vrias informaes de
controle, dentre as quais: o nmero da porta de origem, o nmero da

Servio de Rede para Internet

porta de destino, o nmero de sequncia e uma soma de verificao,


comumente chamada checksum ou CRC, que usada para verificar se o
dado foi recebido com sucesso no destino.
No UDP o cabealho tem 8 bytes, enquanto no TCP o cabealho
tem entre 20 e 24 bytes (dependendo se o campo opes estiver
sendo ou no usado).
Na figura 5, ilustramos o pacote de dados gerado na camada de
transporte. Este pacote de dados ser enviado para a camada Internet
(se estamos transmitindo dados) ou ser recebido da camada Internet
(se estamos recebendo dados).
Figura 5 Pacote da camada de transporte.

1) Explique, com suas palavras, o que voc entendeu da figura 5.


Apresente sua resposta para seu tutor a distncia.
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

27

28

Prof. Gilmar Luiz Vassoler

2.4 Camada Internet


A camada de Internet realiza a identificao universal das mquinas
e roteamento dos pacotes utilizando o protocolo IP (Internet Protocol,
Protocolo de Internet).
A identificao universal das mquinas realizada por meio de um
endereo de rede que deve ser nico em toda a rede. No caso da
Internet, deve ser nico em todo o mundo. A este endereo damos o
nome de endereo IP.
Para tanto, o protocolo IP adiciona um cabealho ao pacote de dados
recebidos da camada de Transporte. Neste cabealho, esto os dados de
controle, o endereo IP de origem e o endereo IP de destino.
A segunda tarefa o roteamento, que nada mais do que encontrar o
caminho pelo qual os dados devem passar para chegar ao seu destino.
A descoberta deste caminho ocorre de forma dinmica: a mquina de
origem encaminha os pacotes para o seu roteador (gateway) padro, que
encaminha os pacotes para outro roteador at que chegue ao roteador
do destino, que, por sua vez, tambm encaminha para a mquina a
qual o pacote pertence. A deciso de para qual mquina encaminhar
tomada com base nas tabelas de rota de cada roteador.
Veremos no item 3.1 que o endereo IP possui duas informaes: (1)
a rede a qual o computador pertence e (2) o endereo do computador
nesta rede. por meio da informao (1) que os roteadores conseguem
encaminhar os pacotes at o seu destino.
Um bom exerccio para verificar a rota que um pacote est tomando
pode ser realizado utilizando um programa chamado traceroute (Linux)
ou tracert (Windows). Experimente executar o comando apontando
para algum site de interesse. Existem tambm ferramentas online que
fazem o servio. No site http://ping.eu/ temos vrias ferramentas que
podem ser utilizadas, dentre elas o traceroute.
Na camada de Internet, existem outros protocolos, a saber:
ICMP (Internet Control Message Protocol, Protocolo de Controle
de Mensagens Internet) um protocolo utilizado para reportar as
mensagens de erro que ocorrem na rede. Ser explicado no item 3.3.
ARP (Address Resolution Protocol, Protocolo de Resoluo de
Endereos) um protocolo utilizado para converter endereos IP em
endereo MAC.

Servio de Rede para Internet

RARP (Reverse Address Resolution Protocol, Protocolo de Resoluo


de Endereos Reversos) - um protocolo utilizado para converter
endereo MAC em endereo IP.
Para transmitir os dados da camada de transporte, o IP os divide em
unidades chamadas de datagramas. Nenhum tipo de confirmao de
recebimento (acknowledge) aplicado aos datagramas. Logo, j que o IP
no implementa nenhum mecanismo de confirmao de recebimento,
ele um protocolo no confivel. E, de fato, nem precisa ser confivel,
pois este papel j realizado pelo protocolo da camada de transporte.
O tamanho mximo que um datagrama pode assumir de 65.535
bytes, incluindo o cabealho, que pode usar 20 ou 24 bytes,
dependendo se um campo chamado opes for usado ou no. Por
meio da subtrao simples, cada datagrama IP pode transportar at
65.515 ou 65.511 bytes de dados.
Caso os dados recebidos da camada de transporte no caibam em
um nico datagrama, o IP dividir estes dados em tantos datagramas
quantos forem necessrios.
A figura 6 ilustra o processo de encapsulamento dos dados da camada
de transporte dentro do datagrama IP. Observe que, do ponto de vista
da camada Internet, todo o pacote da camada de transporte (cabealho
+ dados) so apenas dados para o protocolo IP.
Figura 6 Datagrama IP

Neste ponto importante enfatizar que o pacote IP no tem, necessariamente, o tamanho de 65.535 bytes. Desta forma, o campo de dados
do datagrama no tem um tamanho fixo. Para otimizar o processo
de transmisso, o sistema operacional ir configurar o tamanho do

29

30

Prof. Gilmar Luiz Vassoler

datagrama IP para ter o tamanho mximo da rea de dados, do quadro de


dados, usado pela sua tecnologia de rede fsica. Este tamanho mximo
chamado MTU (Maximum Transfer Unit, ou Unidade de Transferncia
Mxima) e, no caso das redes Ethernet, de 1.500 bytes.

Saiba um pouco mais...


Para as redes do tipo Ethernet, o sistema operacional configura o
protocolo IP para criar datagramas IP com 1.497 ou 1.492 bytes, em
vez de 65.535, otimizando o uso do quadro Ethernet e minimizando
o nmero de fragmentos. Isso se deve ao fato da camada LLC utilizar
3 ou 5 bytes para adicionar seu cabealho.
Tambm importante enfatizar que o Ethernet um conjunto
de protocolos que trabalha com as camadas fsicas e de enlaces,
relativas ao modelo de referncia OSI. Assim, ele est preocupado
com a parte mais baixada rede, que a transmisso propriamente
dos dados.
J sabemos que o MTU o tamanho mximo da unidade a ser
transportada na rede fsica. Sabemos, tambm, que para o datagrama IP
chegar ao seu destino ele pode passar por diversos tipos de rede. Logo,
o que acontece se, no meio do caminho, o MTU da rede fsica utilizada
for menor que o tamanho do datagrama original?
Neste caso, o protocolo IP vai lanar mo de um mecanismo chamado
de fragmentao, no qual vai criar tantos datagramas quanto forem
necessrios para transmitir o datagrama original, limitando os tamanhos
destes ao tamanho da nova MTU. A partir da, o pacote original s ser
remontado no destino. A justificativa para isso que, para os roteadores
intermedirios remontarem os datagramas, iriam consumir memria
e processamento, tornando o processo de roteamento mais demorado.
Alm disso, existe o fato de que os pacotes fragmentados so comutados
e podem ser encaminhados por rotas diferentes.
Os campos utilizados pelo IP para controlar o processo de fragmentao
so: Flags, Fragment Offset, Total Length.
Vamos ver o exemplo da figura 7, no qual um datagrama original
fragmentado em dois datagramas menores. Observe que cada datagrama
ainda possui seu cabealho e que os IDs dos datagramas fragmentados
o mesmo ID do datagrama original. O que muda so os campos de
DF=0 indicando que o pacote um fragmento, MF=0 indicando que
o pacote o ltimo fragmento, e OFSET indicando qual a posio em
bytes deste fragmento em relao ao datagrama original.

Servio de Rede para Internet


Figura 7 Fragmentao do datagrama IP

1) Seria possvel no utilizar o ARP e o RARP na camada de Internet? Justifique sua resposta.
______________________________________________________
_____________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

31

32

Prof. Gilmar Luiz Vassoler

2.5 Camada Interface com a Rede


A camada de interface com a rede define o tipo de rede fsica qual o
computador est ligado. Como j mencionamos, o mais comum que
os computadores estejam utilizando uma rede do tipo Ethernet (as redes
sem fio tambm so um tipo de rede Ethernet).
Como j apresentadas, as redes Ethernet so compostas pelas camadas
LLC, MAC e Fsica, conforme apresentado na figura 8.
Figura 8 Arquitetura Ethernet

A camada LLC realiza o controle lgico do Link e responsvel por criar


uma interface padro para que a camada de Internet possa entregar/
receber seus datagramas. Para isso, ela gera um quadro com algumas
informaes de controle que so passadas para a camada MAC.
A camada MAC, por sua vez, a responsvel por prover um
mecanismo de endereamento na rede fsica e montar o quadro que
ser enviado para a rede.
Usualmente chamamos o endereo fsico da rede de endereo MAC
e este fica armazenado na placa de rede Ethernet do computador.
Assim, se trocarmos a placa de rede estaremos trocando o endereo
fsico da mquina.
O quadro MAC possui os campos de endereo de origem e de destino,
alguns campos de controle e um campo para checagem do contedo do
quadro chamado de CRC que fica no final no quadro.
A camada Fsica converte os bits do quadro em sinais fsicos (eltricos
se for uma rede com cabos metlicos ou eletromagnticos se for uma

Servio de Rede para Internet

rede sem fio). Esta camada tambm define o formato dos conectores e o
tipo de meio de transmisso que ser utilizado.
A figura 9 mostra a estrutura completa do quadro gerado. Tal como
em outras camadas, os cabealhos adicionados pelas camadas
superiores so vistos como dados pela camada LLC. A mesma coisa
acontece com o cabealho inserido pela camada LLC, que ser visto
como dado pela camada MAC. Com j foi observado, a camada MAC
adiciona um campo ao final do quadro que utilizado para verificar
a integridade dos dados.
Figura 9 Quadro Ethernet.

1) Pesquise e responda: quais as principais diferenas entre a arquitetura do modelo OSI e a arquitetura TCP/IP?
______________________________________________________
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

33

34

Prof. Gilmar Luiz Vassoler

2) Quais as vantagens e desvantagens da arquitetura TCP/IP no


possuir uma camada de sesso e apresentao dos dados? Quem
realiza as atividades que deveriam ser feitas por estas camadas?
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

AVANANDO NO TCP/IP

At agora explicamos a arquitetura bsica do protocolo TCP/IP e como


os protocolos bsicos envolvidos (como o TCP, o UDP e o IP) funcionam.
Chegou a hora de nos aprofundarmos um pouco mais e explicarmos
outras funcionalidades, como o endereamento IP, o conceito detalhado
de porta dos protocolos da camada de transporte e outros protocolos da
arquitetura TCP/IP que no foram comentamos antes, como: DHCP,
ICMP e ARP.
importante lembrar que existem muitos outros protocolos relacionados
com a pilha TCP/IP e que s estamos explicando os mais importantes.

3.1 Endereamento IP
Cada equipamento interligado Internet possui um endereo IP que, de
forma genrica, um endereo que indica qual este equipamento e a
que rede ele pertence.
Atualmente, trabalhamos com a verso 4 (IPv4) do protocolo IP. Assim,
cada endereo IP um nmero de 32 bits, escrito com quatro octetos,
representados no formato decimal (exemplo: 201.39.122.104).
importante observar que um endereo IP no identifica uma
mquina individual, mas uma conexo inter-rede. Assim, um
gateway conectando a N redes tem N endereos IP diferentes, um
para cada conexo.
3.1.1 Classes de endereos
Teoricamente, temos 232 = 4.294.967.296 endereos IPs disponveis e,
para que estes endereos fossem distribudos de forma organizada, o
espao do endereo foi dividido em poucas estruturas de tamanho fixo
chamados de classes de endereo nos quais os trs principais so:
classe A, classe B e classe C.
Para determinar a qual classe um endereo pertence, o software do IP
examina os primeiros bits de um endereo e, assim, consegue determinar
rapidamente qual a sua classe.

36

Prof. Gilmar Luiz Vassoler

Por conveno, as classes foram criadas da seguinte forma:


Classe A: primeiro bit 0 (zero);
Classe B: primeiros dois bits so 10 (um, zero);
Classe C: primeiros trs bits so 110 (um, um, zero);
Classe D: (endereamento multicast): primeiros quatro bits so: 1110
(um, um, um, zero);
Classe E: (endereo especial reservado): primeiros cinco bits so 11110
(um, um, um, um, zero).
A tabela, a seguir, contm o intervalo das classes de endereos IPs:
Classe
A
B
C
D
E

Gama de Endereos
1.0.0.0 at 126.0.0.0
128.0.0.0 at 191.255.0.0
192.0.0.0 at 223.255.255.254
224.0.0.0 at 239.255.255.255
240.0.0.0 at 247.255.255.255

N de Endereos por Rede


16 777 216
65 536
256
Multicast
Uso futuro. Atualmente
reservada a testes pela IETF.

Um pouco mais...
De acordo com (MULTICAST, 2010):
O multicast o envio de trfego de rede a um grupo de pontos de extremidade.
Somente os membros desse grupo de pontos de extremidade que estiverem
escutando trfego multicast (o grupo de multicast) processaro o trfego multicast.
Todos os outros ns iro ignor-lo.

3.1.2 Endereos especiais


Prevendo a necessidade de aplicaes especiais que fizessem uso do
endereo IP, a IANA criou classes especiais que no so consideradas
pblicas e no so consideradas como endereveis.
A Internet Assigned Numbers Authority (IANA) o rgo
responsvel pela coordenao global do DNS raiz (que vamos
trabalhar mais a frente), do endereamento IP, do protocolo de
Internet e outros recursos.

37

Servio de Rede para Internet

Tais classes servem, por exemplo, para a comunicao com uma rede
privada ou com o computador local (localhost). As principais so
apresentadas na tabela abaixo:
Blocos de Endereos
Reservados
10.0.0.0/8
127.0.0.0/8
169.254.0.0/16
172.16.0.0/12
192.168.0.0/16
255.255.255.255

Utilizao
Rede interna privada
Localhost
Zeroconf.
Rede interna privada
Rede interna privada
Broadcast

Referncia
RFC 1918
RFC 3330
RFC 3927
RFC 1918
RFC 1918

Para entender melhor a tabela leia os tpicos abaixo:


Localhost
Foi convencionado que a faixa de IP entre 127.0.0.0 e 127.255.255.255
reservada para a comunicao com o computador local (localhost).
Desta forma, qualquer pacote enviado para estes endereos ficar no
computador que os gerou, porm sero tratados como se fossem pacotes
recebidos pela rede (Loopback).
Para que serve isso? O endereo de loopback local (127.0.0.0/8) permite
aplicao-cliente enderear um servidor na mesma mquina sem
saber o endereo real da mquina, chamado de localhost.
Se voc estiver em frente ao computador, execute o seguinte comando:
ping localhost. O que aconteceu?
Como funciona a interface de loopback: sempre que um pacote enviado
para o endereo localhost (172.0.0.1), ele entra na pilha do protocolo
TCP/IP, flui para a camada de rede, onde a camada do protocolo IP
reencaminha de volta atravs da pilha. Desta forma, no feita distino
entre ligao remota e local.
Redes privadas
Como j foi apresentado, existem trs faixas de endereos reservadas
para redes privadas. Assim, estas faixas no podem ser roteadas para
fora da rede privada, ou seja, no podem se comunicar diretamente com
a Internet pblica. Quem normaliza estes endereos reservados dentro
das classes A, B e C a RFC 1918.

38

Prof. Gilmar Luiz Vassoler

3.1.3 Mscara de rede

Sobre a mscara de rede...


Uma mscara de rede, tambm conhecida como netmask, um
nmero de 32 bits usada para separar, em um endereo IP, a parte
correspondente rede e a parte correspondente mquina.
No protocolo IP, uma rede identificada por seu endereo base e sua
mscara de rede, o que foi criado com o intuito de facilitar o roteamento
dos pacotes. Assim, os endereos so divididos em duas partes:
o endereo da rede que identifica toda a rede. Este o endereo de
todos os ns de uma rede e normalmente comeam com a mesma
sequncia;
O endereo da mquina que identifica uma ligao a uma mquina
com a rede. importante destacar que uma mquina pode possuir mais
de um endereo IP.
A mscara de rede utilizada para determinar qual a parte do endereo
IP que representa a rede e qual parte o endereo do host.
Cada classe do endereo IP possui uma mscara de rede padro, como
mostrado abaixo:
para um endereo de classe A, a mscara ser 255.0.0.0, indicando que
o primeiro octeto se refere rede e os trs ltimos, mquina;
para um endereo classe B, a mscara padro ser 255.255.0.0, onde os
dois primeiros octetos referem-se rede e os dois ltimos, mquina;
para um endereo classe C, a mscara padro ser 255.255.255.0, onde
apenas o ltimo octeto refere-se mquina.
Os bits das mscaras de rede so divididos em dois grupos: primeiro,
um bloco de bits 1s seguido por um bloco de bits 0s, no qual os bits 1s
indicam a parte do endereo IP que pertence rede; e os bits 0s, que
indicam a parte que pertence mquina.
Para facilitar a compreenso para as pessoas, normalmente as mscaras
de sub-rede so representadas com quatro nmeros de 0 a 255, separados
por trs pontos. Assim, a mscara 255.255.255.0 (em binrio 1111111
1.11111111.11111111.00000000), indica que os primeiros trs octetos

Servio de Rede para Internet

do endereo IP formam o nmero de rede e o quarto o nmero da


mquina).
mais fcil entender o funcionamento das mscaras de rede usando a
notao binria. Assim, para determinar qual parte de um endereo o
da rede e qual o do host, um dispositivo deve realizar uma operao
AND bit a bit.
Vejamos o exemplo:
IP completo 200.242.162.10 11000000.10101000.00000101.00001010
AND

255.255.255.0

11111111.11111111.11111111.00000000

End. da rede 200.242.162.0 11000000.10101000.00000101.00000000

Para representar um endereo de forma completa, devemos


apresentar o IP e a mscara do mesmo. Por exemplo:
192.168.100.5/255.255.255.0
Uma forma de abreviar a mscara apresent-la em funo da
quantidade de nmeros 1s que ela possui. Assim, o exemplo acima
poderia ser apresentado de forma reduzida como: 192.168.100.5/24.
Talvez voc esteja pensando: por que 24?
A resposta : o nmero 255 em binrio 11111111, e, como temos 3
octetos com o nmero 255, temos um total de 24 bits 1s.
Para as mscaras padres (que representam as classes A, B e C de
IP), temos:
Classe A

255.0.0.0

/8

Classe B

255.255.0.0

/16

Classe C

255.255.255.0

/24

3.2 Portas da camada de transporte


O endereo IP identifica, de forma nica, uma mquina na rede. Porm,
uma mquina pode estar executando diversas aplicaes. Assim, quando

39

40

Prof. Gilmar Luiz Vassoler

uma aplicao cliente deseja conectar-se aplicao servidora, esta deve


fornecer o endereo IP do servidor e a porta de destino da aplicao.
Vamos entender melhor o que a porta de destino.
De acordo com Brandino (1998, pg 36), a ideia bastante simples: para
cada aplicao definido um nmero de porta nico que a distingue das
demais aplicaes.
Assim, a camada de transporte pode fazer o que est sugerindo a figura
10, ou seja, escolher a aplicao pela sua porta.
Figura 10 Multiplexao da camada de transporte

Informando o endereo IP de destino e o endereo da porta de destino,


identificamos uma determinada aplicao. Aplicaes padro como
o FTP (Transferncia de Arquivos) e o HTTP (Pginas Web), entre
outras, tm suas portas bem definidas, de forma que, em geral, no
precisam ser informadas pelo usurio. Ou seja, as aplicaes cliente
informam automaticamente qual a porta de destino na montagem
dos pacotes de transporte.
Agora, vamos pensar: ser que os parmetros endereo IP de origem,
endereo IP de destino e Porta de destino formam uma conexo
que nica na Internet? A resposta no. Pois em uma mquina
cliente (IP de origem) pode haver diversas conexes com um mesmo
servidor (IP de destino) utilizando a mesma aplicao (porta de
destino). Um exemplo clssico abrirmos vrias pginas de um
mesmo site. Assim, quais das duas aplicaes da mquina do cliente
devem receber determinada resposta?
Este problema resolvido utilizando uma porta de origem, de forma que a
porta de origem vai identificar qual das instncias de um mesmo programa
esta se conectando a um mesmo servio, numa mesma mquina destino.

Servio de Rede para Internet

A Figura 11 apresenta o formato de um pacote TCP que contm os


seguintes campos:
Source Port, identifica a porta de origem;
Destination Port, identifica a porta de destino;
os campos de IP de origem e IP de destino so colocados no cabealho
do pacote IP e no do TCP ou UDP;
para informaes sobre os demais campos deste protocolo, consulte
(KUROSE, 2006).
Figura 11 Quadro TCP

A Arquitetura Cliente-Servidor
Para exemplificarmos a arquitetura cliente servidor, vamos tomar o
servio de WWW que utiliza o protocolo HTTP, no servidor cead.ifes.
edu.br (200.137.71.2). O HTTP possui uma porta padro, a porta 80.
Logo, temos, do ponto de vista de um cliente, que este servio neste
servidor identificado como:
IP de destino: 200.137.71.2

Porta de destino: 80

Para acessarmos este site de uma mquina com IP fictcio


200.189.15.25, vamos precisar de uma porta de origem. Esta porta
fornecida automaticamente pelo sistema operacional da mquina

41

42

Prof. Gilmar Luiz Vassoler

cliente. Assim, num dado momento, o sistema operacional pode


alocar a porta 6749. Logo, j temos todo os parmetros para
estabelecermos uma comunicao:
IP de origem: 200.189.15.25
Porta de Origem: 6749

IP de destino: 200.137.71.2
Porta de destino: 80

No caso de abrirmos uma nova janela no browser, e se a conectarmos


ao mesmo site utilizando o mesmo servio, o sistema operacional nos
dar outra porta de origem para que identificarmos esta nova conexo.
Suponha que a nova porta seja 7634. Portanto, teremos:
IP de origem: 200.189.15.25
Porta de Origem: 7634

IP de destino: 200.137.71.2
Porta de destino: 80

Desta forma, possvel enderear corretamente uma determinada


informao. Caso outra pessoa, em outra mquina, com o IP
200.116.14.23 queira acessar o mesmo site, pode ocorrer que o sistema
operacional daquela mquina fornea o mesmo nmero de porta de
origem que estamos utilizando, digamos 7634. Logo, teramos:
IP de origem: 200.116.14.23
Porta de Origem: 7634

IP de destino: 200.137.71.2
Porta de destino: 80

Como o IP de origem outro, no haver confuso na hora da entrega


dos pacotes.

1) Qual o significado de todos os campos do pacote do TCP?


______________________________________________________
______________________________________________________
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

Servio de Rede para Internet

2) Apresente o pacote do protocolo UDP e descreva os seus


campos.
______________________________________________________
______________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________

3.3 ICMP (Internet Control Message


Protocol)
O ICMP (Internet Control Message Protocol, Protocol de Mensagens de
Controle Internet) usado para que os roteadores informem situaes
de erros sobre a rede.
Entre as mensagens mais comuns, utilizadas pelo ICMP, podemos destacar:
Eco: utilizada para testar se o caminho entre o receptor e o transmissor
est bom. O comando Ping faz uso desta mensagem ao verificar o tempo
gasto para alcanar determinado destino.
Destino Inalcanvel: utilizada para o roteador indicar o que ocorreu
de errado, como por exemplo: rede destino inalcanvel, computador
inalcanvel, problemas de roteamento, etc.
Congestionamento: utilizada em casos em que o roteador esteja
sobrecarregado.
Redirecionamento: utilizada quando um roteador descobre que existe
uma rota melhor para alcanar o destino.
Tempo de Vida Excedido: utilizada para indicar que o tempo de vida
de um pacote foi excedido. Entende-se como tempo de vida a quantidade
de saltos (roteadores) que o datagrama pode passar do computador
transmissor at o computador receptor. Exemplo: se um datagrama est
configurado com um TTL de 10, isto significa que, se ele no chegar no
destino dentro de 10 saltos, o datagrama dever ser descartado.

43

44

Prof. Gilmar Luiz Vassoler

SERVIOS BSICOS DE REDE

A partir deste captulo, iremos abordar os principais servios de rede e


utilizar o laboratrio para instalar e configurar estes servios nas mquinas.
Assim, neste material voc encontrar uma breve descrio terica do
servio e, no ambiente online, voc encontrar os roteiros dos exerccios
de configurao de cada servio, bem como a descrio do ambiente de
testes que iremos utilizar.

4.1 DHCP (Dynamic Host Configuration


Protocol)
Para que um computador possa se conectar a uma rede TCP/IP,
ele precisa ser configurado com, no mnimo, um endereo IP e uma
mscara de rede.
Esta uma tarefa trivial, se pensarmos em redes pequenas de at 10
computadores. Agora, quando nos deparamos com redes de centenas de
computadores, a configurao manual de cada computador seria algo
cansativo e impraticvel.
Torres e Lima atentam para outro fato importante:
Alm disso, pense como seriam os provedores de acesso Internet:
eles teriam de ensinar a cada cliente a configurar seus computadores
e teriam de fornecer o endereo IP de cada um por telefone e
monitorar esses endereos, j que dois computadores no pode ter o
mesmo endereo IP. (TORRES e LIMA, 2007)

Uma vez apresentado o cenrio de utilizao, podemos, ento, introduzir


o protocolo DHCP (Dynamic Host Configuration Protocol, Protocolo
de Configurao Dinmica de Mquinas), cuja funo configurar
dinamicamente aos computadores uma dada rede para que possam
acessar a Internet, por exemplo.
O servidor DHCP permite a autoconfigurao de todos os parmetros
de rede, tais como:
Endereo IP;
Mscara de redes;

46

Prof. Gilmar Luiz Vassoler

Gateway;
Servidores de DNS;
Nome do computador;
Nome do domnio; etc.
Assim, o DHCP permite ao administrador centralizar a tarefa de
configurao dos computadores que fazem parte da rede.

Mais sobre o DHCP...


O DHCP trabalha na camada de aplicao usando as portas 67 e 68
do protocolo de transporte UDP.
Informaes mais detalhadas sobre o DHCP podem ser obtidas na
RCF 2131, acessvel em http://www.faqs.org/rfcs/rfc2131.html.

4.1.1 Atribuio de endereo via DHCP


Podemos utilizar o DHCP para atribuir endereo para um equipamento
de rede de trs formas:
Configurao Manual neste modo, associado um endereo IP a
uma determinada mquina na rede utilizando como identificao o
endereo MAC do adaptador de rede da mquina.
Configurao Automtica - neste modo, o servidor atribui um
endereo IP a um equipamento por tempo indeterminado, ou seja, na
primeira vez que o equipamento solicita um endereo IP ao servidor,
lhe atribudo um endereo permanente.
Configurao Dinmica - este o modo de funcionamento mais
importante do DHCP, onde um endereo IP locado temporariamente
a um equipamento e, periodicamente, necessria a atualizao dessa
locao.

Servio de Rede para Internet

4.1.2 Funcionamento do DHCP


Segundo BUGALLO et al:
[...] O servidor DHCP deve ser configurado pelo administrador da
rede para disponibilizar aos seus clientes, endereos IP em uma das
trs formas de fornecimento descritas acima [...] .
Nas configuraes, ser estabelecido o prazo de locao de um
endereo. Esse prazo pode variar de horas a dias ou, simplesmente, ser
ilimitado [...].
J um cliente DHCP um equipamento que est configurado para
solicitar a um servidor DHCP um endereo IP [...].

Um cliente DHCP pode passar por seis estados de aquisio:


INICIALIZA
SELECIONA
SOLICITA
LIMITE
RENOVA
VINCULA NOVAMENTE

O que define em que estado se encontra o cliente a mensagem que


ele envia para um dos servidores DHCP da sua rede (BUGALLO et al,
1999).

Aprofunde o seu conhecimento...


Um detalhamento completo destes estados pode ser obtido em
BUGALLO et al, acessvel
em http://www.rnp.br/newsgen/9911/dhcp.html.

4.1.3 Formato da Mensagem DHCP


Para entendermos como a troca de mensagens do DHCP, apresentamos
o formato do seu quadro na figura 12.

47

48

Prof. Gilmar Luiz Vassoler


Figura 12 Quadro do DHCP

Para descrever o que significa cada campo, copiamos e formatamos o


texto de BUGALLO (et al, 1999) para uma melhor apresentao dentro
no nosso material.
OP - Numa mensagem DHCP, uma solicitao e uma resposta possuem
os mesmos campos, o que as diferenciam o contedo deste campo: a
informao um indica uma solicitao, a informao dois indica uma
resposta.
HTYPE - Informa o padro de rede utilizado pelo adaptador de rede.
HLEN - Informa o tamanho do endereo MAC do adaptador de rede.
HOPS - Quantidade de roteadores pelos quais a mensagem dever
passar.
TRANSACIONT ID - Nmero de identificao da mensagem.
SECONDS - Quantidade de tempo, em segundos, desde que o cliente
fez a inicializao.
FLAGS - Utilizado para "definir" opes especiais de resposta s
solicitaes.
CLIENT IP ADDRESS - Em uma solicitao, o cliente informa o seu
endereo IP (possvel quando o cliente conhece o seu endereo).

Servio de Rede para Internet

YOUR IP ADDRESS - Utilizado pelo servidor para enviar informao


do endereo IP, disponvel para o cliente que solicitou.
SERVER IP ADDRESS - Preenchido pelo cliente quando ele quer
obter uma informao de um servidor especfico.
ROUTER IP ADDRESS - Preenchido pelo servidor para informar ao
cliente o endereo IP do roteador da rede local.
CLIENT HARDWARE ADDRESS - Informao do endereo MAC
do cliente.
SERVER HOST NAME - Quando esses campos no so utilizados
para enviar as informaes pertinentes a cada um (nome do servidor e
informao do sistema operacional que ser inicializado no cliente), o
DHCP utiliza-o remetendo informaes adicionais, transformando-os
em campo de OPES, otimizando, assim, a utilizao da mensagem.
BOOT FILE NAME - Nome do arquivo que contm a imagem de
memria das estaes correspondentes para inicializao do sistema
operacional. Normalmente utilizado em terminais do tipo thin client.
OPTIONS - Esse campo utilizado para informar que tipo de resposta
ou solicitao DHCP (DHCPDISCOVER, DHCPOFFER, etc.) est
sendo enviada para o cliente ou para o servidor.
Instalao do servio de DHCP no Linux.
A partir deste ponto da nossa disciplina iremos iniciar a parte
prtica!
E, como primeira atividade, vamos instalar o servidor DHCP
e realizar os testes necessrios. Para tanto, voc deve acessar o
ambiente online e seguir o roteiro de instalao.
Vamos l!
Servios de Terminal (Telnet e SSh)
Muito utilizado, principalmente por administradores, o servio de
terminal permite o acesso a um servidor que se encontre em qualquer
parte da Internet, por meio de um Shell. Desta forma, o usurio tem a
impresso de estar fisicamente em frente ao teclado e ao monitor do
servidor.
Basicamente, existem trs protocolos de terminal que comumente so utilizados:

49

50

Prof. Gilmar Luiz Vassoler

Telnet protocolo que fornece um terminal em modo texto. Utiliza a


porta 23 TCP e no utiliza criptografia;
Rlogin protocolo que fornece um terminal em modo texto.
Normalmente, no uma senha, e sim uma certificao para estabelecer
uma relao de confiana. Utiliza a porta 513 TCP e no utiliza
criptografia;
SSH (Secure Shell, Shell seguro) protocolo que fornece um terminal
em modo texto. Utiliza a porta 22 TCP. O destaque deste protocolo a sua
caracterstica de conexo criptografada, que assegura uma comunicao
confivel, impossibilitando que um sniffer fique bisbilhotando os
dados que esto sendo trocados na rede.
O Linux j traz em suas distribuies um cliente para cada tipo de
terminal. No Windows, podemos nos valer do programa PuTTy, que
permite conexes Telnet, Rlogin e SSH.
Instalao do servio de SSH no Linux.
Nesta atividade, iremos instalar o servidor SSH no ambiente
Linux.
Acesse o ambiente virtual e siga o roteiro.

Servio de FTP/SFTP
O FTP (File Transfer Protoco. Protocolo de Transferncia de Arquivos)
um servio da camada de aplicao que possibilita a transferncia
de arquivos entre mquinas conectadas via rede TCP/IP, como a
Internet, por exemplo.
Uma caracterstica interessante do FTP que ele utiliza a porta 20
TCP para a transferncia de dados e a porta 21 para a transferncia de
comandos. Assim o usurio, quando se conecta, informa a porta 21;
porm, quando os dados so transmitidos, utilizada a porta 20.
Utilizando este protocolo, podemos transferir qualquer tipo de
arquivo, utilizando qualquer arquitetura de computador e qualquer
sistema operacional.
Um servidor de FTP, tipicamente, possui diversos arquivos armazenados
e possibilita que um usurio que esteja utilizando um cliente FTP possa
se conectar para realizar operao de busca em um arquivo (download)
ou colocar um arquivo no servidor (upload).

Servio de Rede para Internet

Para se conectar a um servidor de FTP, preciso:


caso 1 que o usurio tenha uma conta de login neste servidor e
informe o seu login e senha para iniciar uma sesso. Uma vez iniciada
a sesso, o usurio direcionado para uma rea reservada na qual ele
pode realizar operao de download e upload.
caso 2 que o servidor aceite conexes annimas. Neste caso,
informado para o servidor que o usurio anonymous e o usurio
tipicamente informa o seu endereo de e-mail como senha. Normalmente,
este caso utilizado para realizar distribuio de arquivos de domnio
pblico. Assim, somente operaes de download esto disponveis.
Para fazermos acesso ao um servidor de FTP, necessrio o uso de um
programa cliente. Normalmente os sistemas operacionais trazem apenas
clientes em modo texto. Porm, diversas aplicaes visuais podem
ser encontradas gratuitamente na Internet. Um exemplo o software
Filezilla (disponvel em http://filezilla.softonic.com.br/).

Instalao do servio de FTP no Linux.


Nesta atividade, iremos instalar o servidor FTP no ambiente Linux.
Acesse o ambiente virtual e siga o roteiro.

4.1.4 O SFTP
O FTP cumpre bem o papel de distribuio de software. Porm, quando
o assunto segurana ele deixa a desejar, uma vez que no utiliza
conexes criptografadas.
Para suprir esta necessidade foi criado o protocolo SFTP (Security
File Transfer Protocolo, Protocolo de Transferncia de Arquivos
Seguro). De fato, este protocolo utiliza o protocolo SSH, tanto que
at a porta TCP a mesma (porta 22). Assim, da mesma forma
que o SSH, no SFTP os dados so transferidos entre o cliente e
o servidor de forma criptografada, impedindo que usurios no
autorizados acessem os seus dados.
Segundo ZEPHYR:
H dois componentes bsicos para a transferncia de arquivos
com SFTP: validao de servidor e autenticao de cliente. Estes
dois componentes usam chaves pblicas e privadas para autenticar
a comunicao entre o cliente e o servidor. O servidor validado
comparando a chave pblica do servidor com as chaves pblicas

51

52

Prof. Gilmar Luiz Vassoler


armazenadas na mquina do cliente. A chave pblica do servidor
normalmente contida em um arquivo chamado known_hosts
localizado no servidor, e a chave pblica do cliente armazenada em
um arquivo de criptografia na mquina local. (ZEPHYR, 2010)

ZEPHYR (ZEPHYR, 2010) ainda explica que os clientes podem ser


autenticados utilizando uma das trs formas, destacadas a seguir:
Nome de usurio e senha - uma conta de usurio configurada em um
servidor SFTP;
Chave privada e frase de passagem - a chave pblica do cliente
adicionada ao arquivo "authorized_keys no servidor;
Autenticao interativa no teclado - faz ao cliente uma srie de
perguntas e este precisa responder a essas perguntas corretamente para
ser autenticado.
Hoje existem duas verses do protocolo SFTP conhecidas como SSH1 e SSH-2. O recomendado que seja utilizado apenas o SSH-2, uma
vez que SSH-1 contm, ao menos, uma vulnerabilidade de segurana
conhecida.

Utilizao do STFP no Linux.


Nesta atividade, iremos utilizar o servidor SFTP no ambiente Linux.
Acesse o ambiente virtual e siga o roteiro.

O SERVIO DE DNS

Segundo Brandino:
Do ponto de vista da Internet, as mquinas so muito bem
identificadas pelo endereo IP. So estes valores (endereos IP) que
realmente viajam no pacote IP, conforme j visto anteriormente. No
entanto, do ponto de vista do usurio, estes nmeros so difceis de
serem memorizados. (Brandino, 1998, pg. 82)

Desta forma, mais fcil para o usurio guardar o nome cead.ifes.edu.br


do que o seu respectivo endereo IP 200.137.71.2.
Para facilitar a vida do usurio, foi criado o servio de DNS (Domain
Name System, Servio de Nomes), cuja funo associar nomes
simblicos a endereos IP, facilitando a utilizao da Internet como um
todo.
Ainda de acordo com Brandino:
Um nome meramente um identificador que consiste de uma
sequncia de caracteres escolhidas num alfabeto. O endereo IP
considerado um nome de baixo nvel, no entanto os usurios preferem
endereos de alto nvel. (Brandino, 1998, pg. 82)

A forma mais simples de se pensar em uma relao entre nomes e IPs


seria criar um nico banco de dados que contivesse a relao <nome,
endereo IP> de todas as mquinas da Internet. Assim, esta base de
dados poderia estar em uma ou algumas poucas mquinas na Internet e
todas as outras mquinas consultariam esta para conseguir traduzir os
nomes para endereos IP.
Esta alternativa traria alguns inconvenientes, o que a torna invivel
pelos seguintes motivos:
primeiro: toda incluso de nomes deveria que ser feita por uma nica
pessoa (ou grupo de pessoas);
segundo: seria demasiadamente complicado escolher nomes diferentes
para todas as mquinas do mundo;
terceiro: o sistema estaria sujeito a congestionamentos e falhas devido
ao alto nmero de requisies.

54

Prof. Gilmar Luiz Vassoler

Diante de todas estas limitaes, no seria possvel que o servio de


DNS fosse concentrado em uma nica mquina.
A alternativa encontrada pelos pesquisadores foi construir um banco de
dados de forma distribuda. Com isso, cada rede que compe a Internet
cuida dos nomes das suas mquinas e algumas entidades especficas
cuidam dos nomes de grandes domnios em seus pases.
O Ncleo de Informao e Coordenao do Ponto BR NIC.BR http://
www.nic.br/ uma entidade civil, sem fins lucrativos, que desde
dezembro de 2005 implementa as decises e projetos do Comit Gestor
da Internet no Brasil.
Segundo o NIC.BR, as atividades por ele desenvolvidas so:
Registro de domnios;
Segurana;
Indicadores;
Redes e operaes;
Padres web.
Neste momento, porm, estamos apenas interessados no registro de
domnios que podem ser realizados em http://registro.br. Para realizar
uma solicitao de incluso de um domnio, preciso antes verificar se ele
j existe. Caso no exista, o registro do domnio desejado pode ser criado
por qualquer pessoa sozinha ou com a ajuda de um provedor de acesso.
Ainda segundo Brandino (1998, pg. XX):
O Domain Name System (DNS) responsvel por diversas tarefas. Ele
cria uma hierarquia de domnios, referncias, ou grupos de computadores.
Estabelece um nome de referncia (tambm conhecido como endereo da
Internet) para cada computador na rede. As referncias principais tm a
responsabilidade de manter listas e endereos de outras referncias do nvel
imediatamente inferior em cada grupo. Este nvel inferior de referncias
o responsvel pelo prximo nvel e assim por diante at o usurio final, ou
computador final. O DNS utiliza esta hierarquia para transformar um
nome de computador, escrito por extenso, em um nmero denominado
endereo IP. O protocolo TCP/IP precisa saber o endereo da mquina
local e o endereo IP da mquina que se deseja conectar.
Quando o usurio informa o nome de uma mquina e no o seu endereo
IP o servio de DNS que se responsabiliza em transformar aquele nome
de mquina em endereo IP, para que se possa estabelecer a comunicao.
Em geral, este processo totalmente transparente ao usurio final.

Servio de Rede para Internet

importante enfatizar que o registro.br NO responsvel pelos nomes


das mquinas de um domnio. Por exemplo: de responsabilidade
do registro.br registrar e divulgar o domnio ifes.edu.br, mas de
responsabilidade do Ifes definir quais sero os nomes das suas mquinas
e, caso existam subdomnios, quais so os nomes das mquinas destes
subdomnios, por exemplo: o subdomnio sr.ifes.edu.br possui uma
mquina que se chama ava.sr.ifes.edu.br.
Conforme Brandino (BRANDINO, 1998, pg. 83) esclarece: [...] todo
servio pode ser acessado pelo nome hierrquico ou pelo endereo IP
correspondente. Logo, digitarmos em um Browser http://cead.ifes.edu.
br ou http://200.137.71.2 tem o mesmo significado, sendo que a primeira
opo s funciona se o computador possui o servio de DNS instalado,
j a segunda opo funciona em todos os casos.
A RCF 1035 descreve o servio de DNS e pode ser acessada em http://
www.faqs.org/rfcs/rfc1035.html.

5.1 Nomes Hierrquicos


Brandino (1998, pg. 83) explica que [...] o servio de DNS utiliza
a analogia do sistema postal para definir o nome de um determinado
domnio ou mquina. Assim como no sistema postal uma casa pode
ser localizada atravs de seu pas, estado, cidade, rua e nmero, onde
o nmero est contido na rua, que por sua vez est contida na cidade e
assim por diante.
Logo, uma mquina endereada por um conjunto de informaes;
por exemplo: a mquina ava do Campus Serra do IFES (Instituto
Federal do Esprito Santo) pode ser localizada da seguinte forma:
ava.sr.ifes.edu.br
Desta forma estamos indicando que a mquina ava est contida no
conjunto sr que, por sua vez, est contida no conjunto ifes, que est no
conjunto edu, que est no conjunto br. O que foi referido como conjuntos,
no mundo da Internet recebe o nome de domnios. Desta forma, existe o
grande domnio br. Este contm vrios subdomnios dentre os quais o
subdomnio edu, que por sua vez contm o subdomnio ifes, que por sua
vez contm o subdomnio sr que possui a mquina ava.
A figura 13 ilustra como essa diviso feita na Internet.

55

56

Prof. Gilmar Luiz Vassoler


Figura 13 Hierarquia de nomes do DNS

A figura 13 apresenta uma parte da hierarquia de DNS onde o domnio


. o nvel mais alto, vindo abaixo dele a designao dos pases. Neste
ponto, cabe ressaltar que os Estados Unidos no tm essas designaes
devido Internet ter nascido naquele pas.
Brandino (1998, pg. XX) observa que:
Abaixo de cada pas feita uma estrutura de acordo com as suas
necessidades. Observe, entretanto, que no somente uma mquina
que responde pelo domnio br, nem to pouco uma que responde pelo
domnio .. Este s um modelo esquemtico da Hierarquia de nomes;
na realidade, vrias mquinas respondem por cada um dos domnios
especificados, com objetivo de evitar falhas na resoluo de nomes.
Nem as prprias ligaes fsicas precisam existir necessariamente,
podendo ser somente conceitual, estando ligadas de outra forma.

Assim, a Internet formada por um conjunto de grandes domnios globais,


divididos em pases, como por exemplo: .br Brasil, .ca Canad, etc.
Os Estados Unidos possuem os domnios globais criados quando a
Internet era exclusiva daquele pas, como por exemplo: .mil Militar, .gov
Governamental, etc.
Cada grande domnio apresenta vrios subdomnios pelos quais so
responsveis. Por exemplo, o grande domnio global br, possui alguns
subdomnios:
ifes.edu.br IFES
rnp.br Rede Nacional de Pesquisa
cefetes.br CEFETES/IFES

Servio de Rede para Internet

5.2 Instalando o servidor de Bind no


Linux
Agora chegou a hora da nossa prtica. Para tanto, voc deve acessar o
ambiente virtual para procurar pelo roteiro de instalao do servidor de
DNS no Linux.

57

58

Prof. Gilmar Luiz Vassoler

SERVIO WEB

A Internet s o que conhecemos hoje graas ao servio WEB, por isso,


muitas vezes nos referimos Internet como WWW (World Wide Web,
Rede de Alcance Mundial).
O WWW foi desenvolvido para permitir o acesso a informaes
organizadas em forma de hipertexto. Assim, este tipo de tecnologia
permite que informaes, tais como textos, documentos,
contedos multimdia, mensagens e outros, sejam disponibilizadas
e recuperadas de forma muito simples, normalmente por meio do
que chamados de pginas WEB.
As pginas web estticas nada mais so do que um conjunto de
arquivos presentes no sistema de arquivo do servidor. E as pginas web
dinmicas so contedos mesclados de banco de dados e modelos de
pginas que so gerados dinamicamente pelo servidor e sob demanda
para o cliente que a solicita.
De fato, as pginas dinmicas so muito utilizadas nas aplicaes web
para realizar transaes pela Internet.
O servio WWW baseado na arquitetura cliente/servidor. Neste caso,
um cliente (navegador web) envia uma solicitao ao servidor que, por
sua vez, processa a solicitao e envia a resposta para o cliente.
A solicitao enviada pelo cliente consiste de uma URL (Uniform
Resource Locator, Localizador-Padro de Recursos), por exemplo:
http://cead.ifes.edu.br. Esta solicitao enviada para o servidor web,
que envia o contedo associado a este recurso, que pode consistir de
textos, imagens, sons, vdeos, etc.

6.1 A URL
De acordo com Lobo (2007, pg. 70), a URL formada pelos seguintes
campos: protocolo, servidor, porta, caminho e recurso.
Protocolo://servidor[:porta]/caminho/recurso

60

Prof. Gilmar Luiz Vassoler

Protocolo indica qual o servio que deve ser utilizado:


o http (Hyper Text Transfer Protocol, Protocolo de Transferncia
de Hipertexto): utilizado pelas pginas web;
o FTP: como j vimos, utilizado para transferncia de arquivos;
o mailto: utilizado para correio eletrnico;
o telnet: utilizado para servio de terminal remoto;
o file: utilizado para acessar um arquivo local.
Servidor[:porta] pode ser um nome ou um endereo IP, o qual vai
indicar qual o endereo do servidor. Tambm possvel especificar a
porta desejada, sendo esta porta opcional;
Caminho o caminho no sistema de arquivos do servidor web onde
se encontra o recurso desejado;
Recurso indica o recurso desejado. Normalmente um arquivo.
Com estas informaes possvel especificar, de forma nica, o
servio, protocolo e porta que devem ser acessados e utilizados na
obteno dos dados. Assim, mesmo quando vrios servios diferentes
esto disponveis em um mesmo servidor, cada um deles pode ser
acessado de forma independente, possibilitando que uma mesma
mquina possua diversos servidos ativos como: servidor web, servidor
FTP, servidor DNS, etc.
O servidor web pode possuir uma grande quantidade de informaes
dispersas por uma grande quantidade de arquivos e pastas. Deste modo,
necessrio que o cliente, ao buscar por um determinado recurso,
informe o caminho completo at o mesmo.
Para facilitar o usurio, alguns dados da URL podem ser omitidos. Um
exemplo comum : a porta padro e a pgina inicial de um site. Assim,
o acesso a um site por ser realizado de duas formas:
http://cead.ifes.edu.br:80/index.php ou,
http://cead.ifes.edu.br (neste caso, omitimos: (1) a porta 80, por se tratar
da porta padro do protocolo http; (2) o recurso index.php, por se tratar
do arquivo padro do site).

Servio de Rede para Internet

6.2 Funcionamento do servidor WEB


Lobo (2007, pg. XX) explica que o servidor web funciona da seguinte forma:
ao ser iniciado na mquina, o servidor web, que uma aplicao, se
liga porta TCP 80 e fica aguardando por requisies do cliente;
quando um cliente solicita algum recurso deste servidor, estabelecida
uma conexo TCP e o recurso solicitado enviado (caso ele exista);
o protocolo que define as solicitaes e respostas vlidas chamado
de HTTP (Hyper Text Transfer Protocol, Protocolo de Transferncia de
Hipertexto).
Do ponto de vista do cliente, o servio web funciona assim:
o navegador (Internet Explorer, Mozilla Firefox, etc), busca a recurso
contido na URL, interpreta seu texto, seus comandos de formatao e
apresenta os dados na tela.
A figura 14 ilustra o esquema de funcionamento de um servidor web
interagindo com um cliente.
Figura 14 Acesso a um servidor web

61

62

Prof. Gilmar Luiz Vassoler

6.3 Protocolo HTTP


Do ponto de vista da pilha de protocolos TCP/IP, o protocolo HTTP
um protocolo da camada de aplicao. Sua finalidade ser utilizado em
sistemas distribudos, colaborativos e de hipermdia.
Segundo Lobo (2007, pg. XX), as verses do HTTP so:
a primeira verso HTTP/0.9 est em uso desde 1990. Esta verso se
limita a transferir os dados brutos pela Internet;
na verso HTTP/1.0 houve um aprimoramento do protocolo que
possibilitou a transferncia de mensagens no formato MIME. Desta
forma, as mensagens passaram a conter metadados e modificadores nas
solicitaes e respostas;
a verso HTTP/1.1 foi desenvolvida para atender s necessidades de
caching, proxies hierrquicos, conexes persistentes, hosts virtuais e,
ainda, buscas, atualizaes de front-end, incluindo um amplo conjunto
de mtodos e cabealhos que indicam a finalidade da solicitao.
Outra caracterstica que as mensagens so passadas em um formato
semelhante ao das mensagens de e-mail, utilizando o formato MIME.
importante enfatizar que o protocolo HTTP utilizado por outros
sistemas de Internet, como SMTP, NNTP e FTP, permitindo que diversas
aplicaes possam acessar contedo hipermdia.
A conversao entre cliente e servidor, utilizando o protocolo HTTP,
ocorre no formato pedido/resposta. Desta forma, o cliente envia um
pedido ao servidor informando a verso do protocolo e uma mensagem
em formato MIME contendo modificadores de requisio, informaes
do cliente e contedo.
O servidor responde com uma linha de status que inclui a verso do
protocolo, um cdigo de sucesso ou erro seguido de uma mensagem do
tipo MIME, que contm informaes do servidor, metadados e o corpo
da mensagem. O cdigo retornado pode indicar sucesso ou fracasso da
operao.
De acordo com Torres (2006, pg. XX), os cdigos de resposta mais
comuns do HTTP so:
200 OK - Como o nome j diz, esse cdigo informa que a requisio teve
sucesso e est tudo Ok. Junto com este cdigo, o servidor deve enviar,
acompanhado de alguns headers, o contedo do recurso requisitado que

Servio de Rede para Internet

pode ser, por exemplo, um documento HTML ou XML, uma imagem


JPEG ou GIF, etc.
302 Found - Este o cdigo de redirecionamento mais comum. Ele
descreve um redirecionamento temporrio, ou seja, pode ser que numa
prxima requisio esse redirecionamento no seja necessrio. Ao
receber um cdigo 302, o cliente deve procurar pelo header Location,
que deve informar a URI para a qual o recurso est sendo redirecionado.
Em acessos futuros, a URI original deve ser requisitada novamente e o
redirecionamento deve ser feito, caso seja necessrio.
301 Moved Permanently - O recurso foi permanentemente movido
para um outro local. Ao receber este cdigo, o cliente deve procurar pelo
header Location e requisitar a URI nele informada. Acessos futuros
devem requisitar a nova URL (contida no Location), j que o recurso
foi movido de maneira permanente. A URI original deve ser apagada de
qualquer registro existente no cliente.
304 Not Modified - Esse cdigo usado quando o cliente faz uso
de caching, ou seja, guarda cpias locais dos recursos acessados. Ele
informa ao cliente que o recurso no foi modificado desde a ltima
requisio e que a verso guardada em cache pode ser usada.
404 Not Found - Este cdigo informa ao cliente que o recurso no foi
encontrado no servidor. Pode ser que o recurso realmente no exista
ou apenas esteja temporariamente indisponvel. Pode ser que o usurio
tenha cometido um erro ao digitar a URI ou simplesmente o servidor
no queira revelar o que realmente aconteceu. Se o cliente guardar as
URIs acessadas para referncias futuras (como no caso do histrico de
um browser), nenhuma ao deve ser tomada e a URI deve ser mantida,
pois pode ser que o recurso esteja disponvel em uma prxima requisio.
410 Gone - O cdigo 410 informa que o recurso requisitado no existe
mais, ou seja, foi intencionalmente removido do servidor e no h
endereo para redirecionamento. De acordo com a especificao, esse
estado deve ser considerado permanente. Infelizmente, na maioria das
implementaes esse cdigo no usado, e o servidor envia um cdigo
404 em seu lugar.
403 Forbidden - Esse cdigo informa que voc simplesmente no pode
acessar o recurso requisitado. Nem mesmo possvel acessar o recurso
por meio de autenticao.
401 Unauthorized - Nesse caso, o recurso pode ser acessado, desde que
voc possua as informaes de autenticao corretas (usurio e senha) para
acess-lo, o que parece no ser verdade, j que voc recebeu esse cdigo.

63

64

Prof. Gilmar Luiz Vassoler

500 Internal Server Error - Esse erro bastante comum. Ele informa
que algo de inesperado (ou simplesmente algo que ele no quer te
contar) aconteceu no servidor e a sua requisio no pde ser satisfeita.
502 Bad Gateway Esse erro muito comum no GMail. Significa que o
servidor que voc acessou atua como um proxy ou gateway e que o servidor
acima dele reportou algum erro ao tentar completar a requisio.
503 Service Unavailable - O recurso est temporariamente indisponvel.
Este erro pode ser causado por sobrecarga no servidor ou por alguma
operao de manuteno.

6.4 Servidor apache


De acordo com pesquisa, realizada em Setembro de 2011, pela empresa
NetCraf (http://www.netcraft.com), foi constatado que a utilizao do
Apache representa 65,18% dos servidores ativos no mundo.
Na tabela abaixo, retirada da pesquisa da NetCraf, podemos
verificar que o servidor Apache representa mais que a metade de
todos os servidores consultados num total de 485,173,671 sites. Em
segundo lugar, aparece o servidor da Microsoft. A tabela abaixo
apresenta um comparativo entre os meses de Maro e Abril de 2010.

O grfico abaixo apresenta a evoluo de uso de cada servidor desde


Dezembro de 1995.

Veja a pesquisa completa no link http://news.netcraft.com/archives/


category/web-server-survey/

Servio de Rede para Internet

O servidor Apache suporta todos os recursos esperados de um


servidor web e utilizados atualmente em grande parte dos sites como:
autenticao, criptografia, domnios virtuais, contedo dinmico,
carga de mdulos sobre demanda, compresso de contedo e
limitao de acesso. compatvel com os protocolos padro de
Internet, incluindo o HTTP/1.1.
A instalao do Apache, utilizando a configurao padro, relativamente
simples. No Linux, ele pode ser instalado a partir de pacotes prontos, ou
seja, sem a necessidade de compilar durante o processo de instalao. No
Windows, existe um instalador que guia todo o processo de instalao.
Vamos experimentar o Apache?
Instalando o servidor Apache no Linux
Para esta tarefa, voc deve acessar o ambiente virtual para procurar
pelos exerccios de instalao do servidor Apache no Linux.

65

66

Prof. Gilmar Luiz Vassoler

Servio de E-mail

O servio de E-MAIL (Eletronic Mail, Correio Eletrnico) permite trocar


correspondncias eletrnicas com outras pessoas de uma forma rpida
e com baixo custo. Se compararmos com o servio postal convencional,
uma carta, quando enviada, deve conter o endereo do destinatrio
e do remetente. No correio eletrnico, tambm se usam endereos,
denominados endereos eletrnicos.
Como j foi apresentado, cada computador possui seu endereo IP que o
identifica de forma nica na Internet. Porm, podemos ter vrios usurios
utilizando um mesmo computador, desta forma faz-se necessria a
identificao de cada usurio na mquina. Assim convencionou-se que
a identificao ser feita acrescentado o login do usurio ao endereo
da mquina, unidos pelo smbolo @ (arroba) ou at. Por exemplo: o
usurio gilmarvassoler que possui uma conta na mquina de endereo
bruna.ifes.ufes.br ser identificado da seguinte forma:
gilmarvassoler@bruna.ifes.edu.br
ou
gilmarvassoler at bruna.ifes.edu.br
importante salientar que, na maioria dos casos, quando configuramos
o servio de DNS informamos qual mquina responder pelo servio
de e-mail daquele domnio. Para o nosso exemplo: a mquina bruna.
ifes.edu.br responde pelo domnio ifes.edu.br, logo podemos utilizar
endereos da forma abreviada:
gilmarvassoler@ifes.edu.br
ou
gilmarvassoler at ifes.edu.br
Assim, podemos enviar mensagens para qualquer usurio de qualquer
mquina do mundo. Para facilitar a identificao, uma boa prtica
utilizar como login do usurio seu nome verdadeiro; porm, nem
sempre isso possvel.
Quando erramos ao escrever o endereo do destinatrio, a mensagem
no ser entregue e retornar para que o remetente possa envi-la

68

Prof. Gilmar Luiz Vassoler

pessoa correta. Entretanto, se a combinao de nome digitada existir


na Internet, a mensagem ser entregue a uma outra pessoa, e no
retornar ao remetente.
As mensagens de E-MAIL possuem alguns identificadores bsicos que
formam o cabealho da mensagem a fim de identificar origem, destino,
assunto, etc. Veja, agora, como a estrutura interna de uma mensagem:
Message 9:

#(nmero da mensagem)

From fulano@gmail.com Fri Oct 09 10:40:35 2009

#(end. do remetente e data de envio)

Date: Fri, 09 Oct 2009 10:40:35 -0400

#(data de chegada)

From: fulano@gmail.com (Fulano de Tal)

#(end. do remetente e seu nome real)

To: gilmarvassoler@ifes.edu.br

#(end. do destinatrio)

Subject: Congresso SBRC/2010

#(Assunto da Mensagem)

#(Corpo da Mensagem)

Ol, Gilmar,
como vo as coisas a em Vitoria? Aqui est aquela batalha de sempre, pois estou

acabando a tese.

Quando terminar a verso draft lhe mando uma cpia. A propsito, voc vai ao SBRC/2010?
Mande mensagem confirmando.
Abraos
Fulano

Toda mensagem tambm carrega dados que servem para identificar


por onde a mensagem passou. Desta forma, possvel confirmar se
a mensagem veio de onde o usurio indica que ela veio realmente.
uma forma de validao da mensagem, utilizada em conjunto com a
identificao da mensagem, que permite confirmar se o remetente
realmente quem ele diz que .

Servio de Rede para Internet

Para que fique mais claro, vamos observar a figura 15.


Figura 15 Fluxo e informaes no servio de e-mail.

Na Figura 15, o remetente encaminha a mensagem para o seu servidor de


e-mail. Esta mensagem pode passar por vrios servidores intermedirios
at chegar ao servidor de e-mail do destinatrio, que, ento, acessa esta
mensagem via um protocolo de acesso, tal como o POP3 ou IMAP.

7.1 Protocolo SMTP


O protocolo SMTP (Simple Mail Transfer Protocol, Protocolo
Simples de Transferncia de Correio) um protocolo, do tipo
ponto-a-ponto, utilizado para transferncia de mensagens de e-mail
entre servidores na Internet. O SMTP um protocolo padro na
pilha de protocolos TCP/IP e utiliza a porta TCP 25 para realizar
transmisso e recepo das mensagens.

69

70

Prof. Gilmar Luiz Vassoler

Indicao de leitura
O protocolo SMTP est definido na RFC 821 acessvel em http://
www.ietf.org/rfc/rfc0821.txt.
Uma especificao mais recente deste protocolo pode ser encontrada
na RCF 2821 acessvel em http://www.ietf.org/rfc/rfc2821.txt.

Uma caracterstica interessante deste prococolo que ele trabalha


apenas com comandos textuais. Isso se deve ao fato de que, quando
ele foi criado, o propsito era apenas para o envio de mensagens de
texto pela Internet.
Os comandos do SMTP so sempre do tipo solicitao/resposta.
Assim, todos os comandos enviados pelos clientes so seguidos de
uma resposta do servidor SMTP composta de um nmero e de uma
mensagem descritiva.
A seguir, apresentamos um cenrio de pedido de envio de e-mail a um
servidor SMTP que foi adaptado de KIOSKEA NETWORK (2010. pg. XX).
1. Para abrir uma sesso SMTP, o primeiro comando enviado o
comando HELO, seguido de um espao e o nome de domnio da sua
mquina e finalizado com um ENTER notado como <CRLF>. Com este
comando, estamos informando ao servidor bom dia, sou a mquina
tal. Um fato importante que, desde Abril de 2001, as especificaes
do protocolo SMTP, definidas no RFC 2821, impem que o comando
HELO seja substitudo pelo comando EHLO.
2. Em seguida, enviado o comando MAIL FROM seguido do
endereo de correio eletrnico do remetente. Se o comando for aceito, o
servidor devolve a mensagem 250 OK
3. O terceiro comando RCPT TO: seguido do endereo de correio
eletrnico do destinatrio. Se o comando for aceito, o servidor devolve
a mensagem 250 OK
4. Para iniciar transmisso do corpo da mensagem, utilizado o
comando DATA. Se o comando for aceito, o servidor responde com
uma mensagem intermediria numerada 354, que indica que o envio
do corpo do e-mail pode comear e considera o conjunto das linhas
seguintes at ao fim da mensagem, localizada por uma linha que contm
unicamente um ponto.

Servio de Rede para Internet

5. O corpo do e-mail, normalmente, estruturado com os seguintes cabealhos:


Date

# data da mensagem

Subject

# assunto da mensagem

Cc

# com cpia

Cco

# cpia oculta

From

# remetente

Se toda a entrada for aceita, o servidor devolve a mensagem "250 OK"


Para exemplificar o que foi apresentado acima, vamos apresentar uma
transao entre um cliente (C) e um servidor SMTP (S).
S: 220 smtp.ifes.edu.br SMTP Ready
C: HELO smtp.ifes.edu.br
S: 250 smtp.ifes.edu.br

C: MAIL FROM:<gilmarvassoler@smtp.ifes.edu.br>
S: 250 OK

C: RCPT TO:<jose@hotmail.com>
S: 250 OK

C: RCPT TO:<pedro@gmail.com>
S: 550 No such user here
C: DATA

S: 354 Start mail input; end with <CRLF>.<CRLF>


C: Subject: Aula de amanh
C: Alunos,

C: A aula de amanh sera as 15:00h.


C: Confirme o recebimento
C: <CRLF>.<CRLF>
S: 250 OK
C: QUIT

R: 221 smtp.ifes.edu.br closing transmission

71

72

Prof. Gilmar Luiz Vassoler

Como j foi apresentado, o protocolo SMTP um protocolo que s


transmite texto. Mais especificamente, ele exige que todos os caracteres
transmitidos sejam codificados em cdigo ASCII de 7 bits e que o
oitavo bit seja zero. No entanto, os e-mails que enviamos hoje possuem
caracteres acentuados, caracteres especiais e podem levar como anexo
qualquer tipo de documento binrio (fotos, video, imagens, arquivos,
etc.). Como isso possvel?
Isso possvel utilizando algoritmos especializados para converterem
tudo em caracteres. Como exemplo, temos os algoritmos que seguem
as especificaes MIME (Multipurpose Internet Mail Extensions,
Extenses Multipropsito para Mensagens de Internet), sendo: base64
para os anexos, quoted-printable para os caracteres especiais contidos
no corpo da mensagem.

Indicao de leitura!
Aprendam um pouco mais sobre MIME acessando a RFC 2231
no endereo http://tools.ietf.org/html/rfc2231.

7.2 Protocolo POP3


O POP3 (Post Office Protocol, Protocolo de Agncia de Correio) um
dos protocolos que podem ser utilizados no acesso remoto a uma caixa
de correio eletrnico. Ele permite a transferncia de todas as mensagens
contidas numa caixa de correio eletrnico para um cliente de e-mail
no computador local. Desta forma, o usurio pode ler as mensagens
recebidas, apagar, responder ou simplesmente armazenar as mensagens.

Um pouco mais sobre...


Clientes de e-mail so aplicativos que permitem que os usurios
gerenciem uma ou mais contas de e-mail em seu computador.
Exemplos de clientes de e-mail comuns so: Microsoft Outlook,
Microsoft Outlook Express e Evolution.
Para conhecer a definio completa do protocolo POP3, acesse a
RFC 1225, acessvel em http://tools.ietf.org/html/rfc1225.

Servio de Rede para Internet

O funcionamento do protocolo POP3 se baseia nas seguintes etapas:


1. estabelecida uma ligao TCP entre a aplicao cliente de e-mail,
tambm conhecido como UA (User Agent, Agente Usurio) e o servidor
onde est a caixa de correio, tambm conhecido como MTA (Messsage
Transfer Agent, Agente de Transferncia de Mensagem);
2. o usurio autentica-se;
3. todas as mensagens existentes na caixa de correio so transferidas
sequencialmente para o computador local;
4. as mensagens so apagadas da caixa de correio (opcionalmente, o
protocolo pode ser configurado para que as mensagens no sejam
apagadas da caixa de correio). Se esta opo no for utilizada, deve-se
utilizar sempre o mesmo computador para ler o correio eletrnico, para
poder manter um arquivo das suas mensagens;
5. a ligao com o servidor terminada;
6. o usurio pode, agora, ler e processar as suas mensagens (off-line).
A caracterstica off-line do protocolo POP3 foi muito importante
no passado quando as conexes com a Internet eram tarifadas de
acordo com o tempo da conexo. Assim, bastava ativar a conexo
durante a transferncia das mensagens que a leitura e processamento
das mensagens poderia ser realizada sem que o computador estivesse
conectado. Outra vantagem que, quando a conexo com a Internet
no est funcionando, as mensagens, localmente armazenadas, podem
ser lidas sem nenhum problema.

7.3 Protocolo IMAPv4


Devido necessidade de mais recursos para se controlar as caixas de
e-mail, foi desenvolvido o protocolo IMAP (Internet Message Access
Protocol, Protocolo de Acesso a Mensagem na Internet), que um
protocolo de gerenciamento de correio eletrnico muito utilizado pela
maioria dos provedores de e-mail. Hoje, ele se encontra na verso 4, por
isso muitas vezes comum ouvir o termo IMAP4.
A grande diferena do IMAP para o POP que, no IMAP, as mensagens
ficam armazenadas no servidor e o usurio pode ter acesso a suas pastas
e mensagens em qualquer computador que esteja conectado na Internet,
tanto por servios de webmail como por cliente de correio eletrnico.

73

74

Prof. Gilmar Luiz Vassoler

Outra vantagem deste protocolo o compartilhamento de caixas


postais entre usurios, membros de um grupo de trabalho. Alm disso,
possvel efetuar pesquisas por mensagens diretamente no servidor,
utilizando palavras-chave.
No entanto, alguns inconvenientes podem surgir:
o primeiro deles refere-se ao nmero de mensagens possveis de se
armazenar. Lembrando: as mensagens ficam no servidor, assim, o
nmero de mensagens vai depender do espao limite que atribudo
para a caixa de correio. Hoje, este problema est parcialmente resolvido,
pois alguns provedores gratuitos de e-mail oferecem vrios gigabytes
para armazenarmos nossas mensagens;
o segundo problema que necessrio estar ligado Internet todo
o tempo que quisermos consultar ou enviar mensagens. Assim, quem
utiliza a Internet, baseada em tempo, pode achar este protocolo
inadequado devido aos custos associados. No entanto, a maioria dos
clientes de e-mail oferece a possibilidade de criar uma cpia local das
mensagens, contidas em uma ou vrias pastas.
Outras vantagens que podemos citar deste protocolo em relao ao POP
so:
possibilidade de ativar e desativar "flags" (marcaes que indicam
caractersticas de uma mensagem), que podem, inclusive, ser definidas
pelo usurio. Exemplo: mensagem lida ou mensagem no lida;
capacidade de reconhecer os padres de mensagens eletrnicas [RFC
822] e MIME-IMB [RFC 2045] em mensagens eletrnicas, de modo que
os clientes de e-mail no o necessitem fazer;
possibilita a pesquisa no texto das mensagens de forma remota;
a seleo para recebimento dos atributos de uma mensagem, ou seu
texto ou anexos, podem ser feitos de forma independente. Ento, o
usurio pode pedir para receber de uma mensagem com um grande
anexo apenas parte do texto que lhe interessa, o que vantajoso no caso
de um acesso discado de baixa qualidade e a reduo do trfego em
geral.
Instalando o Postfix no Linux
Agora chegou a hora da nossa prtica. Para tanto, voc deve acessar o
ambiente virtual para procurar pelo roteiro de instalao do servidor de
e-mail no Linux.

Servio de Rede para Internet

Prezado alunos,
chegamos ao final de mais uma disciplina. Espero que tudo tenha
ocorrido de forma tranquila e que vocs tenham adquirido os
conhecimentos necessrios para entender como os servios de rede
para Internet funcionam e como eles podem servir para os futuros
softwares que vocs iro desenvolver.
Um grande abrao a todos!

75

76

Prof. Gilmar Luiz Vassoler

BRANDINO, W. L., Apostila TCP/IP. 1998. Disponvel em http://www.wandreson.com/


download/training-networking-tcpip.pdf. Acessado em 28/04/2010. Acesso em 28 abr.
2010.
BUGALLO, A. M. D., BARROS, M. A., TORRES, W. R., Introduo ao DHCP. Boletim
bimestral sobre tecnologia de redes produzido e publicado pela RNP Rede Nacional
de Ensino e Pesquisa, 1999. Disponvel em http://www.rnp.br/newsgen/9911/dhcp.html.
Acesso em 28 abr. 2010.
CARVALHO, M.L.B., Histria da Internet Brasil. Disponvel em http://homepages.dcc.
ufmg.br/~mlbc/cursos/internet/historia/Brasil.html. Acesso em 28 abr. 2010.
FOLHA ONLINE. Dicionrio de Informtica. Disponvel em http://www1.folha.uol.
com.br/folha/informatica/sos_dic_abcd.shtml#B. Acesso em 28 abr. 2010.
KIOSKEA NETWORK. Os protocolos de servio de mensagens (SMTP, POP3 e
IMAP4). Disponvel em http://pt.kioskea.net/contents/internet/smtp.php3. Acesso em 28
abr. 2010.
KUROSE, J.F., Redes de computadores e a Internet: uma abordagem top-down. 3. ed.,
So Paulo: Pearson Addison Wesley, 2006.
LOBO, E., Administrao de sistemas Linux: servios para Internet, Braslia: Escola
Superior de Redes da RNP, 2007.
MICROSOFT TECHNET. O que multicast do IPv4?. Disponvel em http://technet.
microsoft.com/pt-br/library/cc772041(WS.10).aspx. Acesso em 28 abr. 2010.
SOARES, L.F. G, LEMOS, G. COLCHER, S., Redes de Computadores: das LNAs, MANs
e WANs as redes ATM 2. ed. , Rio de Janeiro: Campus, 1995.
TORRE, B. Protocolo HTTP: cdigos de resposta mais comuns e seus significados. 2006 Disponvel
em
http://www.obasicodaweb.com/http-codigos-de-resposta-mais-comuns-e-seus-significados/.
Acesso em 28 abr. 2010.
TORRES, G., LIMA, C., Como o Protocolo TCP/IP Funciona Parte 2. 2007. Disponvel
em http://www.clubedohardware.com.br/artigos/1352/2. Acesso em 28 abr. 2010.
ZEPHYR, Transferncia de arquivos SSH segura via SFTP. Disponvel em http://www.
zephyrcorp.com/BR/ssh-secure-file-transfer.htm. Acesso em 28 abr. 2010.
POP-RS. A Histria da Internet. Disponvel em http://www.pop-rs.rnp.br/ovni/tcpip/t_
evol.htm. Acesso em 28 abr. 2010.

78

Prof. Gilmar Luiz Vassoler

Instalao de um servidor
WEB Apache

Hoje vamos aprender como instalar e configurar um servidor de pginas


web no nosso ambiente virtual.
importante lembrar que cada distribuio Linux pode ter um
procedimento diferenciado para a instalao, porm o bsico ser
apresentado nesta atividade.
A implementao de servidor web que utilizaremos o Apache na sua
verso 2, por ser um dos servidores mais utilizados no mundo e que
apresenta uma grande variedade de servios.

1.1 Instalando o servidor no Debian


Como j sabemos, o Debian apresenta uma maneira bastante simples
de obter e instalar seus aplicativos, pois ele trabalha com o conceito
de repositrios, que nada mais so do que locais na WEB onde esto
disponibilizados verses a aplicativos.
Nosso ambiente virtual j est configurado para apontar para um
repositrio na Internet que http://ftp.debian.org (para mais informaes,
veja o contedo do arquivo /etc/apt/sources.list)
Vamos aos passos para a instalao:
1.1.1 Baixando o software
Para o primeiro passo, devemos utilizar o comando
# apt-get install apache2

Caso seja apresentada a mensagem: AVISO: Os pacotes a seguir


no podem ser autenticados! apresentando uma srie de arquivos,
simplesmente aceite.
O Linux ir buscar o arquivo no repositrio, baix-lo para nossa mquina
e instalar no local apropriado.

80

Prof. Gilmar Luiz Vassoler

A instalao deve terminar com as mensagens


Configurando apache2-mpm-worker (2.2.9-10+lenny8) ...
Starting web server: apache2.
Configurando apache2 (2.2.9-10+lenny8) ...
Configurando ssl-cert (1.0.23) ...
O processo de instalao automatizado, porm em alguns casos o
servidor no iniciado. Assim, para inici-lo, basta executar o comando
abaixo:

# /etc/init.d/apache2 restart

A instalao simples do apache termina aqui! Simples, no?


Para testar utilize um browser e digite o endereo do seu servidor. Se o
servidor retornar uma pgina com a mensagem It Works! porque a
instalao est correta.
1.1.2 Configurando o servidor Apache
Os arquivos de configurao do servidor apache esto localizados na
pasta /etc/apache2
e so apresentados abaixo:
-rw-r--r-- 1 root root 10104 Abr 19

2010 apache2.conf

-rw-r--r-- 1 root root

2010 envvars

drwxr-xr-x 2 root root


-rw-r--r-- 1 root root
drwxr-xr-x 2 root root
drwxr-xr-x 2 root root
-rw-r--r-- 1 root root

4096 Out 22 08:51 conf.d


378 Abr 19

0 Out 22 08:51 httpd.conf

4096 Out 22 08:51 mods-available


4096 Out 22 08:51 mods-enabled
513 Abr 19

2010 ports.conf

drwxr-xr-x 2 root root

4096 Out 22 08:51

drwxr-xr-x 2 root root

4096 Out 22 08:51 sites-enabled

sites-available

As linhas destacadas em amarelo representam os diretrios onde temos


arquivos de configurao especficos.

Servio de Rede para Internet

O arquivo apache2.conf o arquivo principal que vai incluir todos os


demais. Normalmente no realizamos nenhuma modificao neste
arquivo.
No diretrio conf temos dois arquivos: charset, que contm a configurao
do tipo de codificao de caracteres que dever ser utilizada pelo
servidor, normalmente a UTF-8; o arquivo security, que configura as
opes de segurana do servidor.
O arquivo envvars configura as variveis de ambiente utilizadas pelo
apache. Tambm no necessrio alterar este arquivo.
O arquivo httpd.conf onde usualmente so feitas as configuraes dos
usurios. Note que nesta distribuio este arquivo est vazio.
O diretrio mods-available possui todos os mdulos e configuraes
destes mdulos disponveis para o Apache. Estes mdulos so extenses
que permitem ao Apache realizar tarefas diversas como, por exemplo,
autenticar usurios, redirecionar uma requisio para o diretrio do
usurio, etc. Podemos adicionar novos mdulos, por exemplo o mdulo
PHP, que permite que o apache consiga interpretar arquivos escritos na
linguagem PHP.
O diretrio mods-enabled, por sua vez, apresenta os mdulos que
esto ativados. Observe que, para ativar um mdulo, criado um link
simblico neste diretrio apontando para o diretrio mods-available.
Para checar isso, digite o comando:

# ls -l /etc/apache2/mods-enabled/

O arquivo ports.conf apresenta as portas TCP nas quais o servidor


Apache ir responder. Verifique que a porta padro a porta 80, para
o protocolo HTTP. Porm, o servidor pode responder pela porta 443
se estiver habilitado o seu mdulo mod_ssl, que o que permite a
navegao sobre o protocolo HTTPS.

O diretrio sites-available possui todos os sites que o servidor ir


disponibilizar. Assim, podemos ter um nico servidor disponibilizando
diversos sites, como por exemplo:
www.dominio1.com.br, www.dominio2.com.br, www.dominio3.com.br, etc...

81

82

Prof. Gilmar Luiz Vassoler

Estes domnios normalmente so conhecidos como domnios virtuais,


e esta ser a atividade que vocs devem realizar sobre o servidor apache.
Para tanto, vocs devem procurar na Internet como criar domnios
virtuais no apache 2.
Uma dica importante: para criar e testar os domnios virtuais, voc deve
configurar o servidor de DNS e criar as zonas para os domnios que
vocs iro disponbilizar.
A mquina que vocs usaro para testar deve utilizar o servidor de DNS
que vocs implementaram.

Servio de Rede para Internet

Instalao de um
servidor OpenSSH

Hoje vamos aprender como instalar e configurar um servidor de


terminal remoto seguro no nosso ambiente virtual.
importante lembrar que cada distribuio Linux pode ter um
procedimento diferenciado para a instalao, porm o bsico ser
apresentado nesta atividade.
A implementao de servidor de terminal remoto que utilizaremos a
OpenSSH_5.1.

2.1 Instalando o servidor no Debian


Como j sabemos, o Debian apresenta uma maneira bastante simples
de obter e instalar seus aplicativos, pois ele trabalha com o conceito
de repositrios, que nada mais so do que locais na WEB onde esto
disponibilizados verses a aplicativos.
Nosso ambiente virtual j est configurado para apontar para um
repositrio na Internet que http://ftp.debian.org (para mais informaes,
veja o contedo do arquivo /etc/apt/sources.list)
Vamos aos passos para a instalao:
2.1.1 Baixando o software
Para o primeiro passo, devemos utilizar o comando

# apt-get install openssh-server

Ao digitarmos o comando acima, o Linux ir buscar o arquivo no


repositrio, baix-lo para nossa mquina e instalar no local apropriado.
O processo de instalao automatizado, porm em alguns casos o
servidor no iniciado. Assim, para inici-lo, basta executar o comando
abaixo:
# /etc/init.d/ssh restart

83

84

Prof. Gilmar Luiz Vassoler

2.1.2 Configurando o openssh


No h muito que configurar no servidor openssh. Porm, caso
desejemos alterar alguma configurao padro, devemos modificar o
arquivo/etc/ssh/sshd_config utilizando o comando:

# nano /etc/ssh/sshd_config

Abaixo, destacamos os parmetros de configurao deste arquivo que


normalmente modificamos. Porm, para nosso caso, no iremos alterar nada.

# What ports, IPs and protocols we listen for

# Qual a porta TCP que o servidor ir utilizar


Port 22

# Authentication:

LoginGraceTime 120

# Permitir Login utilizando usurio root


PermitRootLogin yes
StrictModes yes

# To enable empty passwords, change to yes (NOT


RECOMMENDED)

# Permitir senhas em branco


PermitEmptyPasswords no

2.2 Testando do servidor


Para testarmos nosso servidor, primeiramente devemos criar um
usurio. Se sua mquina virtual j possui um usurio, voc pode pular
esta etapa.
Ento, vamos aos passos:
2.2.1 Criar o usurio
Para criar um usurio, vamos digitar o comando

# adduser usuario1

Servio de Rede para Internet

O sistema ir questionar sobre a senha do usurio e vrios outros


parmetros. Preencha os mesmos para que o usurio seja criado.
2.2.2 Acessando o servidor
Para acessar o servidor, devemos utilizar um cliente de SSH. Eu
gosto muito do PuTTY, que um programa para Windows. Porm,
se voc for testar a partir de uma mquina Linux, provavelmente o
cliente j est instalado.
Acessando via PuTTY
Podemos baixar o PuTTY pelo endereo:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Aps o download, baixa execut-lo que uma janela semelhante a


apresentada abaixo ser mostrada.

Basta digitar o endereo do seu servidor e clicar no boto Open. Na


primeira vez que voc conecta-se a um servidor, o PuTTY ir solicitar
que voc aceite a chave de criptografia do servidor. Aceite-a e uma janela
solicitando seu login e senha ser apresentada.

85

86

Prof. Gilmar Luiz Vassoler

Entre com o login e senha de um usurio que existe no servidor e, se


tudo estiver correto, voc estar logado.
Acessando via cliente do Linux
Para acessarmos via cliente do Linux, basta digitar no Shell do Linux o
comando abaixo:
# ssh usuario@ip_do_servidor

Na primeira vez que acessarmos uma mquina, o cliente ir questionar


se aceitamos a chave de criptografia do servidor. Basta digitar Yes e nos
sero solicitadas as credenciais para login (neste caso, apenas a senha,
pois o login j foi informado via linha de comando).

Servio de Rede para Internet

Instalao de um
servidor de FTP

Hoje vamos aprender como instalar e configurar um servidor de FTP no


nosso ambiente virtual.
importante lembrar que cada distribuio Linux pode ter um
procedimento diferenciado para a instalao, porm o bsico ser
apresentado nesta atividade.

3.1 Escolhendo o aplicativo FTP


Existem vrias implementaes, tanto para Linux como para Windows,
de servidores de FTP. Ento, focaremos em uma implementao bastante utilizada, que o proftpd. Estamos escolhendo este implementao
por ser bastante simples de se instalar e de configurar.

3.2 Instalando o servidor no Debian


O Debian apresenta uma maneira bastante simples de obter e instalar
seus aplicativos, pois ele trabalha com o conceito de repositrios, que
nada mais so do que locais na WEB onde esto disponibilizados verses a aplicativos.
Nosso ambiente virtual j est configurado para apontar para um
repositrio na Internet que http://ftp.debian.org (para mais informaes,
veja o contedo do arquivo /etc/apt/sources.list)
Vamos aos passos para a instalao:
3.2.1 Baixando o software
Para o primeiro passo, devemos utilizar o comando

#apt-get install proftpd

87

88

Prof. Gilmar Luiz Vassoler

Ao digitarmos o comando acima, o Linux ir buscar o arquivo no


repositrio, baix-lo para nossa mquina e instalar no local apropriado.
Viu como simples?
Aps baixar e iniciar a instalao, o sistema ir perguntar sobre qual
o tipo de execuo que desejamos. No nosso caso, iremos escolher
solitria (standalone), indicando que o servidor no ir depender de
nenhum outro tipo de servio para ser executado.
3.2.2 Configurando o proftpd
Podemos modificar os parmetros do servidor alterando o arquivo de
configurao do mesmo. Observe que esta uma tarefa bastante comum
no Linux. Praticamente todos os softwares possuem um arquivo de
configurao que ficam armazenados no diretrio /etc. No caso do nosso
programa, o arquivo o proftpd.conf que fica dentro do diretrio /etc/
proftpd/. Para editar o arquivo de configurao, utilizaremos o editor
nano, como no comando abaixo:

# nano /etc/proftpd/proftpd.conf

Descrevendo os principais parmetros de configurao deste arquivo:

#Nome do Servidor

ServerName Servidor SRI


#Modo no qual o servio executar(standalone ou inetd)
ServerType standalone
DeferWelcome off

#Omitir informaes sobre que tipo de servidor est


rodando

ServerIdent off
#Fuso horrio universal (GMT) e no o local
TimesGMT off

MultilineRFC2228 on
#Tempo Mximo sem transferncia de dados
TimeoutNoTransfer 600

#Tempo Mximo com transferncia travada


TimeoutStalled 600

Servio de Rede para Internet


#Tempo Mximo conectado sem troca de dados
TimeoutIdle 1200

DisplayLogin welcome.msg

DisplayFirstChdir .message
ListOptions -l
DenyFilter \*.*/
#Logs no Proftp
WtmpLog off

#Arquivo de log geral

SystemLog /var/log/proftpd.log
#Arquivo de log das transferncias
TransferLog /var/log/xferlog

#Porta para informaes de controle


Port 21

Umask 022 022


#Mximo de usurios autenticados

MaxClientsPerHost 4 Limite de usuarios execido


#Numero Mximo de tentativas de login
MaxLoginAttempts 3

#Usurio sob qual o servidor ir rodar


User proftpd
#Grupo

Group nogroup
#Impede os usurios de sair de seu diretrio home
DefaultRoot ~

#No permite o login do usurio root


RootLogin off

#No requer que os usurios tenham um shell vlido


RequireValidShell off

#No bloqueia usurios baseando-se no arquivo /etc/


ftpusers

UseFtpUsers off

89

90

Prof. Gilmar Luiz Vassoler

Existe um usurio chamado anonymous permitido em muitos FTPs, o


qual usado para permitir acesso pblico aos arquivos.
Se alguma modificao for realizada no arquivo de configurao, ela s
passar a ter efeito aps iniciar o servidor com o comando abaixo.

# /etc/init.d/proftpd restart

3.3 Testando do servidor


Para testarmos nosso servidor, primeiramente devemos criar um
usurio para acessar o FTP. Ento, vamos aos passos:
3.3.1 Criar o usurio
Para criar um usurio, vamos digitar o comando

# adduser usuario1

O sistema ir questionar sobre a senha do usurio e vrios outros


parmetros. Preencha os mesmos para que o usurio seja criado.
3.3.2 Acessando o servidor
Para acessar o servidor, devemos utilizar um cliente de FTP. Felizmente,
existem vrios clientes FTP, tais como o cliente modo texto ftp, filezilla,
e at os browsers como Internet Explorer e Firefox.
Vamos fazer nosso primeiro acesso utilizando o cliente em modo texto
do nosso prprio servidor. Veja o exemplo de acesso abaixo

Servio de Rede para Internet

Para acessar via browser, voc ir digitar seguinte endereo no browser


de uma mquina da rede: ftp://ipdoseuservidor. Para descobrir o IP do
seu servidor, voc pode utilizar o comando ifconfig.

91

92

Prof. Gilmar Luiz Vassoler

Servio de Rede para Internet

Instalao de um
servidor de DNS

Hoje vamos aprender como instalar e configurar um servidor de DNS


no nosso ambiente virtual.
importante lembrar que cada distribuio Linux pode ter um
procedimento diferenciado para a instalao, porm o bsico ser
apresentado nesta atividade.
A implementao de servidor de DNS que utilizaremos a BIND 9.

4.1 Instalando o servidor no Debian


Como j sabemos, o Debian apresenta uma maneira bastante simples
de obter e instalar seus aplicativos, pois ele trabalha com o conceito
de repositrios, que nada mais so do que locais na WEB onde esto
disponibilizados verses a aplicativos.
Nosso ambiente virtual j est configurado para apontar para um
repositrio na Internet que http://ftp.debian.org (para mais informaes,
veja o contedo do arquivo /etc/apt/sources.list)
Vamos aos passos para a instalao:
4.1.1 Baixando o software
Para o primeiro passo, devemos utilizar o comando
# apt-get install bind9

Caso seja apresentada a mensagem: AVISO: Os pacotes a seguir


no podem ser autenticados! apresentando uma srie de arquivos,
simplesmente aceite.
O Linux ir buscar o arquivo no repositrio, baix-lo para nossa mquina
e instalar no local apropriado.
A instalao deve terminar com a mensagem: Starting domain name
service...: bind9.

93

94

Prof. Gilmar Luiz Vassoler

4.1.2 Configurando o servidor de DNS


Antes de apresentarmos os arquivos de configurao, vamos introduzir
uma pequena terminologia utilizada nos servidor de DNS
Cliente DNS: todo programa que utiliza os servios do servidor de
DNS para transformar o nome simblico em endereo IP e vise-versa.
No Linux Debian, o cliente busca informaes no arquivo /etc/resolv.
conf.
Zona: representa um subdomnio ou sub-rede sobre o qual um servidor
DNS possui autoridade.
Mestre ou primrio: refere-se a um servidor DNS com autoridade
sobre uma zona cujos dados so derivados dos arquivos de dados locais.
Escravo ou secundrio: refere-se a um servidor de nomes cuja
autoridade sobre uma zona depende de dados derivados de outro
servidor de nomes em uma zona de transferncia.
Zona de Transferncia: uma transferncia feita entre um servidor
DNS mestre ou escravo e um servidor DNS escravo. O escravo inicia a
zona de transferncia aps um tempo de refresh ou aps ser notificado
de que os dados no servidor remetente foram alterados.
Nosso servidor de DNS possui os seus arquivos de configurao
armazenados na pasta /etc/bind.
Entre estes arquivos, temos:
named.conf arquivo principal o qual inclui os demais arquivos
abaixo. Normalmente no alteramos este arquivo, pois ele inclui as
zonas principais utilizadas pelo servidor de DNS.
named.conf .local arquivo utilizado para adicionarmos as zonas que
vamos configurar.
named.conf.options arquivo de opes do servidor.

4.2 Adicionando novas zonas.


Para adicionar novas zonas, vamos abrir o arquivo named.conf.local
com o comando abaixo:

Servio de Rede para Internet


# nano /etc/bind/named.conf.local

A seguir, vamos adicionar ao final do arquivo as seguintes linhas

// Zona direta para o domnio fictcio sri.cead.ifes.edu.


br

zone sri.cead.ifes.edu.br {
type master;

};

file /etc/bind/db.sri.cead.ifes.edu.br;

// Zona reverta para o nosso domnio assumindo que os IP


pertencem a rede
// 10.0.15.0

zone 15.0.10.in-addr.arpa {
type master;

};

file /etc/bind/db.10.0.15;

Observe que estamos criando duas novas zonas, uma direta e outra
reversa. A zona direta aponta para o arquivo /etc/bind/db.sri.cead.ifes.edu.br
o qual iremos criar mais a frente; a zona reversa aponta para o arquivo
/etc/bind/db.10.0.15 o qual, tambm, iremos criar. Ambas as zonas foram
criadas como tipo master, ou seja, nosso servidor quem vai control-las.

4.3 Criando os arquivos de registro


Os arquivos /etc/bind/db.sri.cead.ifes.edu.br e /etc/bind/db.10.0.15 so chamados
arquivos de registros, pois neles que ficam os registros das nossas
zonas. Os 10 tipos de registros possveis esto apresentados abaixo:
SOA registro de inicializao de autoridade
NS registro de nome do servidor
A registro de endereo
PTR registro de ponteiro
MX registro de intercmbio de carreio
CNAME registro de nome cannico

95

96

Prof. Gilmar Luiz Vassoler

RP e TXT registro das entradas de documento


HINFO registro de informaes sobre os host
NULL registro de recurso nulo sem formato de dados

Criando o arquivo para nossa zona direta db.sri.cead.ifes.edu.br

; Arquivo de configurao da zona direta sri.cead.ifes.edu.br


$TTL 604800
@

IN

SOA

sri.ifes.edu.br. root.sri.ifes.edu.br. (

; Serial

604800

; Refresh

86400

2419200

; Expire

604800 )

; Negative Cache TTL

; Retry

; Incio dos registro


@

IN

NS

IN

ns1

10.0.15.1

ns1 IN
A 10.0.15.1
www IN
A 10.0.15.2
pop3 IN
A 10.0.15.3
mail1 IN
A 10.0.15.4
mail2 IN
A 10.0.15.5
mail3 IN
A 10.0.15.6
@

IN MX 10 mail1

IN MX 15 mail2

IN MX 5

mail3

maquina1 IN A

10.0.15.101

maquina2 IN A

10.0.15.102

Agora vamos entender o arquivo acima linha por linha:


1. Comentrio descrevendo o arquivo. O ; utilizado para introduzir
comentrios de linha.
2. Indica por quanto tempo os dados devem ser guardados no cache dos
clientes antes que expire a validade.
3. Registro de SOA indicando qual o domnio e qual o e-mail do
responsvel pelo domnio. No nosso caso, o usurio root. Este
registro obrigatrio.

Servio de Rede para Internet

4. Parmetro do registro SOA que mostra aos DNS secundrios como


realizar transferncia de zona.
5. Parmetro do registro SOA que indica o tempo, em segundos, para
o servidor DNS secundrio consultar o primrio para saber se houve
alterao.
6. Parmetro do registro SOA que indica o tempo, em segundos, para
conexo com o servidor primrio, caso a tentativa no tempo de refresh
falhe.
7. Parmetro do registro SOA que indica o tempo de descarte das
informaes no cach.
8. Parmetro do registro SOA que indica quanto tempo os dados
devem ser guardados no cache antes que expire a validade. Veja que,
normalmente, este parmetro tem o mesmo valor que o parmetro da
linha 2.
9. Comentrio indicando o incio dos registros.
10. Registro do tipo NS indicando que o domnio (representado por @)
possui o servidor de domnio ns1.
11. Registro do tipo A indicando que o domnio (representado por @)
est associado ao IP 10.0.15.1. Normalmente o IP do servidor de DNS.
12. Registro do tipo A associando o nome ns1 ao IP 10.0.15.1
13. Registro do tipo A associando o nome www ao IP 10.0.15.1
14. Registro do tipo A associando o nome pop3 ao IP 10.0.15.1
15. Registro do tipo A associando o nome mail1 ao IP 10.0.15.1
16. Registro do tipo A associando o nome mail2 ao IP 10.0.15.1
17. Registro do tipo A associando o nome mail3 ao IP 10.0.15.1
18. Registro do tipo MX indicando a mquina mail1; um servidor de
e-mail do domnio com prioridade 10.
19. Registro do tipo MX indicando a mquina mail2; um servidor de
e-mail do domnio com prioridade 15.
20. Registro do tipo MX indicando a mquina mail3; um servidor de

97

98

Prof. Gilmar Luiz Vassoler

e-mail do domnio com prioridade 5.


21. Registro do tipo A associando o nome maquina1 ao IP 10.0.15.1
22. Registro do tipo A associando o nome maquina2 ao IP 10.0.15.1

Criando o arquivo para nossa zona reversa db.10.0.15


; Arquivo de configurao da zona reversa da rede 10.0.15
$TTL
@

604800
IN

ifes.edu.br. (

SOA

sri.ifes.edu.br. root.sri.

604800

; Refresh

86400

; Retry

2419200

604800 )

; Incio dos registro


@
1

IN
IN

IN

NS
PTR

; Serial

PTR

; Expire

; Negative Cache TTL


ns1.sri.ifes.edu.br.

ns1.sri.ifes.edu.br.
www.sri.ifes.edu.br.

3 IN
PTR pop3.sri.ifes.edu.br.

4 IN
PTR mail1.sri.ifes.edu.br.
5 IN
PTR mail2.sri.ifes.edu.br.
5 IN
PTR mail3.sri.ifes.edu.br.
101
102

IN PTR
IN PTR

maquina1.sri.ifes.edu.br.
maquina1.sri.ifes.edu.br.

Agora vamos entender o arquivo acima linha por linha:


1. Comentrio descrevendo o arquivo. O ; utilizado para introduzir
comentrios de linha.
2. Indica por quanto tempo os dados devem ser guardados no cache dos
clientes antes que expire a validade.
3. Registro de SOA indicando qual o domnio e qual o e-mail do
responsvel pelo domnio. No nosso caso, o usurio root. Este
registro obrigatrio.
4. Parmetro do registro SOA que mostra aos DNS secundrios como
realizar transferncia de zona.

Servio de Rede para Internet

5. Parmetro do registro SOA que indica o tempo, em segundos, para


o servidor DNS secundrio consultar o primrio para saber se houve
alterao.
6. Parmetro do registro SOA que indica o tempo, em segundos, para
conexo com o servidor primrio, caso a tentativa no tempo de refresh
falhe.
7. Parmetro do registro SOA que indica o tempo de descarte das
informaes no cach
8. Parmetro do registro SOA que indica quanto tempo os dados devem ser
guardados no cache antes que expire a validade. Veja que, normalmente,
este parmetro tem o mesmo valor que o parmetro da linha 2.
9. Comentrio indicando o incio dos registros.
10. Registro do tipo PTR associando o domnio (representado por @) ao
servidor de domnio ns1.sri.ifes.edu.br.
11. Registro do tipo PTR associando o IP com final 1 ao nome ns1.sri.
ifes.edu.br.
12. Registro do tipo PTR associando o IP com final 2 ao nome www.sri.
ifes.edu.br.
13. Registro do tipo PTR associando o IP com final 3 ao nome pop3.sri.
ifes.edu.br.
14. Registro do tipo PTR associando o IP com final 4 ao nome mail1.
sri.ifes.edu.br.
15. Registro do tipo PTR associando o IP com final 5 ao nome mail2.
sri.ifes.edu.br.
16. Registro do tipo PTR associando o IP com final 6 ao nome mail3.
sri.ifes.edu.br.
17. Registro do tipo PTR associando o IP com final 101 ao nome
maquina1.sri.ifes.edu.br.
18. Registro do tipo PTR associando o IP com final 102 ao nome
maquina2.sri.ifes.edu.br.

99

100

Prof. Gilmar Luiz Vassoler

4.4 Testando do servidor


Aps criarmos os arquivos acima, devemos reiniciar o servidor com o
comando abaixo:

# /etc/init.d/bind9 restart

Agora vamos utilizar o cliente de DNS chamado de nslookup para


realizar as consultas. Para isso, digite nslookup na linha de comando.
Veja abaixo algumas interaes com o servidor:

# nslookup

> server localhost

Default server: localhost


Address: 127.0.0.1#53

Default server: localhost


Address: ::1#53
> set type=soa

> sri.cead.ifes.edu.br
Server:

localhost

Address:

127.0.0.1#53

sri.cead.ifes.edu.br

origin = sri.ifes.edu.br

mail addr = root.sri.ifes.edu.br


serial = 2

refresh = 604800
retry = 86400

expire = 2419200
minimum = 604800

> set type=ns

> sri.cead.ifes.edu.br
Server:

Address:

localhost

127.0.0.1#53

sri.cead.ifes.edu.br
edu.br.

nameserver = ns1.sri.cead.ifes.

> set type=mx

> sri.cead.ifes.edu.br
Server:

Address:

localhost

127.0.0.1#53

Servio de Rede para Internet


sri.cead.ifes.edu.br
cead.ifes.edu.br.

mail exchanger = 5 mail3.sri.

sri.cead.ifes.edu.br mail exchanger = 10 mail1.sri.cead.ifes.edu.br.


sri.cead.ifes.edu.br mail exchanger = 15 mail2.sri.cead.ifes.edu.br.
> set type=a

> www.sri.cead.ifes.edu.br
Server:

Address:

localhost

127.0.0.1#53

Name: www.sri.cead.ifes.edu.br
Address: 10.0.15.2
> set type=ptr
> 10.0.15.3
Server:

Address:

localhost
127.0.0.1#53

3.15.0.10.in-addr.arpa name = pop3.sri.ifes.edu.br.


> exit

Se sua configurao estiver correta, voc vai obter resultados semelhantes


aos apresentados acima digitando os comandos que esto em amarelo.
Um mini-tutorial de uso do nslookup pode ser obtido em http://penta.
ufrgs.br/uel/marco/bonanw02.html

Outra fonte de informao sobre o comando pode ser obtida diretamente


no terminal consultando o manual com o comando:

# man nslookup

101

102

Prof. Gilmar Luiz Vassoler

Servio de Rede para Internet

Instalao de um
servidor de DHCP

Hoje vamos aprender como instalar e configurar um servidor de DHCP


no nosso ambiente virtual.
importante lembrar que cada distribuio Linux pode ter um
procedimento diferenciado para a instalao, porm o bsico ser
apresentado nesta atividade.

5.1 Escolhendo o aplicativo DHCP


O aplicativo que vamos utilizar hoje chamado de dhcp3-server. Mais
uma vez, estamos escolhendo este implementao por ser bastante
simples de se instalar e de configurar.

5.2 Instalando o servidor no Debian


O Debian apresenta uma maneira bastante simples de obter e instalar
seus aplicativos, pois ele trabalha com o conceito de repositrios, que
nada mais so do que locais na WEB onde esto disponibilizados verses
a aplicativos.
Nosso ambiente virtual j est configurado para apontar para um
repositrio na Internet que http://ftp.debian.org (para mais informaes,
veja o contedo do arquivo /etc/apt/sources.list)
Vamos aos passos para a instalao:
5.2.1 Baixando o software
Para o primeiro passo, devemos utilizar o comando

# apt-get install dhcp3-server

Ao digitarmos o comando acima, o Linux ir buscar o arquivo no


repositrio, baix-lo para nossa mquina e instalar no local apropriado.

103

104

Prof. Gilmar Luiz Vassoler

Viu como simples?


Ao final da instalao, o sistema tenta iniciar o servidor de DHCP. possvel
que um erro seja apresentado, pois o servidor ainda no foi configurado.
5.2.2 Configurando o dchp3-server
O arquivo de configurao utilizado por este servidor o arquivo nano
/etc/dhcp3/dhcpd.conf. Este arquivo j vem com pr-configuraes
teis, as quais servem de modelo para nossa configurao.
Mais uma vez, vamos utilizar o editor nano para configurar nosso
servidor de DHCP. Para abrir o arquivo de configurao, devemos
digitar:

# nano /etc/dhcp3/dhcpd.conf

Abaixo, temos o arquivo original. Todas as linhas que iniciam com #


representam um comentrio e no tm importncia semntica.
O texto marcado em amarelo representa os trechos importantes para
configurarmos.

# Sample configuration file for ISC dhcpd for Debian


#

# $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy


Exp $
#

# The ddns-updates-style parameter controls whether or


not the server will

# attempt to do a DNS update when a lease is confirmed.


We default to the

# behavior of the version 2 packages (none, since DHCP


v2 didnt

# have support for DDNS.)


ddns-update-style none;

# option definitions common to all supported networks...


option domain-name example.org;

option domain-name-servers ns1.example.org, ns2.example.


org;

Servio de Rede para Internet


default-lease-time 600;
max-lease-time 7200;

# If this DHCP server is the official DHCP server for the


local

# network, the authoritative directive should be


uncommented.

#authoritative;
# Use this to send dhcp log messages to a different log
file (you also

# have to hack syslog.conf to complete the redirection).


log-facility local7;

# No service will be given on this subnet, but declaring


it helps the

# DHCP server to understand the network topology.


#subnet 10.152.187.0 netmask 255.255.255.0 {
#}

# This is a very basic subnet declaration.


#subnet 10.254.239.0 netmask 255.255.255.224 {
#
#

range 10.254.239.10 10.254.239.20;

option routers rtr-239-0-1.example.org, rtr-239-0-2.

example.org;
#}

# This declaration allows BOOTP clients to get dynamic


addresses,

# which we dont really recommend.


#subnet 10.254.239.32 netmask 255.255.255.224 {
#

range dynamic-bootp 10.254.239.40 10.254.239.60;

option routers rtr-239-32-1.example.org;

option broadcast-address 10.254.239.31;

#}
# A slightly different configuration for an internal
subnet.

#subnet 10.5.5.0 netmask 255.255.255.224 {


#
#

range 10.5.5.26 10.5.5.30;

option domain-name-servers ns1.internal.example.org;

105

106

Prof. Gilmar Luiz Vassoler


#

option domain-name internal.example.org;

option broadcast-address 10.5.5.31;

#
#
#

#}

option routers 10.5.5.1;


default-lease-time 600;
max-lease-time 7200;

# Hosts which require special configuration options can


be listed in

# host statements.
dress will be

If no address is specified, the ad-

# allocated dynamically (if possible), but the host-specific information

# will still come from the host declaration.


#host passacaglia {
#

hardware ethernet 0:0:c0:5d:bd:95;

server-name toccata.fugue.com;

#
#}

filename vmunix.passacaglia;

# Fixed IP addresses can also be specified for hosts.


These addresses

# should not also be listed as being available for dynamic assignment.

# Hosts for which fixed IP addresses have been specified


can boot using

# BOOTP or DHCP.

specified can only

Hosts for which no fixed address is

# be booted with DHCP, unless there is an address range


on the subnet

# to which a BOOTP client is connected which has the


dynamic-bootp flag
# set.

#host fantasia {
#
#

#}

hardware ethernet 08:00:07:26:c0:a5;


fixed-address fantasia.fugue.com;

# You can declare a class of clients and then do address


allocation

# based on that.
all clients

The example below shows a case where

# in a certain class get addresses on the 10.17.224/24


subnet, and all

Servio de Rede para Internet


# other clients get addresses on the 10.0.29/24 subnet.
#class foo {
#

match if substring (option vendor-class-identifier, 0, 4) =

SUNW;
#}
#shared-network 224-29 {
#

subnet 10.17.224.0 netmask 255.255.255.0 {

option routers rtr-224.example.org;

subnet 10.0.29.0 netmask 255.255.255.0 {

option routers rtr-29.example.org;

pool {

allow members of foo;

range 10.17.224.10 10.17.224.250;

pool {

deny members of foo;

range 10.0.29.10 10.0.29.230;

#}

Vamos fazer trs configuraes diferentes do nosso servidor de dhcp.


5.2.3 Configurao 1
Configurando um servidor simples que vai distribuir IP sobre toda faixa
especificada.

# utilizado para manter a compatibilidade com verses


anteriores do protocolo.
ddns-update-style none;

# Esta opo especifica o nome do domnio


option domain-name sri.ifes.edu.br;

# Esta opo especifica os servidores de DNS que devem


ser utilizados

# assim vai depender da rede que voc est utilizando.

# para verificar quais so os servidores da sua rede veja


o contedo

107

108

Prof. Gilmar Luiz Vassoler


# do aquivo /etc/resolv.conf

option domain-name-servers 200.145.16.25, 200.124.15.20;


# Esta opo especifica o tempo de concesso antes que o
cliente

# solicite outro IP

default-lease-time 600;
# Esta opo especifica o tempo mximo que um computador
pode

# permanecer com o IP concedido.


max-lease-time 7200;

# A opo abaixo especifica a rede para a qual os IPs vo


ser distribudos

# O endereo IP do servidor deve estar nesta faixa


subnet 10.0.2.0 netmask 255.255.255.0 {
}

5.2.4 Configurao 2
Configurando um servidor simples que vai distribuir apenas alguns IPs
da faixa.
# utilizado para manter a compatibilidade com verses anteriores do protocolo.

ddns-update-style none;
# Esta opo especifica o nome do domnio

option domain-name sri.ifes.edu.br;


# Esta opo especifica os servidores de DNS que devem ser
utilizados
# assim vai depender da rede que voc est utilizando.
# para verificar quais so os servidores da sua rede veja o
contedo
# do aquivo /etc/resolv.conf

option domain-name-servers 200.145.16.25, 200.124.15.20;


# Esta opo especifica o roteador (gateway) da sua rede

option routers 10.0.2.2;

# Esta opo especifica o tempo de concesso antes que o cliente


# solicite outro IP

default-lease-time 600;

Servio de Rede para Internet


# Esta opo especifica o tempo mximo que um computador pode
# permanecer com o IP concedido.

max-lease-time 7200;

# A opo abaixo especifica a rede para a qual os IPs vo ser


distribudos
# O endereo IP do servidor deve estar nesta faixa
# Observe que agora estamos distribuindo os IPs de 10.0.2.100
at 10.0.2.200

subnet 10.0.2.0 netmask 255.255.255.0 {


}

range 10.0.2.100 10.0.0.200;

5.2.5 Configurao 3
Configurando um servidor simples associar IP apenas aos clientes
conhecido.

# utilizado para manter a compatibilidade com verses anteriores do protocolo.

ddns-update-style none;
# Esta opo especifica o nome do domnio

option domain-name sri.ifes.edu.br;


# Esta opo especifica os servidores de DNS que devem ser
utilizados
# assim vai depender da rede que voc est utilizando.
# para verificar quais so os servidores da sua rede veja o
contedo
# do aquivo /etc/resolv.conf

option domain-name-servers 200.145.16.25, 200.124.15.20;


# Esta opo especifica o roteador (gateway) da sua rede

option routers 10.0.2.2;

# Esta opo especifica o tempo de concesso antes que o cliente


# solicite outro IP

default-lease-time 600;
# Esta opo especifica o tempo mximo que um computador pode
# permanecer com o IP concedido.

max-lease-time 7200;

109

110

Prof. Gilmar Luiz Vassoler


# A opo abaixo especifica qual IP deve ser associado a uma
determinada
# mquina de acordo com o endereo MAC da mesma
host maquina1 {

hardware ethernet 08:00:07:26:c0:a5;

fixed-address 10.0.2.50;
}

host maquina2 {

hardware ethernet 08:00:07:26:d1:4f;

fixed-address 10.0.2.51;
}
host maquina3 {

hardware ethernet 08:00:07:26:ec:b1;

fixed-address 10.0.2.52;
}

Se alguma modificao for realizada no arquivo de configurao, ela s passar a ter efeito aps iniciar o servidor com o comando abaixo.
# /etc/init.d/dhcp3-server restart

5.3 Testando do servidor


Para verificar se tudo funcionou, vamos verificar o contedo do arquivo
de log com o comando abaixo:

# tail -f /var/log/syslog | grep dhcpd

Agora, devemos testar utilizando um cliente de DHCP, por exemplo:


voc pode desconetar o cabo de rede da sua mquina e reconect-lo.

Servio de Rede para Internet

Um exemplo de sada apresentado abaixo:


1. Oct 20 12:58:28 servidordebian dhcpd: DHCPDISCOVER
from 08:00:27:d0:e6:16 via eth2

2. Oct 20 12:58:29 servidordebian dhcpd: DHCPOFFER on


10.0.2.101 to 08:00:27:d0:e6:16 (xpvirtual) via eth2

3. Oct 20 12:58:29 servidordebian dhcpd: DHCPREQUEST for


10.0.2.101 (10.0.2.10) from 08:00:27:d0:e6:16 (xpvirtual) via eth2

4. Oct 20 12:58:29 servidordebian dhcpd: DHCPACK on

10.0.2.101 to 08:00:27:d0:e6:16 (xpvirtual) via eth2


5. Oct 20 12:59:14 servidordebian dhcpd: DHCPINFORM

from 10.0.2.101 via eth2: not authoritative for subnet


10.0.2.0

Na linha 1, a mquina com endereo MAC 08:00:27:d0:e6:16 envia um


pacote de DHCPDISCOVER para localizar os servidores de DHCP da
rede.
Na linha 2, o servidor envia uma mensagem DHCPOFFER oferecendo
o IP 10.0.2.101.
Na linha 3, o cliente encaminha uma mensagem DHCPREQUEST
requisitando o IP 10.0.2.101.
Na linha 4, o servidor envia uma mensagem DHCPACK concordando
em ceder o IP 10.0.2.101.
Na linha 5, o servidor informa para a rede que ele no responsvel pela
faixa de IP 10.0.2.0 pois ele no est configurado como autoritativo.

111